Browse Source

Merge pull request #1055 from rafalp/update-locale

Update translation files
Rafał Pitoń 6 years ago
parent
commit
86f6fb82c4

BIN
misago/locale/en/LC_MESSAGES/django.mo


+ 719 - 292
misago/locale/en/LC_MESSAGES/django.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-31 23:36+0000\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -25,7 +25,7 @@ msgstr ""
 msgid "Permissions"
 msgid "Permissions"
 msgstr ""
 msgstr ""
 
 
-#: acl/admin.py:33 users/forms/admin.py:414
+#: acl/admin.py:33 users/forms/admin.py:416
 msgid "User roles"
 msgid "User roles"
 msgstr ""
 msgstr ""
 
 
@@ -142,17 +142,17 @@ msgstr ""
 msgid "Action is not allowed."
 msgid "Action is not allowed."
 msgstr ""
 msgstr ""
 
 
-#: admin/views/index.py:70
+#: admin/views/index.py:83
 #, python-format
 #, python-format
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgstr ""
 msgstr ""
 
 
-#: admin/views/index.py:78
+#: admin/views/index.py:91
 #, python-format
 #, python-format
 msgid "Up to date! (%(current)s)"
 msgid "Up to date! (%(current)s)"
 msgstr ""
 msgstr ""
 
 
-#: admin/views/index.py:87
+#: admin/views/index.py:100
 msgid "Failed to connect to GitHub API. Try again later."
 msgid "Failed to connect to GitHub API. Try again later."
 msgstr ""
 msgstr ""
 
 
@@ -171,11 +171,11 @@ msgstr ""
 msgid "Category roles"
 msgid "Category roles"
 msgstr ""
 msgstr ""
 
 
-#: categories/forms.py:47 users/forms/admin.py:388
+#: categories/forms.py:47 users/forms/admin.py:390
 msgid "Name"
 msgid "Name"
 msgstr ""
 msgstr ""
 
 
-#: categories/forms.py:49 users/forms/admin.py:404
+#: categories/forms.py:49 users/forms/admin.py:406
 msgid "Description"
 msgid "Description"
 msgstr ""
 msgstr ""
 
 
@@ -183,7 +183,7 @@ msgstr ""
 msgid "Optional description explaining category intented purpose."
 msgid "Optional description explaining category intented purpose."
 msgstr ""
 msgstr ""
 
 
-#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:421
+#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:423
 msgid "CSS class"
 msgid "CSS class"
 msgstr ""
 msgstr ""
 
 
@@ -200,7 +200,7 @@ msgstr ""
 msgid "Only members with valid permissions can post in closed categories."
 msgid "Only members with valid permissions can post in closed categories."
 msgstr ""
 msgstr ""
 
 
-#: categories/forms.py:75 templates/misago/admin/index.html:83
+#: categories/forms.py:75 templates/misago/admin/index.html:110
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/profile/threads.html:8
 #: templates/misago/profile/threads.html:8
@@ -213,7 +213,7 @@ msgstr ""
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
-#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:89
+#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:97
 msgid "Threads"
 msgid "Threads"
 msgstr ""
 msgstr ""
 
 
@@ -321,8 +321,7 @@ msgid "Move child categories to"
 msgstr ""
 msgstr ""
 
 
 #: categories/forms.py:247 categories/forms.py:262
 #: categories/forms.py:247 categories/forms.py:262
-#: templates/misago/acl_debug.html:15
-#: templates/misago/admin/roles/list.html:16
+#: templates/misago/acl_debug.html:15 templates/misago/admin/roles/list.html:16
 msgid "Role"
 msgid "Role"
 msgstr ""
 msgstr ""
 
 
@@ -511,7 +510,7 @@ msgstr ""
 
 
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: templates/misago/admin/users/edit.html:78
 #: templates/misago/admin/users/edit.html:78
-#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:590
+#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:604
 msgid "Yes"
 msgid "Yes"
 msgstr ""
 msgstr ""
 
 
@@ -525,7 +524,7 @@ msgstr ""
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
-#: users/forms/admin.py:591 users/models/user.py:145
+#: users/forms/admin.py:605 users/models/user.py:147
 msgid "No"
 msgid "No"
 msgstr ""
 msgstr ""
 
 
@@ -623,7 +622,72 @@ msgstr ""
 msgid "Value is too long."
 msgid "Value is too long."
 msgstr ""
 msgstr ""
 
 
+#: legal/admin.py:25 templates/misago/admin/users/edit.html:216
+msgid "Agreements"
+msgstr ""
+
+#: legal/api.py:18
+msgid "You have already accepted this agreement."
+msgstr ""
+
+#: legal/api.py:27
+msgid "You need to submit a valid choice."
+msgstr ""
+
+#: legal/forms.py:10 legal/forms.py:60
+#: templates/misago/admin/agreements/list.html:18
+#: templates/misago/admin/attachmenttypes/list.html:16
+#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:589
+msgid "Type"
+msgstr ""
+
+#: legal/forms.py:12 templates/misago/admin/agreements/list.html:16
+#: templates/misago/admin/ranks/list.html:17
+msgid "Title"
+msgstr ""
+
+#: legal/forms.py:13
+msgid "Optional, leave empty for agreement to be named after its type."
+msgstr ""
+
+#: legal/forms.py:17
+msgid "Set as active for its type"
+msgstr ""
+
+#: legal/forms.py:19
+msgid ""
+"If other agreement is already active for this type, it will be unset and "
+"replaced with this one. Misago will ask users who didn't accept this "
+"agreement to do so before allowing them to continue using the site's "
+"features."
+msgstr ""
+
+#: legal/forms.py:27
+msgid "Link"
+msgstr ""
+
+#: legal/forms.py:28
+msgid "If your agreement is located on other page, enter here a link to it."
+msgstr ""
+
+#: legal/forms.py:32
+msgid "Text"
+msgstr ""
+
+#: legal/forms.py:33
+msgid "You can use Markdown syntax for rich text elements."
+msgstr ""
+
+#: legal/forms.py:46
+msgid "Please fill in agreement link or text."
+msgstr ""
+
+#: legal/forms.py:65
+msgid "Content"
+msgstr ""
+
 #: legal/migrations/0001_initial.py:16
 #: legal/migrations/0001_initial.py:16
+#: legal/migrations/0003_create_agreements_from_settings.py:57
 msgid "Legal information"
 msgid "Legal information"
 msgstr ""
 msgstr ""
 
 
@@ -666,7 +730,7 @@ msgstr ""
 msgid "Policy title"
 msgid "Policy title"
 msgstr ""
 msgstr ""
 
 
-#: legal/migrations/0001_initial.py:64 legal/views.py:46
+#: legal/migrations/0001_initial.py:64 legal/models.py:43
 #: templates/misago/footer.html:27
 #: templates/misago/footer.html:27
 msgid "Privacy policy"
 msgid "Privacy policy"
 msgstr ""
 msgstr ""
@@ -690,21 +754,85 @@ msgid ""
 msgstr ""
 msgstr ""
 
 
 #: legal/migrations/0001_initial.py:105
 #: legal/migrations/0001_initial.py:105
+#: legal/migrations/0003_create_agreements_from_settings.py:62
 msgid "Footnote"
 msgid "Footnote"
 msgstr ""
 msgstr ""
 
 
 #: legal/migrations/0001_initial.py:106
 #: legal/migrations/0001_initial.py:106
+#: legal/migrations/0003_create_agreements_from_settings.py:63
 msgid "Short message displayed in forum footer."
 msgid "Short message displayed in forum footer."
 msgstr ""
 msgstr ""
 
 
 #: legal/migrations/0001_initial.py:107
 #: legal/migrations/0001_initial.py:107
+#: legal/migrations/0003_create_agreements_from_settings.py:64
 msgid "Forum footer"
 msgid "Forum footer"
 msgstr ""
 msgstr ""
 
 
-#: legal/views.py:65 templates/misago/footer.html:22
+#: legal/migrations/0003_create_agreements_from_settings.py:58
+msgid ""
+"Those settings allow you to set additional legal information for your forum."
+msgstr ""
+
+#: legal/models.py:42 templates/misago/footer.html:22
 msgid "Terms of service"
 msgid "Terms of service"
 msgstr ""
 msgstr ""
 
 
+#: legal/views/admin.py:17
+msgid "Requested agreement does not exist."
+msgstr ""
+
+#: legal/views/admin.py:29 threads/views/admin/attachments.py:24
+#: users/views/admin/bans.py:24 users/views/admin/datadownloads.py:20
+#: users/views/admin/users.py:56
+msgid "From newest"
+msgstr ""
+
+#: legal/views/admin.py:30 threads/views/admin/attachments.py:25
+#: users/views/admin/bans.py:25 users/views/admin/datadownloads.py:21
+#: users/views/admin/users.py:57
+msgid "From oldest"
+msgstr ""
+
+#: legal/views/admin.py:33
+msgid "With agreements: 0"
+msgstr ""
+
+#: legal/views/admin.py:34
+msgid "Select agreements"
+msgstr ""
+
+#: legal/views/admin.py:38
+msgid "Delete agreements"
+msgstr ""
+
+#: legal/views/admin.py:39
+msgid "Are you sure you want to delete those agreements?"
+msgstr ""
+
+#: legal/views/admin.py:49
+msgid "Selected agreements have been deleted."
+msgstr ""
+
+#: legal/views/admin.py:53
+#, python-format
+msgid "New agreement \"%(title)s\" has been saved."
+msgstr ""
+
+#: legal/views/admin.py:63
+#, python-format
+msgid "Agreement \"%(title)s\" has been edited."
+msgstr ""
+
+#: legal/views/admin.py:77
+#, python-format
+msgid "Agreement \"%(title)s\" has been deleted."
+msgstr ""
+
+#: legal/views/admin.py:85
+#, python-format
+msgid "Agreement \"%(title)s\" has been set as active for type \"%(type)s\"."
+msgstr ""
+
 #: markup/finalise.py:22
 #: markup/finalise.py:22
 #, python-format
 #, python-format
 msgid "%(title)s has written:"
 msgid "%(title)s has written:"
@@ -714,15 +842,15 @@ msgstr ""
 msgid "Quoted message:"
 msgid "Quoted message:"
 msgstr ""
 msgstr ""
 
 
-#: project_template/project_name/settings.py:388
+#: project_template/project_name/settings.py:424
 msgid "Personal"
 msgid "Personal"
 msgstr ""
 msgstr ""
 
 
-#: project_template/project_name/settings.py:397
+#: project_template/project_name/settings.py:433
 msgid "Contact"
 msgid "Contact"
 msgstr ""
 msgstr ""
 
 
-#: project_template/project_name/settings.py:405 users/models/ban.py:76
+#: project_template/project_name/settings.py:441 users/models/ban.py:76
 msgid "IP address"
 msgid "IP address"
 msgstr ""
 msgstr ""
 
 
@@ -818,6 +946,98 @@ msgstr ""
 msgid "Your account can't be activated at this time."
 msgid "Your account can't be activated at this time."
 msgstr ""
 msgstr ""
 
 
+#: templates/misago/admin/agreements/form.html:9
+#: templates/misago/admin/agreements/form.html:18
+#: templates/misago/admin/agreements/form.html:28
+#: templates/misago/admin/agreements/list.html:9
+msgid "New agreement"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:43
+#: templates/misago/admin/categoryroles/form.html:43
+#: templates/misago/admin/roles/form.html:43
+msgid "Basic settings"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:51
+msgid "Agreement contents"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:54
+msgid "Fill in one of the fields."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:19
+msgid "Created"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:20
+msgid "Modified"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:33
+#, python-format
+msgid "Active %(type)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:52
+#, python-format
+msgid "%(created_on)s by %(created_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:68
+#, python-format
+msgid "%(last_modified_on)s by %(last_modified_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:72
+msgid "never"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:78
+msgid "Set as active"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:88
+#: templates/misago/admin/attachmenttypes/list.html:54
+#: templates/misago/admin/bans/list.html:55
+#: templates/misago/admin/categories/list.html:66
+#: templates/misago/admin/categoryroles/list.html:27
+#: templates/misago/admin/ranks/list.html:99
+#: templates/misago/admin/roles/list.html:43
+#: templates/misago/admin/warnings/list.html:109
+#: templates/misago/poll/results.html:69
+#: templates/misago/profile/details.html:24
+#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
+msgid "Edit"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:94
+#: templates/misago/admin/bans/list.html:61
+msgid "Remove"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:106
+msgid "No agreements matching search criteria have been found"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:108
+msgid "No agreements are currently set."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:119
+msgid "Are you sure you want to set this agreement as active for its type?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:124
+msgid "Are you sure you want to delete this agreement?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:133
+#: templates/misago/admin/bans/list.html:95
+msgid "Search bans"
+msgstr ""
+
 #: templates/misago/admin/attachments/list.html:7
 #: templates/misago/admin/attachments/list.html:7
 msgid "Attachment"
 msgid "Attachment"
 msgstr ""
 msgstr ""
@@ -828,9 +1048,7 @@ msgstr ""
 
 
 #: templates/misago/admin/attachments/list.html:42
 #: templates/misago/admin/attachments/list.html:42
 #, python-format
 #, python-format
-msgid ""
-"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s from "
-"%(uploader_ip)s."
+msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s."
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachments/list.html:53
@@ -881,11 +1099,6 @@ msgstr ""
 msgid "Availability"
 msgid "Availability"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/attachmenttypes/list.html:16
-#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:575
-msgid "Type"
-msgstr ""
-
 #: templates/misago/admin/attachmenttypes/list.html:17
 #: templates/misago/admin/attachmenttypes/list.html:17
 msgid "Extensions"
 msgid "Extensions"
 msgstr ""
 msgstr ""
@@ -898,19 +1111,6 @@ msgstr ""
 msgid "Files"
 msgid "Files"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/attachmenttypes/list.html:54
-#: templates/misago/admin/bans/list.html:55
-#: templates/misago/admin/categories/list.html:66
-#: templates/misago/admin/categoryroles/list.html:27
-#: templates/misago/admin/ranks/list.html:99
-#: templates/misago/admin/roles/list.html:43
-#: templates/misago/admin/warnings/list.html:109
-#: templates/misago/poll/results.html:69
-#: templates/misago/profile/details.html:24
-#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
-msgid "Edit"
-msgstr ""
-
 #: templates/misago/admin/attachmenttypes/list.html:71
 #: templates/misago/admin/attachmenttypes/list.html:71
 msgid "No attachment types are currently defined."
 msgid "No attachment types are currently defined."
 msgstr ""
 msgstr ""
@@ -927,12 +1127,12 @@ msgid "New ban"
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/admin/bans/form.html:43
 #: templates/misago/admin/bans/form.html:43
-#: templates/misago/admin/users/ban.html:53
+#: templates/misago/admin/users/ban.html:57
 msgid "Ban settings"
 msgid "Ban settings"
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/admin/bans/form.html:52
 #: templates/misago/admin/bans/form.html:52
-#: templates/misago/admin/users/ban.html:60
+#: templates/misago/admin/users/ban.html:64
 msgid "Messages"
 msgid "Messages"
 msgstr ""
 msgstr ""
 
 
@@ -940,8 +1140,8 @@ msgstr ""
 msgid "Ban"
 msgid "Ban"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:493
-#: users/forms/admin.py:546
+#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:488
+#: users/forms/admin.py:560
 msgid "Expires on"
 msgid "Expires on"
 msgstr ""
 msgstr ""
 
 
@@ -954,10 +1154,6 @@ msgstr ""
 msgid "Never"
 msgid "Never"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/bans/list.html:61
-msgid "Remove"
-msgstr ""
-
 #: templates/misago/admin/bans/list.html:73
 #: templates/misago/admin/bans/list.html:73
 msgid "No bans matching search criteria have been found"
 msgid "No bans matching search criteria have been found"
 msgstr ""
 msgstr ""
@@ -970,10 +1166,6 @@ msgstr ""
 msgid "Are you sure you want to remove this ban?"
 msgid "Are you sure you want to remove this ban?"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/bans/list.html:95
-msgid "Search bans"
-msgstr ""
-
 #: templates/misago/admin/base_thin.html:8
 #: templates/misago/admin/base_thin.html:8
 msgid "Misago Administration"
 msgid "Misago Administration"
 msgstr ""
 msgstr ""
@@ -1097,11 +1289,6 @@ msgstr ""
 msgid "New role"
 msgid "New role"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/categoryroles/form.html:43
-#: templates/misago/admin/roles/form.html:43
-msgid "Basic settings"
-msgstr ""
-
 #: templates/misago/admin/categoryroles/list.html:16
 #: templates/misago/admin/categoryroles/list.html:16
 msgid "Category role"
 msgid "Category role"
 msgstr ""
 msgstr ""
@@ -1134,6 +1321,61 @@ msgstr ""
 msgid "Change settings"
 msgid "Change settings"
 msgstr ""
 msgstr ""
 
 
+#: templates/misago/admin/datadownloads/form.html:6
+#: templates/misago/admin/datadownloads/form.html:11
+#: templates/misago/admin/datadownloads/form.html:17
+msgid "Request new data downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:9
+msgid "Request new downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:17
+#: templates/misago/admin/users/list.html:17 users/forms/admin.py:696
+msgid "User"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:18 threads/forms.py:56
+#: users/forms/admin.py:691
+msgid "Status"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:19
+msgid "Requested on"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:21 users/forms/admin.py:700
+msgid "Requested by"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:32
+#: templates/misago/admin/datadownloads/list.html:49
+#: templates/misago/admin/datadownloads/list.html:52
+#: templates/misago/admin/users/ban.html:35
+#: templates/misago/admin/users/edit.html:113
+#: templates/misago/admin/users/list.html:35
+#: templates/misago/userslists/active_posters.html:66
+msgid "Avatar"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:73
+#: templates/misago/emails/data_download.html:11 users/apps.py:50
+msgid "Download data"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:84
+msgid "No data downloads matching search criteria have been found."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:86
+msgid "No data downloads exist at the moment."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:93
+msgid "Search data downloads"
+msgstr ""
+
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 msgid "Page not available"
 msgid "Page not available"
@@ -1284,44 +1526,73 @@ msgstr ""
 msgid "Administration Home"
 msgid "Administration Home"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:33
+#: templates/misago/admin/index.html:22
+msgid "System checks"
+msgstr ""
+
+#: templates/misago/admin/index.html:26
+msgid "MISAGO_ADDRESS setting appears to be correct."
+msgstr ""
+
+#: templates/misago/admin/index.html:30
+msgid "The settings.py value for MISAGO_ADDRESS appears to be incorrect."
+msgstr ""
+
+#: templates/misago/admin/index.html:38
+#, python-format
+msgid ""
+"Your MISAGO_ADDRESS is set to %(configured_address)s while correct value "
+"appears to be %(correct_address)s."
+msgstr ""
+
+#: templates/misago/admin/index.html:42 templates/misago/admin/index.html:47
+msgid ""
+"Misago uses this setting to build correct links in e-mails sent to site "
+"users."
+msgstr ""
+
+#: templates/misago/admin/index.html:46
+msgid "The settings.py is missing MISAGO_ADDRESS value."
+msgstr ""
+
+#: templates/misago/admin/index.html:60
 msgid "Misago version"
 msgid "Misago version"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:56
+#: templates/misago/admin/index.html:83
 msgid "Check version"
 msgid "Check version"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:62
+#: templates/misago/admin/index.html:89
 msgid "This feature requires \"packaging\" python module."
 msgid "This feature requires \"packaging\" python module."
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:76
+#: templates/misago/admin/index.html:103
 msgid "DB Contents"
 msgid "DB Contents"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:87
+#: templates/misago/admin/index.html:114
 #: templates/misago/admin/users/delete.html:36
 #: templates/misago/admin/users/delete.html:36
-#: templates/misago/admin/users/list.html:23
+#: templates/misago/admin/users/list.html:24
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: threads/migrations/0002_threads_settings.py:48
 #: threads/migrations/0002_threads_settings.py:48
-#: threads/migrations/0004_update_settings.py:48 users/apps.py:83
+#: threads/migrations/0004_update_settings.py:48 users/apps.py:91
 msgid "Posts"
 msgid "Posts"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:91 templates/misago/navbar.html:40
+#: templates/misago/admin/index.html:118 templates/misago/navbar.html:40
 #: templates/misago/userslists/base.html:5
 #: templates/misago/userslists/base.html:5
-#: templates/misago/userslists/base.html:14 users/admin.py:70
+#: templates/misago/userslists/base.html:14 users/admin.py:80
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 msgid "Users"
 msgid "Users"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:96
+#: templates/misago/admin/index.html:123
 msgid "Inactive users"
 msgid "Inactive users"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/index.html:122
+#: templates/misago/admin/index.html:149
 msgid "Checking..."
 msgid "Checking..."
 msgstr ""
 msgstr ""
 
 
@@ -1349,7 +1620,7 @@ msgstr ""
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/login.html:62 users/forms/admin.py:60
+#: templates/misago/admin/login.html:62 users/forms/admin.py:62
 #: users/forms/auth.py:59
 #: users/forms/auth.py:59
 msgid "Password"
 msgid "Password"
 msgstr ""
 msgstr ""
@@ -1394,17 +1665,12 @@ msgid "Display and visibility"
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/admin/ranks/list.html:16
 #: templates/misago/admin/ranks/list.html:16
-#: templates/misago/admin/users/list.html:21
+#: templates/misago/admin/users/list.html:22
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:95
-#: templates/misago/userslists/active_posters.html:106
-#: users/forms/admin.py:236
+#: templates/misago/userslists/active_posters.html:106 users/forms/admin.py:238
 msgid "Rank"
 msgid "Rank"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/ranks/list.html:17
-msgid "Title"
-msgstr ""
-
 #: templates/misago/admin/ranks/list.html:18
 #: templates/misago/admin/ranks/list.html:18
 msgid "Special"
 msgid "Special"
 msgstr ""
 msgstr ""
@@ -1446,7 +1712,7 @@ msgid "No user roles are currently defined."
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/admin/users/ban.html:6
 #: templates/misago/admin/users/ban.html:6
-#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:72
+#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:73
 msgid "Ban users"
 msgid "Ban users"
 msgstr ""
 msgstr ""
 
 
@@ -1454,14 +1720,11 @@ msgstr ""
 msgid "Ban selected users:"
 msgid "Ban selected users:"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/ban.html:35
-#: templates/misago/admin/users/edit.html:113
-#: templates/misago/admin/users/list.html:34
-#: templates/misago/userslists/active_posters.html:66
-msgid "Avatar"
+#: templates/misago/admin/users/ban.html:48
+msgid "IP not available"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/ban.html:72
+#: templates/misago/admin/users/ban.html:76
 msgid "Set bans"
 msgid "Set bans"
 msgstr ""
 msgstr ""
 
 
@@ -1555,6 +1818,18 @@ msgstr ""
 msgid "No staff message is available."
 msgid "No staff message is available."
 msgstr ""
 msgstr ""
 
 
+#: templates/misago/admin/users/edit.html:220
+msgid "Agreement"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:221
+msgid "Accepted on"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:239
+msgid "This user didn't accept any agreements."
+msgstr ""
+
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:11
 #: templates/misago/admin/users/new.html:11
@@ -1562,51 +1837,55 @@ msgstr ""
 msgid "New user"
 msgid "New user"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:17
-msgid "User"
+#: templates/misago/admin/users/list.html:20 users/signals.py:30
+msgid "E-mail"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:20
-msgid "E-mail"
+#: templates/misago/admin/users/list.html:21
+msgid "IP Address"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:22
+#: templates/misago/admin/users/list.html:23
 msgid "Joined"
 msgid "Joined"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:39
+#: templates/misago/admin/users/list.html:40
 msgid "Is deleting their account"
 msgid "Is deleting their account"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:43
+#: templates/misago/admin/users/list.html:44
 msgid "Is disabled by administrator"
 msgid "Is disabled by administrator"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:54
+#: templates/misago/admin/users/list.html:55
 msgid "Requires activation by administrator"
 msgid "Requires activation by administrator"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:56
+#: templates/misago/admin/users/list.html:57
 msgid "Has to activate account"
 msgid "Has to activate account"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:63
+#: templates/misago/admin/users/list.html:64
 msgid "Super administrator"
 msgid "Super administrator"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:65
+#: templates/misago/admin/users/list.html:66
 msgid "Administrator"
 msgid "Administrator"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:90
+#: templates/misago/admin/users/list.html:78
+msgid "IP removed"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:98
 msgid "Edit user"
 msgid "Edit user"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:99
+#: templates/misago/admin/users/list.html:107
 msgid "No users matching search criteria have been found."
 msgid "No users matching search criteria have been found."
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:105
+#: templates/misago/admin/users/list.html:113
 msgid "Search users"
 msgid "Search users"
 msgstr ""
 msgstr ""
 
 
@@ -1813,6 +2092,30 @@ msgstr ""
 msgid "Set new password"
 msgid "Set new password"
 msgstr ""
 msgstr ""
 
 
+#: templates/misago/emails/data_download.html:6
+#: templates/misago/emails/data_download.txt:6
+#, python-format
+msgid ""
+"%(user)s, you are receiving this message because your data is ready for "
+"download."
+msgstr ""
+
+#: templates/misago/emails/data_download.html:14
+#: templates/misago/emails/data_download.txt:15
+#, python-format
+msgid ""
+"This link will remain active for %(expires_in)s hour from the time this "
+"message has been sent."
+msgid_plural ""
+"This link will remain active for %(expires_in)s hours from the time this "
+"message has been sent."
+msgstr[0] ""
+msgstr[1] ""
+
+#: templates/misago/emails/data_download.txt:10
+msgid "To download your data, click the following link:"
+msgstr ""
+
 #: templates/misago/emails/privatethread/added.html:9
 #: templates/misago/emails/privatethread/added.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
@@ -1898,7 +2201,7 @@ msgstr ""
 #: templates/misago/emails/thread/reply.html:9
 #: templates/misago/emails/thread/reply.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread %(thread)s that you are subscribed to."
 "the thread %(thread)s that you are subscribed to."
 msgstr ""
 msgstr ""
 
 
@@ -1914,7 +2217,7 @@ msgstr ""
 #: templates/misago/emails/thread/reply.txt:6
 #: templates/misago/emails/thread/reply.txt:6
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread \"%(thread)s\" that you are subscribed to."
 "the thread \"%(thread)s\" that you are subscribed to."
 msgstr ""
 msgstr ""
 
 
@@ -2145,7 +2448,7 @@ msgstr ""
 
 
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:8
 #: templates/misago/profile/ban_details.html:8
-#: templates/misago/profile/ban_details.html:15 users/apps.py:120
+#: templates/misago/profile/ban_details.html:15 users/apps.py:128
 msgid "Ban details"
 msgid "Ban details"
 msgstr ""
 msgstr ""
 
 
@@ -2192,7 +2495,7 @@ msgstr[1] ""
 
 
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:8
 #: templates/misago/profile/details.html:8
-#: templates/misago/profile/details.html:18 users/apps.py:107
+#: templates/misago/profile/details.html:18 users/apps.py:115
 msgid "Details"
 msgid "Details"
 msgstr ""
 msgstr ""
 
 
@@ -2220,7 +2523,7 @@ msgid "This error is caused by invalid post content manipulation."
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/profile/followers.html:5
 #: templates/misago/profile/followers.html:5
-#: templates/misago/profile/followers.html:8 users/apps.py:95
+#: templates/misago/profile/followers.html:8 users/apps.py:103
 msgid "Followers"
 msgid "Followers"
 msgstr ""
 msgstr ""
 
 
@@ -2248,7 +2551,7 @@ msgid "%(username)s has no followers."
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/profile/follows.html:5
 #: templates/misago/profile/follows.html:5
-#: templates/misago/profile/follows.html:8 users/apps.py:101
+#: templates/misago/profile/follows.html:8 users/apps.py:109
 msgid "Follows"
 msgid "Follows"
 msgstr ""
 msgstr ""
 
 
@@ -2335,7 +2638,7 @@ msgid "%(username)s started no threads."
 msgstr ""
 msgstr ""
 
 
 #: templates/misago/profile/username_history.html:5
 #: templates/misago/profile/username_history.html:5
-#: templates/misago/profile/username_history.html:8 users/apps.py:113
+#: templates/misago/profile/username_history.html:8 users/apps.py:121
 msgid "Username history"
 msgid "Username history"
 msgstr ""
 msgstr ""
 
 
@@ -2362,6 +2665,20 @@ msgstr ""
 msgid "%(username)s's username was never changed."
 msgid "%(username)s's username was never changed."
 msgstr ""
 msgstr ""
 
 
+#: templates/misago/required_agreement.html:9
+#, python-format
+msgid "Please review the updated %(agreement)s:"
+msgstr ""
+
+#: templates/misago/required_agreement.html:19
+msgid "here"
+msgstr ""
+
+#: templates/misago/required_agreement.html:21
+#, python-format
+msgid "Please review the updated %(agreement)s available %(link)s."
+msgstr ""
+
 #: templates/misago/search.html:5 templates/misago/search.html:8
 #: templates/misago/search.html:5 templates/misago/search.html:8
 msgid "Search site"
 msgid "Search site"
 msgstr ""
 msgstr ""
@@ -2478,10 +2795,6 @@ msgstr ""
 msgid "By %(event_by)s on %(event_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/thread/posts/event/info.html:34
-msgid "IP recorded"
-msgstr ""
-
 #: templates/misago/thread/posts/post/attachments.html:33
 #: templates/misago/thread/posts/post/attachments.html:33
 #, python-format
 #, python-format
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
@@ -2760,11 +3073,11 @@ msgstr ""
 msgid "Attachment types"
 msgid "Attachment types"
 msgstr ""
 msgstr ""
 
 
-#: threads/api/attachments.py:19
+#: threads/api/attachments.py:20
 msgid "You don't have permission to upload new files."
 msgid "You don't have permission to upload new files."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/attachments.py:29
+#: threads/api/attachments.py:30
 msgid "No file has been uploaded."
 msgid "No file has been uploaded."
 msgstr ""
 msgstr ""
 
 
@@ -2772,24 +3085,24 @@ msgstr ""
 msgid "Uploaded image was corrupted or invalid."
 msgid "Uploaded image was corrupted or invalid."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/attachments.py:81
+#: threads/api/attachments.py:83
 msgid "You can't upload files of this type."
 msgid "You can't upload files of this type."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/attachments.py:86
+#: threads/api/attachments.py:88
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/attachments.py:96
+#: threads/api/attachments.py:98
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files of this type larger than %(limit)s (your file has "
 "You can't upload files of this type larger than %(limit)s (your file has "
 "%(upload)s)."
 "%(upload)s)."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/postendpoints/edits.py:89
+#: threads/api/postendpoints/edits.py:88
 msgid "Edits record is unavailable for this post."
 msgid "Edits record is unavailable for this post."
 msgstr ""
 msgstr ""
 
 
@@ -2805,12 +3118,12 @@ msgstr ""
 msgid "You can't like posts in this category."
 msgid "You can't like posts in this category."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/postendpoints/patch_post.py:108
+#: threads/api/postendpoints/patch_post.py:107
 #: threads/api/threadendpoints/patch.py:130
 #: threads/api/threadendpoints/patch.py:130
 msgid "Content approval can't be reversed."
 msgid "Content approval can't be reversed."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/postendpoints/patch_post.py:186
+#: threads/api/postendpoints/patch_post.py:185
 msgid "One or more posts to update could not be found."
 msgid "One or more posts to update could not be found."
 msgstr ""
 msgstr ""
 
 
@@ -2823,7 +3136,7 @@ msgstr ""
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/postingendpoint/attachments.py:128
+#: threads/api/postingendpoint/attachments.py:127
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't attach more than %(limit_value)s file to single post (added "
 "You can't attach more than %(limit_value)s file to single post (added "
@@ -2895,11 +3208,11 @@ msgstr[1] ""
 msgid "One or more users could not be found: %(usernames)s"
 msgid "One or more users could not be found: %(usernames)s"
 msgstr ""
 msgstr ""
 
 
-#: threads/api/postingendpoint/reply.py:81 threads/validators.py:80
+#: threads/api/postingendpoint/reply.py:83 threads/validators.py:80
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/postingendpoint/reply.py:103 threads/validators.py:41
+#: threads/api/postingendpoint/reply.py:105 threads/validators.py:41
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr ""
 msgstr ""
 
 
@@ -2977,7 +3290,7 @@ msgstr ""
 msgid "One or more threads to update could not be found."
 msgid "One or more threads to update could not be found."
 msgstr ""
 msgstr ""
 
 
-#: threads/api/threadpoll.py:53
+#: threads/api/threadpoll.py:54
 msgid "There's already a poll in this thread."
 msgid "There's already a poll in this thread."
 msgstr ""
 msgstr ""
 
 
@@ -3013,7 +3326,7 @@ msgstr ""
 msgid "File type"
 msgid "File type"
 msgstr ""
 msgstr ""
 
 
-#: threads/forms.py:24 users/forms/admin.py:595
+#: threads/forms.py:24 users/forms/admin.py:609
 msgid "State"
 msgid "State"
 msgstr ""
 msgstr ""
 
 
@@ -3037,10 +3350,6 @@ msgstr ""
 msgid "Maximum allowed uploaded file size"
 msgid "Maximum allowed uploaded file size"
 msgstr ""
 msgstr ""
 
 
-#: threads/forms.py:56
-msgid "Status"
-msgstr ""
-
 #: threads/forms.py:57
 #: threads/forms.py:57
 msgid "Limit uploads to"
 msgid "Limit uploads to"
 msgstr ""
 msgstr ""
@@ -3647,7 +3956,7 @@ msgstr ""
 msgid "Can see threads"
 msgid "Can see threads"
 msgstr ""
 msgstr ""
 
 
-#: threads/permissions/threads.py:110 users/forms/admin.py:166
+#: threads/permissions/threads.py:110 users/forms/admin.py:168
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0006_update_settings.py:130
 #: users/migrations/0006_update_settings.py:130
 msgid "Started threads"
 msgid "Started threads"
@@ -4539,6 +4848,14 @@ msgstr ""
 msgid "You have to make a choice."
 msgid "You have to make a choice."
 msgstr ""
 msgstr ""
 
 
+#: threads/signals.py:177
+msgid "Question"
+msgstr ""
+
+#: threads/signals.py:178
+msgid "Choices"
+msgstr ""
+
 #: threads/templatetags/misago_poststags.py:20
 #: threads/templatetags/misago_poststags.py:20
 #, python-format
 #, python-format
 msgid "%(user)s likes this."
 msgid "%(user)s likes this."
@@ -4673,23 +4990,13 @@ msgstr ""
 msgid "Requested attachment could not be found."
 msgid "Requested attachment could not be found."
 msgstr ""
 msgstr ""
 
 
-#: threads/views/admin/attachments.py:24 users/views/admin/bans.py:24
-#: users/views/admin/users.py:55
-msgid "From newest"
-msgstr ""
-
-#: threads/views/admin/attachments.py:25 users/views/admin/bans.py:25
-#: users/views/admin/users.py:56
-msgid "From oldest"
-msgstr ""
-
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
-#: users/views/admin/users.py:57
+#: users/views/admin/users.py:58
 msgid "A to z"
 msgid "A to z"
 msgstr ""
 msgstr ""
 
 
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
-#: users/views/admin/users.py:58
+#: users/views/admin/users.py:59
 msgid "Z to a"
 msgid "Z to a"
 msgstr ""
 msgstr ""
 
 
@@ -4757,33 +5064,37 @@ msgid ""
 "post."
 "post."
 msgstr ""
 msgstr ""
 
 
-#: users/admin.py:79
+#: users/admin.py:89
 msgid "User Accounts"
 msgid "User Accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/admin.py:87
+#: users/admin.py:97
 msgid "Ranks"
 msgid "Ranks"
 msgstr ""
 msgstr ""
 
 
-#: users/admin.py:96
+#: users/admin.py:106
 msgid "Bans"
 msgid "Bans"
 msgstr ""
 msgstr ""
 
 
+#: users/admin.py:115
+msgid "Data downloads"
+msgstr ""
+
 #: users/api/auth.py:100
 #: users/api/auth.py:100
 #, python-format
 #, python-format
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgstr ""
 msgstr ""
 
 
-#: users/api/auth.py:139
+#: users/api/auth.py:138
 #, python-format
 #, python-format
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgstr ""
 msgstr ""
 
 
-#: users/api/auth.py:180
+#: users/api/auth.py:178
 msgid "Form link is invalid. Please try again."
 msgid "Form link is invalid. Please try again."
 msgstr ""
 msgstr ""
 
 
-#: users/api/auth.py:181
+#: users/api/auth.py:179
 msgid "Your link has expired. Please request new one."
 msgid "Your link has expired. Please request new one."
 msgstr ""
 msgstr ""
 
 
@@ -4853,15 +5164,15 @@ msgstr ""
 msgid "Confirm password change on %(forum_name)s forums"
 msgid "Confirm password change on %(forum_name)s forums"
 msgstr ""
 msgstr ""
 
 
-#: users/api/userendpoints/changepassword.py:31
+#: users/api/userendpoints/changepassword.py:32
 msgid "Password change confirmation link was sent to your address."
 msgid "Password change confirmation link was sent to your address."
 msgstr ""
 msgstr ""
 
 
-#: users/api/userendpoints/create.py:22
+#: users/api/userendpoints/create.py:25
 msgid "New users registrations are currently closed."
 msgid "New users registrations are currently closed."
 msgstr ""
 msgstr ""
 
 
-#: users/api/userendpoints/create.py:53 users/social/pipeline.py:205
+#: users/api/userendpoints/create.py:61 users/social/pipeline.py:215
 msgid "Please try resubmitting the form."
 msgid "Please try resubmitting the form."
 msgstr ""
 msgstr ""
 
 
@@ -4886,38 +5197,54 @@ msgstr ""
 msgid "You don't have permission to see other users name history."
 msgid "You don't have permission to see other users name history."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:54
+#: users/api/users.py:57
 msgid "You have to sign in to perform this action."
 msgid "You have to sign in to perform this action."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:100
+#: users/api/users.py:103
 msgid "You can't change other users avatars."
 msgid "You can't change other users avatars."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:107
+#: users/api/users.py:110
 msgid "You can't change other users options."
 msgid "You can't change other users options."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:112
+#: users/api/users.py:115
 msgid "Your forum options have been changed."
 msgid "Your forum options have been changed."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:119
+#: users/api/users.py:122
 msgid "You can't change other users names."
 msgid "You can't change other users names."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:126
+#: users/api/users.py:129
 msgid "You can't change other users signatures."
 msgid "You can't change other users signatures."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:133
+#: users/api/users.py:136
 msgid "You can't change other users passwords."
 msgid "You can't change other users passwords."
 msgstr ""
 msgstr ""
 
 
-#: users/api/users.py:140
+#: users/api/users.py:143
 msgid "You can't change other users e-mail addresses."
 msgid "You can't change other users e-mail addresses."
 msgstr ""
 msgstr ""
 
 
+#: users/api/users.py:225
+msgid "You can't request data downloads for other users."
+msgstr ""
+
+#: users/api/users.py:228
+msgid "You can't download your data."
+msgstr ""
+
+#: users/api/users.py:232
+msgid "You can't have more than one data download request at single time."
+msgstr ""
+
+#: users/api/users.py:278
+msgid "You can't see other users data downloads."
+msgstr ""
+
 #: users/apps.py:30
 #: users/apps.py:30
 msgid "Edit details"
 msgid "Edit details"
 msgstr ""
 msgstr ""
@@ -4930,11 +5257,11 @@ msgstr ""
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr ""
 msgstr ""
 
 
-#: users/apps.py:50
+#: users/apps.py:58
 msgid "Delete account"
 msgid "Delete account"
 msgstr ""
 msgstr ""
 
 
-#: users/apps.py:59
+#: users/apps.py:67
 msgid "Active poster"
 msgid "Active poster"
 msgstr ""
 msgstr ""
 
 
@@ -4991,295 +5318,295 @@ msgstr ""
 msgid "Edit the user from Misago admin panel"
 msgid "Edit the user from Misago admin panel"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:21 users/models/ban.py:74
+#: users/forms/admin.py:23 users/models/ban.py:74 users/signals.py:29
 msgid "Username"
 msgid "Username"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:22
+#: users/forms/admin.py:24
 msgid "Custom title"
 msgid "Custom title"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:23 users/models/ban.py:75
+#: users/forms/admin.py:25 users/models/ban.py:75
 msgid "E-mail address"
 msgid "E-mail address"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:52
+#: users/forms/admin.py:54
 msgid "All registered members must have \"Member\" role."
 msgid "All registered members must have \"Member\" role."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:71
+#: users/forms/admin.py:73
 msgid "Is administrator"
 msgid "Is administrator"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:73
+#: users/forms/admin.py:75
 msgid ""
 msgid ""
 "Designates whether the user can log into admin sites. If Django admin site "
 "Designates whether the user can log into admin sites. If Django admin site "
 "is enabled, this user will need additional permissions assigned within it to "
 "is enabled, this user will need additional permissions assigned within it to "
 "admin Django modules."
 "admin Django modules."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:79
+#: users/forms/admin.py:81
 msgid "Is superuser"
 msgid "Is superuser"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:81
+#: users/forms/admin.py:83
 msgid ""
 msgid ""
 "Only administrators can access admin sites. In addition to admin site "
 "Only administrators can access admin sites. In addition to admin site "
 "access, superadmins can also change other members admin levels."
 "access, superadmins can also change other members admin levels."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:86
+#: users/forms/admin.py:88
 msgid "Is active"
 msgid "Is active"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:88
+#: users/forms/admin.py:90
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Turning this off "
 "Designates whether this user should be treated as active. Turning this off "
 "is non-destructible way to remove user accounts."
 "is non-destructible way to remove user accounts."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:92 users/forms/admin.py:123 users/forms/admin.py:151
+#: users/forms/admin.py:94 users/forms/admin.py:125 users/forms/admin.py:153
 msgid "Staff message"
 msgid "Staff message"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:94
+#: users/forms/admin.py:96
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user's account has "
 "Optional message for forum team members explaining why user's account has "
 "been disabled."
 "been disabled."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:99
+#: users/forms/admin.py:101
 msgid "Change password to"
 msgid "Change password to"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:106
+#: users/forms/admin.py:108
 msgid "Lock avatar"
 msgid "Lock avatar"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:108
+#: users/forms/admin.py:110
 msgid ""
 msgid ""
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "reset his/her avatar to procedurally generated one."
 "reset his/her avatar to procedurally generated one."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:114 users/forms/admin.py:145 users/forms/admin.py:473
-#: users/forms/admin.py:526
+#: users/forms/admin.py:116 users/forms/admin.py:147 users/forms/admin.py:468
+#: users/forms/admin.py:540
 msgid "User message"
 msgid "User message"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:116
+#: users/forms/admin.py:118
 msgid ""
 msgid ""
 "Optional message for user explaining why he/she is banned form changing "
 "Optional message for user explaining why he/she is banned form changing "
 "avatar."
 "avatar."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:125
+#: users/forms/admin.py:127
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user is banned form "
 "Optional message for forum team members explaining why user is banned form "
 "changing avatar."
 "changing avatar."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:133
+#: users/forms/admin.py:135
 msgid "Signature contents"
 msgid "Signature contents"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:138
+#: users/forms/admin.py:140
 msgid "Lock signature"
 msgid "Lock signature"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:140
+#: users/forms/admin.py:142
 msgid ""
 msgid ""
 "Setting this to yes will stop user from making changes to his/her signature."
 "Setting this to yes will stop user from making changes to his/her signature."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:146
+#: users/forms/admin.py:148
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:152
+#: users/forms/admin.py:154
 msgid ""
 msgid ""
 "Optional message to team members explaining why user signature is locked."
 "Optional message to team members explaining why user signature is locked."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:157
+#: users/forms/admin.py:159
 msgid "Hides presence"
 msgid "Hides presence"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:160
+#: users/forms/admin.py:162
 msgid "Who can add user to private threads"
 msgid "Who can add user to private threads"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:169
+#: users/forms/admin.py:171
 msgid "Replid threads"
 msgid "Replid threads"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:219 users/serializers/moderation.py:42
+#: users/forms/admin.py:221 users/serializers/moderation.py:42
 #, python-format
 #, python-format
 msgid "Signature can't be longer than %(limit)s character."
 msgid "Signature can't be longer than %(limit)s character."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: users/forms/admin.py:238
+#: users/forms/admin.py:240
 msgid ""
 msgid ""
 "Ranks are used to group and distinguish users. They are also used to add "
 "Ranks are used to group and distinguish users. They are also used to add "
 "permissions to groups of users."
 "permissions to groups of users."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:248
+#: users/forms/admin.py:250
 msgid "Roles"
 msgid "Roles"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:249
+#: users/forms/admin.py:251
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:307
+#: users/forms/admin.py:309
 msgid "Username starts with"
 msgid "Username starts with"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:308
+#: users/forms/admin.py:310
 msgid "E-mail starts with"
 msgid "E-mail starts with"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:309
+#: users/forms/admin.py:311
 msgid "Profile fields contain"
 msgid "Profile fields contain"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:310
+#: users/forms/admin.py:312
 msgid "Inactive only"
 msgid "Inactive only"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:311
+#: users/forms/admin.py:313
 msgid "Disabled only"
 msgid "Disabled only"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:312
+#: users/forms/admin.py:314
 msgid "Admins only"
 msgid "Admins only"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:313
+#: users/forms/admin.py:315
 msgid "Deleting their accounts"
 msgid "Deleting their accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:355
+#: users/forms/admin.py:357
 msgid "All ranks"
 msgid "All ranks"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:362
+#: users/forms/admin.py:364
 msgid "All roles"
 msgid "All roles"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:369
+#: users/forms/admin.py:371
 msgid "Has rank"
 msgid "Has rank"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:375
+#: users/forms/admin.py:377
 msgid "Has role"
 msgid "Has role"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:391
+#: users/forms/admin.py:393
 msgid ""
 msgid ""
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "\"Game Masters\" are good examples."
 "\"Game Masters\" are good examples."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:396
+#: users/forms/admin.py:398
 msgid "User title"
 msgid "User title"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:399
+#: users/forms/admin.py:401
 msgid ""
 msgid ""
 "Optional, singular version of rank name displayed by user names. For example "
 "Optional, singular version of rank name displayed by user names. For example "
 "\"GM\" or \"Dev\"."
 "\"GM\" or \"Dev\"."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:409
+#: users/forms/admin.py:411
 msgid ""
 msgid ""
 "Optional description explaining function or status of members distincted "
 "Optional description explaining function or status of members distincted "
 "with this rank."
 "with this rank."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:418
+#: users/forms/admin.py:420
 msgid "Rank can give additional roles to users with it."
 msgid "Rank can give additional roles to users with it."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:423
+#: users/forms/admin.py:425
 msgid "Optional css class added to content belonging to this rank owner."
 msgid "Optional css class added to content belonging to this rank owner."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:426
+#: users/forms/admin.py:428
 msgid "Give rank dedicated tab on users list"
 msgid "Give rank dedicated tab on users list"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:429
+#: users/forms/admin.py:431
 msgid ""
 msgid ""
 "Selecting this option will make users with this rank easily discoverable by "
 "Selecting this option will make users with this rank easily discoverable by "
 "others through dedicated page on forum users list."
 "others through dedicated page on forum users list."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:454
+#: users/forms/admin.py:456
 msgid "This name collides with other rank."
 msgid "This name collides with other rank."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:461
+#: users/forms/admin.py:463
 msgid "Values to ban"
 msgid "Values to ban"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:464 users/forms/admin.py:579
-msgid "Usernames"
+#: users/forms/admin.py:471
+msgid "Optional message displayed to users instead of default one."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:465 users/forms/admin.py:580
-msgid "E-mails"
+#: users/forms/admin.py:474 users/forms/admin.py:484 users/forms/admin.py:546
+#: users/forms/admin.py:556
+msgid "Message can't be longer than 1000 characters."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:466
-msgid "E-mail domains"
+#: users/forms/admin.py:478 users/forms/admin.py:550
+msgid "Team message"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:467
-msgid "IP addresses"
+#: users/forms/admin.py:481 users/forms/admin.py:553
+msgid "Optional ban message for moderators and administrators."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:468
-msgid "First segment of IP addresses"
+#: users/forms/admin.py:490
+msgid "Leave this field empty for set bans to never expire."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:469
-msgid "First two segments of IP addresses"
+#: users/forms/admin.py:499 users/forms/admin.py:593
+msgid "Usernames"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:476
-msgid "Optional message displayed to users instead of default one."
+#: users/forms/admin.py:500 users/forms/admin.py:594
+msgid "E-mails"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:479 users/forms/admin.py:489 users/forms/admin.py:532
-#: users/forms/admin.py:542
-msgid "Message can't be longer than 1000 characters."
+#: users/forms/admin.py:501
+msgid "E-mail domains"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:483 users/forms/admin.py:536
-msgid "Team message"
+#: users/forms/admin.py:507
+msgid "IP addresses"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:486 users/forms/admin.py:539
-msgid "Optional ban message for moderators and administrators."
+#: users/forms/admin.py:508
+msgid "First segment of IP addresses"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:495
-msgid "Leave this field empty for set bans to never expire."
+#: users/forms/admin.py:509
+msgid "First two segments of IP addresses"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:501
+#: users/forms/admin.py:515
 msgid "Check type"
 msgid "Check type"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:506
+#: users/forms/admin.py:520
 msgid "Restrict this ban to registrations"
 msgid "Restrict this ban to registrations"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:508
+#: users/forms/admin.py:522
 msgid ""
 msgid ""
 "Changing this to yes will make this ban check be only performed on "
 "Changing this to yes will make this ban check be only performed on "
 "registration step. This is good if you want to block certain registrations "
 "registration step. This is good if you want to block certain registrations "
@@ -5287,61 +5614,84 @@ msgid ""
 "existing users."
 "existing users."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:514
+#: users/forms/admin.py:528
 msgid "Banned value"
 msgid "Banned value"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:517
+#: users/forms/admin.py:531
 msgid ""
 msgid ""
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "beginning with \"83.\"."
 "beginning with \"83.\"."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:522
+#: users/forms/admin.py:536
 msgid "Banned value can't be longer than 250 characters."
 msgid "Banned value can't be longer than 250 characters."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:529
+#: users/forms/admin.py:543
 msgid "Optional message displayed to user instead of default one."
 msgid "Optional message displayed to user instead of default one."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:548
+#: users/forms/admin.py:562
 msgid "Leave this field empty for this ban to never expire."
 msgid "Leave this field empty for this ban to never expire."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:568
+#: users/forms/admin.py:582
 msgid "Banned value is too vague."
 msgid "Banned value is too vague."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:578
+#: users/forms/admin.py:592
 msgid "All bans"
 msgid "All bans"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:581
+#: users/forms/admin.py:595
 msgid "IPs"
 msgid "IPs"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:584
+#: users/forms/admin.py:598
 msgid "Banned value begins with"
 msgid "Banned value begins with"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:586
+#: users/forms/admin.py:600
 msgid "Registration only"
 msgid "Registration only"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:589 users/forms/admin.py:598
+#: users/forms/admin.py:603 users/forms/admin.py:612
 msgid "Any"
 msgid "Any"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:599
+#: users/forms/admin.py:613
 msgid "Active"
 msgid "Active"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:600
+#: users/forms/admin.py:614 users/models/datadownload.py:26
 msgid "Expired"
 msgid "Expired"
 msgstr ""
 msgstr ""
 
 
+#: users/forms/admin.py:649
+msgid "Usernames or emails"
+msgstr ""
+
+#: users/forms/admin.py:651
+msgid ""
+"Enter every item in new line. Duplicates will be ignored. This field is case "
+"insensitive. Depending on site configuration and amount of data to archive "
+"it may take up to few days for requests to complete. E-mail will "
+"notification will be sent to every user once their download is ready."
+msgstr ""
+
+#: users/forms/admin.py:667
+#, python-format
+msgid ""
+"You may not enter more than 20 items at single time (You have entered "
+"%(show_value)s)."
+msgstr ""
+
+#: users/forms/admin.py:684
+msgid "One or more specified users could not be found."
+msgstr ""
+
 #: users/forms/auth.py:16
 #: users/forms/auth.py:16
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr ""
 msgstr ""
@@ -5398,18 +5748,27 @@ msgid ""
 "request new password."
 "request new password."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/register.py:27
+#: users/forms/register.py:34
 msgid "This usernane is not allowed."
 msgid "This usernane is not allowed."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/register.py:38 users/validators.py:41
+#: users/forms/register.py:45 users/validators.py:41
 msgid "This e-mail address is not allowed."
 msgid "This e-mail address is not allowed."
 msgstr ""
 msgstr ""
 
 
-#: users/forms/register.py:47
+#: users/forms/register.py:51
+msgid "This agreement is required."
+msgstr ""
+
+#: users/forms/register.py:60
 msgid "New registrations from this IP address are not allowed."
 msgid "New registrations from this IP address are not allowed."
 msgstr ""
 msgstr ""
 
 
+#: users/management/commands/prepareuserdatadownloads.py:34
+#, python-format
+msgid "%(user)s, your data download is ready"
+msgstr ""
+
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0006_update_settings.py:19
 #: users/migrations/0006_update_settings.py:19
 msgid ""
 msgid ""
@@ -5633,7 +5992,7 @@ msgid "Enter each answer in new line. Answers are case-insensitive."
 msgstr ""
 msgstr ""
 
 
 #: users/migrations/0004_default_ranks.py:17
 #: users/migrations/0004_default_ranks.py:17
-#: users/migrations/0004_default_ranks.py:18 users/models/user.py:111
+#: users/migrations/0004_default_ranks.py:18 users/models/user.py:113
 msgid "Forum team"
 msgid "Forum team"
 msgstr ""
 msgstr ""
 
 
@@ -5646,47 +6005,59 @@ msgstr ""
 msgid "Members"
 msgid "Members"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:37
+#: users/models/datadownload.py:23
+msgid "Pending"
+msgstr ""
+
+#: users/models/datadownload.py:24
+msgid "Processing"
+msgstr ""
+
+#: users/models/datadownload.py:25
+msgid "Ready"
+msgstr ""
+
+#: users/models/user.py:38
 msgid "User must have an email address."
 msgid "User must have an email address."
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:146
+#: users/models/user.py:148
 msgid "Notify"
 msgid "Notify"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:147
+#: users/models/user.py:149
 msgid "Notify with e-mail"
 msgid "Notify with e-mail"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:155
+#: users/models/user.py:157
 msgid "Everybody"
 msgid "Everybody"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:156
+#: users/models/user.py:158
 msgid "Users I follow"
 msgid "Users I follow"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:157
+#: users/models/user.py:159
 msgid "Nobody"
 msgid "Nobody"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:175
+#: users/models/user.py:177
 msgid "joined on"
 msgid "joined on"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:190
+#: users/models/user.py:191
 msgid "staff status"
 msgid "staff status"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:192
+#: users/models/user.py:193
 msgid "Designates whether the user can log into admin sites."
 msgid "Designates whether the user can log into admin sites."
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:199
+#: users/models/user.py:200
 msgid "active"
 msgid "active"
 msgstr ""
 msgstr ""
 
 
-#: users/models/user.py:203
+#: users/models/user.py:204
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Unselect this "
 "Designates whether this user should be treated as active. Unselect this "
 "instead of deleting accounts."
 "instead of deleting accounts."
@@ -6038,11 +6409,7 @@ msgstr ""
 msgid "Join IP"
 msgid "Join IP"
 msgstr ""
 msgstr ""
 
 
-#: users/profilefields/default.py:99
-msgid "Last IP"
-msgstr ""
-
-#: users/registration.py:9
+#: users/registration.py:11
 #, python-format
 #, python-format
 msgid "Welcome on %(forum_name)s forums!"
 msgid "Welcome on %(forum_name)s forums!"
 msgstr ""
 msgstr ""
@@ -6084,14 +6451,30 @@ msgstr ""
 msgid "New e-mail is same as current one."
 msgid "New e-mail is same as current one."
 msgstr ""
 msgstr ""
 
 
-#: users/social/pipeline.py:74
+#: users/signals.py:31
+msgid "Joined on"
+msgstr ""
+
+#: users/signals.py:32
+msgid "Joined from ip"
+msgstr ""
+
+#: users/signals.py:72
+msgid "New username"
+msgstr ""
+
+#: users/signals.py:73
+msgid "Old username"
+msgstr ""
+
+#: users/social/pipeline.py:77
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "The e-mail address associated with your %(backend)s account is not available "
 "The e-mail address associated with your %(backend)s account is not available "
 "for use on this site."
 "for use on this site."
 msgstr ""
 msgstr ""
 
 
-#: users/social/pipeline.py:83
+#: users/social/pipeline.py:86
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "Your account has to be activated by site administrator before you will be "
 "Your account has to be activated by site administrator before you will be "
@@ -6187,6 +6570,42 @@ msgstr ""
 msgid "Ban \"%(name)s\" has been removed."
 msgid "Ban \"%(name)s\" has been removed."
 msgstr ""
 msgstr ""
 
 
+#: users/views/admin/datadownloads.py:23
+msgid "With data downloads: 0"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:24
+msgid "Select data downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:28
+msgid "Expire downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:30
+msgid "Are you sure you want to set selected data downloads as expired?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:34
+msgid "Delete downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:36
+msgid "Are you sure you want to delete selected data downloads?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:51
+msgid "Selected data downloads have been set as expired."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:57
+msgid "Selected data downloads have been deleted."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:68
+msgid "Data downloads have been requested for specified users."
+msgstr ""
+
 #: users/views/admin/ranks.py:16
 #: users/views/admin/ranks.py:16
 msgid "Requested rank does not exist."
 msgid "Requested rank does not exist."
 msgstr ""
 msgstr ""
@@ -6236,92 +6655,100 @@ msgstr ""
 msgid "Rank \"%(name)s\" has been made default."
 msgid "Rank \"%(name)s\" has been made default."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:59
+#: users/views/admin/users.py:60
 msgid "Biggest posters"
 msgid "Biggest posters"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:60
+#: users/views/admin/users.py:61
 msgid "Smallest posters"
 msgid "Smallest posters"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:62
+#: users/views/admin/users.py:63
 msgid "With users: 0"
 msgid "With users: 0"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:63
+#: users/views/admin/users.py:64
 msgid "Select users"
 msgid "Select users"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:67
+#: users/views/admin/users.py:68
 msgid "Activate accounts"
 msgid "Activate accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:77
+#: users/views/admin/users.py:78
+msgid "Request data download"
+msgstr ""
+
+#: users/views/admin/users.py:83
 msgid "Delete accounts"
 msgid "Delete accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:79
+#: users/views/admin/users.py:85
 msgid "Are you sure you want to delete selected users?"
 msgid "Are you sure you want to delete selected users?"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:83
+#: users/views/admin/users.py:89
 msgid "Delete all"
 msgid "Delete all"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:86
+#: users/views/admin/users.py:92
 msgid ""
 msgid ""
 "Are you sure you want to delete selected users? This will also delete all "
 "Are you sure you want to delete selected users? This will also delete all "
 "content associated with their accounts."
 "content associated with their accounts."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:107
+#: users/views/admin/users.py:113
 msgid "You have to select inactive users."
 msgid "You have to select inactive users."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:114
+#: users/views/admin/users.py:120
 #, python-format
 #, python-format
 msgid "Your account on %(forum_name)s forums has been activated"
 msgid "Your account on %(forum_name)s forums has been activated"
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:119
+#: users/views/admin/users.py:125
 msgid "Selected users accounts have been activated."
 msgid "Selected users accounts have been activated."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:125
+#: users/views/admin/users.py:131
 #, python-format
 #, python-format
 msgid "%(user)s is super admin and can't be banned."
 msgid "%(user)s is super admin and can't be banned."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:186
+#: users/views/admin/users.py:194
 msgid "Selected users have been banned."
 msgid "Selected users have been banned."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:201 users/views/admin/users.py:215
-#: users/views/admin/users.py:331
+#: users/views/admin/users.py:212
+msgid "Data download requests have been placed for selected users."
+msgstr ""
+
+#: users/views/admin/users.py:217 users/views/admin/users.py:230
+#: users/views/admin/users.py:346
 msgid "You can't delete yourself."
 msgid "You can't delete yourself."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:203 users/views/admin/users.py:217
-#: users/views/admin/users.py:334
+#: users/views/admin/users.py:219 users/views/admin/users.py:232
+#: users/views/admin/users.py:349
 #, python-format
 #, python-format
 msgid "%(user)s is admin and can't be deleted."
 msgid "%(user)s is admin and can't be deleted."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:209
+#: users/views/admin/users.py:225
 msgid "Selected users have been deleted."
 msgid "Selected users have been deleted."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:232
+#: users/views/admin/users.py:247
 #, python-format
 #, python-format
 msgid "New user \"%(user)s\" has been registered."
 msgid "New user \"%(user)s\" has been registered."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:261
+#: users/views/admin/users.py:276
 #, python-format
 #, python-format
 msgid "User \"%(user)s\" has been edited."
 msgid "User \"%(user)s\" has been edited."
 msgstr ""
 msgstr ""
 
 
-#: users/views/admin/users.py:328
+#: users/views/admin/users.py:343
 msgid "This action can't be accessed directly."
 msgid "This action can't be accessed directly."
 msgstr ""
 msgstr ""
 
 

BIN
misago/locale/en/LC_MESSAGES/djangojs.mo


+ 285 - 206
misago/locale/en/LC_MESSAGES/djangojs.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-31 23:36+0000\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -39,7 +39,29 @@ msgid "Promise can't be resolved itself"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:1
 #: static/misago/js/misago.js:1
-msgid "By registering you agree to site's terms and conditions."
+msgid "the terms of service"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "the privacy policy"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "I have read and accept %(agreement)s."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid ""
+"Declining will result in immediate deactivation and deletion of your "
+"account. This action is not reversible."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Decline"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Accept and continue"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
@@ -48,11 +70,12 @@ msgstr ""
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Close"
 msgid "Close"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:1 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:1 static/misago/js/misago.js:6
 msgid "Add participant"
 msgid "Add participant"
 msgstr ""
 msgstr ""
 
 
@@ -70,9 +93,10 @@ msgstr ""
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:6 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:6 static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Cancel"
 msgid "Cancel"
 msgstr ""
 msgstr ""
 
 
@@ -194,8 +218,8 @@ msgid "Generate my individual avatar"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "Ok"
 msgid "Ok"
 msgstr ""
 msgstr ""
 
 
@@ -263,39 +287,39 @@ msgstr ""
 msgid "Emphase selection"
 msgid "Emphase selection"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert horizontal ruler"
 msgid "Insert horizontal ruler"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link to image"
 msgid "Enter link to image"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter image label (optional)"
 msgid "Enter image label (optional)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert image"
 msgid "Insert image"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link address"
 msgid "Enter link address"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link label (optional)"
 msgid "Enter link label (optional)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert link"
 msgid "Insert link"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter quote autor, prefix usernames with @"
 msgid "Enter quote autor, prefix usernames with @"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert quote"
 msgid "Insert quote"
 msgstr ""
 msgstr ""
 
 
@@ -327,7 +351,7 @@ msgstr ""
 msgid "Error uploading %(filename)s"
 msgid "Error uploading %(filename)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:3 static/misago/js/misago.js:8
+#: static/misago/js/misago.js:3 static/misago/js/misago.js:9
 msgid "Dismiss"
 msgid "Dismiss"
 msgstr ""
 msgstr ""
 
 
@@ -344,7 +368,7 @@ msgid "Protected"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Protect"
 msgid "Protect"
 msgstr ""
 msgstr ""
 
 
@@ -379,7 +403,7 @@ msgid ""
 "deleted during the merge."
 "deleted during the merge."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:18
 msgid "Poll"
 msgid "Poll"
 msgstr ""
 msgstr ""
 
 
@@ -394,6 +418,7 @@ msgid "Are you sure you want to delete all polls?"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Merge threads"
 msgid "Merge threads"
 msgstr ""
 msgstr ""
 
 
@@ -419,8 +444,7 @@ msgstr ""
 msgid "%(title)s, joined on %(joined_on)s"
 msgid "%(title)s, joined on %(joined_on)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "Change username"
 msgid "Change username"
 msgstr ""
 msgstr ""
 
 
@@ -453,7 +477,7 @@ msgstr[1] ""
 msgid "Your new username is same as current one."
 msgid "Your new username is same as current one."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "New username"
 msgid "New username"
 msgstr ""
 msgstr ""
 
 
@@ -462,15 +486,15 @@ msgid "Your username has been changed successfully."
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change your options"
 msgid "Change your options"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5
 msgid "Enter your password to confirm account deletion."
 msgid "Enter your password to confirm account deletion."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:13
 msgid "Delete account"
 msgid "Delete account"
 msgstr ""
 msgstr ""
 
 
@@ -506,7 +530,54 @@ msgstr ""
 msgid "Delete my account"
 msgid "Delete my account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:5
+msgid "Your request for data download has been registered."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download your data"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"To download your data from the site, click the \"Request data download\" "
+"button. Depending on amount of data to be archived and number of users "
+"wanting to download their data at same time it may take up to few days for "
+"your download to be prepared. An e-mail with notification will be sent to "
+"you when your data is ready to be downloaded."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"The download will only be available for limited amount of time, after which "
+"it will be deleted from the site and marked as expired."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Requested on"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "You have no data downloads."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Request data download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is being prepared"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is expired"
+msgstr ""
+
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:12
 msgid "Your details have been updated."
 msgid "Your details have been updated."
 msgstr ""
 msgstr ""
 
 
@@ -589,7 +660,7 @@ msgstr ""
 msgid "Threads I reply to"
 msgid "Threads I reply to"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:6
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr ""
 msgstr ""
 
 
@@ -639,7 +710,7 @@ msgstr ""
 msgid "Repeat password"
 msgid "Repeat password"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change forgotten password"
 msgid "Change forgotten password"
 msgstr ""
 msgstr ""
 
 
@@ -821,21 +892,21 @@ msgid_plural "%(votes)s votes."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Votes are public."
 msgid "Votes are public."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Your choice."
 msgid "Your choice."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s user has voted for this choice."
 msgid "%(votes)s user has voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgstr[0] ""
 msgstr[0] ""
@@ -853,9 +924,8 @@ msgstr ""
 msgid "See votes"
 msgid "See votes"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:15
 msgid "Edit"
 msgid "Edit"
 msgstr ""
 msgstr ""
 
 
@@ -865,8 +935,7 @@ msgid ""
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Delete"
 msgid "Delete"
 msgstr ""
 msgstr ""
 
 
@@ -929,27 +998,27 @@ msgstr ""
 msgid "See previous change"
 msgid "See previous change"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "By %(edited_by)s %(edited_on)s."
 msgid "By %(edited_by)s %(edited_on)s."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This post's contents cannot be displayed."
 msgid "This post's contents cannot be displayed."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This error is caused by invalid post content manipulation."
 msgid "This error is caused by invalid post content manipulation."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "posted %(posted_on)s"
 msgid "posted %(posted_on)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "Removed user"
 msgid "Removed user"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "See post"
 msgid "See post"
 msgstr ""
 msgstr ""
 
 
@@ -971,7 +1040,7 @@ msgstr ""
 msgid "Are you sure you want to discard changes?"
 msgid "Are you sure you want to discard changes?"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr ""
 msgstr ""
 
 
@@ -1003,11 +1072,12 @@ msgstr ""
 msgid "You have to enter at least one recipient."
 msgid "You have to enter at least one recipient."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:15
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Your thread has been posted."
 msgid "Your thread has been posted."
 msgstr ""
 msgstr ""
 
 
@@ -1015,12 +1085,13 @@ msgstr ""
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:19
 msgid "Thread title"
 msgid "Thread title"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Post thread"
 msgid "Post thread"
 msgstr ""
 msgstr ""
 
 
@@ -1028,35 +1099,35 @@ msgstr ""
 msgid "Are you sure you want to discard thread?"
 msgid "Are you sure you want to discard thread?"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18
 msgid "Closed"
 msgid "Closed"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:16
 msgid "Open"
 msgid "Open"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:21
 msgid "Hidden"
 msgid "Hidden"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Not hidden"
 msgid "Not hidden"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Unpinned"
 msgid "Unpinned"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned locally"
 msgid "Pinned locally"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned globally"
 msgid "Pinned globally"
@@ -1103,12 +1174,12 @@ msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Hide"
 msgid "Hide"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Unhide"
 msgid "Unhide"
 msgstr ""
 msgstr ""
 
 
@@ -1130,10 +1201,6 @@ msgid "By %(event_by)s %(event_on)s."
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:9
 #: static/misago/js/misago.js:9
-msgid "IP recorded"
-msgstr ""
-
-#: static/misago/js/misago.js:9
 msgid "Thread title has been changed from %(old_title)s."
 msgid "Thread title has been changed from %(old_title)s."
 msgstr ""
 msgstr ""
 
 
@@ -1222,23 +1289,23 @@ msgstr ""
 msgid "Post has been deleted."
 msgid "Post has been deleted."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link to this post:"
 msgid "Permament link to this post:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link"
 msgid "Permament link"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Mark as best answer"
 msgid "Mark as best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Unmark best answer"
 msgid "Unmark best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
 msgid "This post was edited %(edits)s time."
 msgid "This post was edited %(edits)s time."
 msgid_plural "This post was edited %(edits)s times."
 msgid_plural "This post was edited %(edits)s times."
 msgstr[0] ""
 msgstr[0] ""
@@ -1248,17 +1315,15 @@ msgstr[1] ""
 msgid "Changes history"
 msgid "Changes history"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Approve"
 msgid "Approve"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Move"
 msgid "Move"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Split"
 msgid "Split"
 msgstr ""
 msgstr ""
 
 
@@ -1271,6 +1336,7 @@ msgid "Move post"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You have to enter link to the other thread."
 msgid "You have to enter link to the other thread."
 msgstr ""
 msgstr ""
 
 
@@ -1320,7 +1386,7 @@ msgid "Close thread"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19
 msgid "Category"
 msgid "Category"
 msgstr ""
 msgstr ""
 
 
@@ -1368,32 +1434,32 @@ msgid_plural "%(users)s and %(likes)s other users like this."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Liked"
 msgid "Liked"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Like"
 msgid "Like"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
 msgid "Reply"
 msgid "Reply"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "New post"
 msgid "New post"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:20
 msgid "New"
 msgid "New"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "This post is protected and may not be edited."
 msgid "This post is protected and may not be edited."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "protected"
 msgid "protected"
 msgstr ""
 msgstr ""
 
 
@@ -1441,69 +1507,68 @@ msgstr ""
 msgid "%(username)s is not sharing any details with others."
 msgid "%(username)s is not sharing any details with others."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
 msgid "Details"
 msgid "Details"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s's details have been updated."
 msgid "%(username)s's details have been updated."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have no started threads."
 msgid "You have no started threads."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s started no threads."
 msgid "%(username)s started no threads."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have started %(threads)s thread."
 msgid "You have started %(threads)s thread."
 msgid_plural "You have started %(threads)s threads."
 msgid_plural "You have started %(threads)s threads."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has started %(threads)s thread."
 msgid "%(username)s has started %(threads)s thread."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:13
 msgid "Loading..."
 msgid "Loading..."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:20
 #: static/misago/js/misago.js:20
 msgid "Threads"
 msgid "Threads"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted no messages."
 msgid "You have posted no messages."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s posted no messages."
 msgid "%(username)s posted no messages."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted %(posts)s message."
 msgid "You have posted %(posts)s message."
 msgid_plural "You have posted %(posts)s messages."
 msgid_plural "You have posted %(posts)s messages."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has posted %(posts)s message."
 msgid "%(username)s has posted %(posts)s message."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "Posts"
 msgid "Posts"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:12
 msgid "Show more (%(more)s)"
 msgid "Show more (%(more)s)"
 msgstr ""
 msgstr ""
 
 
@@ -1594,6 +1659,7 @@ msgid "Joined %(joined_on)s"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Moderation"
 msgid "Moderation"
 msgstr ""
 msgstr ""
 
 
@@ -1647,41 +1713,41 @@ msgstr ""
 msgid "Avatar controls"
 msgid "Avatar controls"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Username has been changed."
 msgid "Username has been changed."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account, threads, posts and other content has been deleted."
 "%(username)s's account, threads, posts and other content has been deleted."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account has been deleted and other content has been hidden."
 "%(username)s's account has been deleted and other content has been hidden."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete %(username)s"
 msgid "Delete %(username)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Please wait... (%(countdown)ss)"
 msgid "Please wait... (%(countdown)ss)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "User content"
 msgid "User content"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete together with user's account"
 msgid "Delete together with user's account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Hide after deleting user's account"
 msgid "Hide after deleting user's account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Return to users list"
 msgid "Return to users list"
 msgstr ""
 msgstr ""
 
 
@@ -1747,75 +1813,74 @@ msgstr ""
 msgid "Register"
 msgid "Register"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Join with %(site)s"
 msgid "Join with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Or create forum account:"
 msgid "Or create forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Username"
 msgid "Username"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "E-mail"
 msgid "E-mail"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Password"
 msgid "Password"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Register account"
 msgid "Register account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but you need to activate it "
 "%(username)s, your account has been created but you need to activate it "
 "before you will be able to sign in."
 "before you will be able to sign in."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but board administrator will "
 "%(username)s, your account has been created but board administrator will "
 "have to activate it before you will be able to sign in."
 "have to activate it before you will be able to sign in."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid ""
 msgid ""
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "activate your account."
 "activate your account."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Registration complete"
 msgid "Registration complete"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:25
 msgid "Enter a valid email address."
 msgid "Enter a valid email address."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Your e-mail address"
 msgid "Your e-mail address"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Send link"
 msgid "Send link"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Activation link was sent to %(email)s"
 msgid "Activation link was sent to %(email)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Request another link"
 msgid "Request another link"
 msgstr ""
 msgstr ""
 
 
@@ -1880,40 +1945,41 @@ msgstr ""
 msgid "Enter at least two characters to search users."
 msgid "Enter at least two characters to search users."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Activate account"
 msgid "Activate account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Sign in with %(site)s"
 msgid "Sign in with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Or use your forum account:"
 msgid "Or use your forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Forgot password?"
 msgid "Forgot password?"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid ""
 msgid ""
-"%(username)s, your account has been created and you has been signed in to it."
+"%(username)s, your account has been created and you have been signed in to "
+"it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Registration completed!"
 msgid "Registration completed!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Return to forum index"
 msgid "Return to forum index"
 msgstr ""
 msgstr ""
 
 
@@ -1922,6 +1988,10 @@ msgid "Sign in with %(backend)s"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
+msgid "You need to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:15
 msgid "Your e-mail address has been verified by %(backend)s."
 msgid "Your e-mail address has been verified by %(backend)s."
 msgstr ""
 msgstr ""
 
 
@@ -1942,7 +2012,7 @@ msgid "Edit title"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:20
 msgid "Unapproved"
 msgid "Unapproved"
 msgstr ""
 msgstr ""
 
 
@@ -1950,7 +2020,7 @@ msgstr ""
 msgid "Unapproved posts"
 msgid "Unapproved posts"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:15 static/misago/js/misago.js:18
 msgid "%(replies)s reply"
 msgid "%(replies)s reply"
 msgid_plural "%(replies)s replies"
 msgid_plural "%(replies)s replies"
 msgstr[0] ""
 msgstr[0] ""
@@ -1971,19 +2041,19 @@ msgid ""
 "reversible!"
 "reversible!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Merge"
 msgid "Merge"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Unprotect"
 msgid "Unprotect"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "%(username)s on %(posted_on)s"
 msgid "%(username)s on %(posted_on)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "One or more posts could not be changed:"
 msgid "One or more posts could not be changed:"
 msgstr ""
 msgstr ""
 
 
@@ -2043,37 +2113,37 @@ msgstr ""
 msgid "Unpin"
 msgid "Unpin"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Merge thread"
 msgid "Merge thread"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been merged with other one."
 msgid "Thread has been merged with other one."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Link to thread you want to merge with"
 msgid "Link to thread you want to merge with"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid ""
 msgid ""
 "Merge will delete current thread and move its contents to the thread "
 "Merge will delete current thread and move its contents to the thread "
 "specified here."
 "specified here."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Move thread"
 msgid "Move thread"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You can't move this thread at the moment."
 msgid "You can't move this thread at the moment."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been moved."
 msgid "Thread has been moved."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "New category"
 msgid "New category"
 msgstr ""
 msgstr ""
 
 
@@ -2111,15 +2181,15 @@ msgstr ""
 msgid "Disabled"
 msgid "Disabled"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Unsubscribe"
 msgid "Unsubscribe"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe"
 msgid "Subscribe"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe with e-mail"
 msgid "Subscribe with e-mail"
 msgstr ""
 msgstr ""
 
 
@@ -2151,11 +2221,11 @@ msgstr ""
 msgid "Options"
 msgid "Options"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid "Add poll"
 msgid "Add poll"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid ""
 msgid ""
 "There is %(threads)s new or updated thread. Click this message to show it."
 "There is %(threads)s new or updated thread. Click this message to show it."
 msgid_plural ""
 msgid_plural ""
@@ -2176,7 +2246,7 @@ msgstr ""
 msgid "Change subscription"
 msgid "Change subscription"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19
 msgid "Start thread"
 msgid "Start thread"
 msgstr ""
 msgstr ""
 
 
@@ -2256,7 +2326,7 @@ msgstr ""
 msgid "Unpin threads"
 msgid "Unpin threads"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Move threads"
 msgid "Move threads"
 msgstr ""
 msgstr ""
 
 
@@ -2292,7 +2362,7 @@ msgstr ""
 msgid "One or more threads could not be deleted:"
 msgid "One or more threads could not be deleted:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You can't move threads because there are no categories you are allowed to "
 "You can't move threads because there are no categories you are allowed to "
 "move them to."
 "move them to."
@@ -2304,61 +2374,61 @@ msgid ""
 "to it."
 "to it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Selected threads were moved."
 msgid "Selected threads were moved."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You need permission to start threads in category to be able to move threads "
 "You need permission to start threads in category to be able to move threads "
 "to it."
 "to it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select all"
 msgid "Select all"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select none"
 msgid "Select none"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All"
 msgid "All"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All threads"
 msgid "All threads"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My"
 msgid "My"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My threads"
 msgid "My threads"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "New threads"
 msgid "New threads"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread"
 msgid "Unread"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread threads"
 msgid "Unread threads"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed"
 msgid "Subscribed"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed threads"
 msgid "Subscribed threads"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unapproved content"
 msgid "Unapproved content"
 msgstr ""
 msgstr ""
 
 
@@ -2374,7 +2444,8 @@ msgstr ""
 msgid "You have unread private threads!"
 msgid "You have unread private threads!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20 static/misago/js/misago.js:22
+#: static/misago/js/misago.js:20 static/misago/js/misago.js:21
+#: static/misago/js/misago.js:23
 msgid "Private threads"
 msgid "Private threads"
 msgstr ""
 msgstr ""
 
 
@@ -2382,67 +2453,67 @@ msgstr ""
 msgid "Are you sure you want to sign out?"
 msgid "Are you sure you want to sign out?"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "See your profile"
 msgid "See your profile"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change options"
 msgid "Change options"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change avatar"
 msgid "Change avatar"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Log out"
 msgid "Log out"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned until %(ban_expires)s"
 msgid "%(username)s is banned until %(ban_expires)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned"
 msgid "%(username)s is banned"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is hiding presence"
 msgid "%(username)s is hiding presence"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online (hidden)"
 msgid "%(username)s is online (hidden)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online"
 msgid "%(username)s is online"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s"
 msgid "%(username)s was last seen %(last_click)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Banned"
 msgid "Banned"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online (hidden)"
 msgid "Online (hidden)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline (hidden)"
 msgid "Offline (hidden)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online"
 msgid "Online"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline"
 msgid "Offline"
 msgstr ""
 msgstr ""
 
 
@@ -2456,19 +2527,19 @@ msgstr[1] ""
 msgid "No users have posted any new messages during last %(days)s days."
 msgid "No users have posted any new messages during last %(days)s days."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Rank"
 msgid "Rank"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Ranked posts"
 msgid "Ranked posts"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "Total posts"
 msgid "Total posts"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgstr[0] ""
 msgstr[0] ""
@@ -2500,25 +2571,25 @@ msgstr ""
 msgid "no"
 msgid "no"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid ""
 msgid ""
 "Private threads are threads which only those that started them and those "
 "Private threads are threads which only those that started them and those "
 "they have invited may see and participate in."
 "they have invited may see and participate in."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid "You aren't participating in any private threads."
 msgid "You aren't participating in any private threads."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Lost connection with application."
 msgid "Lost connection with application."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Action link is invalid."
 msgid "Action link is invalid."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Unknown error has occured."
 msgid "Unknown error has occured."
 msgstr ""
 msgstr ""
 
 
@@ -2554,15 +2625,23 @@ msgstr ""
 msgid "You don't have permission to perform this action."
 msgid "You don't have permission to perform this action."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "You are banned"
 msgid "You are banned"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "This field is required."
 msgid "This field is required."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
+msgid "You have to accept the terms of service."
+msgstr ""
+
+#: static/misago/js/misago.js:25
+msgid "You have to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at least %(limit_value)s character (it has "
 "Ensure this value has at least %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2572,7 +2651,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at most %(limit_value)s character (it has "
 "Ensure this value has at most %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2582,23 +2661,23 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username must be at least %(limit_value)s character long."
 msgid "Username must be at least %(limit_value)s character long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgstr[0] ""
 msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username can only contain latin alphabet letters and digits."
 msgid "Username can only contain latin alphabet letters and digits."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid_plural "Valid password must be at least %(limit_value)s characters long."
 msgid_plural "Valid password must be at least %(limit_value)s characters long."
 msgstr[0] ""
 msgstr[0] ""

BIN
misago/locale/es/LC_MESSAGES/django.mo


+ 726 - 303
misago/locale/es/LC_MESSAGES/django.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-31 23:36+0000\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Carlos López <carlos@vocalaze.com>, 2017\n"
 "Last-Translator: Carlos López <carlos@vocalaze.com>, 2017\n"
 "Language-Team: Spanish (https://www.transifex.com/misago/teams/65369/es/)\n"
 "Language-Team: Spanish (https://www.transifex.com/misago/teams/65369/es/)\n"
@@ -25,7 +25,7 @@ msgstr ""
 msgid "Permissions"
 msgid "Permissions"
 msgstr "Permisos"
 msgstr "Permisos"
 
 
-#: acl/admin.py:33 users/forms/admin.py:414
+#: acl/admin.py:33 users/forms/admin.py:416
 msgid "User roles"
 msgid "User roles"
 msgstr "Roles de usuario"
 msgstr "Roles de usuario"
 
 
@@ -142,17 +142,17 @@ msgstr "Debes seleccionar uno o más artículos."
 msgid "Action is not allowed."
 msgid "Action is not allowed."
 msgstr "La acción no está permitida"
 msgstr "La acción no está permitida"
 
 
-#: admin/views/index.py:70
+#: admin/views/index.py:83
 #, python-format
 #, python-format
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgstr "Anticuado %(current)s! (último: %(latest)s)"
 msgstr "Anticuado %(current)s! (último: %(latest)s)"
 
 
-#: admin/views/index.py:78
+#: admin/views/index.py:91
 #, python-format
 #, python-format
 msgid "Up to date! (%(current)s)"
 msgid "Up to date! (%(current)s)"
 msgstr "¡Actualizado! (%(current)s)"
 msgstr "¡Actualizado! (%(current)s)"
 
 
-#: admin/views/index.py:87
+#: admin/views/index.py:100
 msgid "Failed to connect to GitHub API. Try again later."
 msgid "Failed to connect to GitHub API. Try again later."
 msgstr "Error al conectarse a la API de GitHub. Inténtalo más tarde."
 msgstr "Error al conectarse a la API de GitHub. Inténtalo más tarde."
 
 
@@ -171,11 +171,11 @@ msgstr "Jerarquía de categorías"
 msgid "Category roles"
 msgid "Category roles"
 msgstr "Roles de categoría"
 msgstr "Roles de categoría"
 
 
-#: categories/forms.py:47 users/forms/admin.py:388
+#: categories/forms.py:47 users/forms/admin.py:390
 msgid "Name"
 msgid "Name"
 msgstr "Nombre"
 msgstr "Nombre"
 
 
-#: categories/forms.py:49 users/forms/admin.py:404
+#: categories/forms.py:49 users/forms/admin.py:406
 msgid "Description"
 msgid "Description"
 msgstr "Descripción"
 msgstr "Descripción"
 
 
@@ -183,7 +183,7 @@ msgstr "Descripción"
 msgid "Optional description explaining category intented purpose."
 msgid "Optional description explaining category intented purpose."
 msgstr "Descripción opcional que explica el propósito de la categoría."
 msgstr "Descripción opcional que explica el propósito de la categoría."
 
 
-#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:421
+#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:423
 msgid "CSS class"
 msgid "CSS class"
 msgstr "Clase CSS"
 msgstr "Clase CSS"
 
 
@@ -205,7 +205,7 @@ msgstr ""
 "Solo los miembros con permisos válidos pueden publicar en categorías "
 "Solo los miembros con permisos válidos pueden publicar en categorías "
 "cerradas."
 "cerradas."
 
 
-#: categories/forms.py:75 templates/misago/admin/index.html:83
+#: categories/forms.py:75 templates/misago/admin/index.html:110
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/profile/threads.html:8
 #: templates/misago/profile/threads.html:8
@@ -218,7 +218,7 @@ msgstr ""
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
-#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:89
+#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:97
 msgid "Threads"
 msgid "Threads"
 msgstr "Hilos"
 msgstr "Hilos"
 
 
@@ -533,7 +533,7 @@ msgstr "La autenticación de solicitud no es válida."
 
 
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: templates/misago/admin/users/edit.html:78
 #: templates/misago/admin/users/edit.html:78
-#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:590
+#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:604
 msgid "Yes"
 msgid "Yes"
 msgstr "Sí"
 msgstr "Sí"
 
 
@@ -547,7 +547,7 @@ msgstr "Sí"
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
-#: users/forms/admin.py:591 users/models/user.py:145
+#: users/forms/admin.py:605 users/models/user.py:147
 msgid "No"
 msgid "No"
 msgstr "No"
 msgstr "No"
 
 
@@ -652,7 +652,72 @@ msgstr "El valor debe contener caracteres alfanuméricos."
 msgid "Value is too long."
 msgid "Value is too long."
 msgstr "El valor es demasiado largo."
 msgstr "El valor es demasiado largo."
 
 
+#: legal/admin.py:25 templates/misago/admin/users/edit.html:216
+msgid "Agreements"
+msgstr ""
+
+#: legal/api.py:18
+msgid "You have already accepted this agreement."
+msgstr ""
+
+#: legal/api.py:27
+msgid "You need to submit a valid choice."
+msgstr ""
+
+#: legal/forms.py:10 legal/forms.py:60
+#: templates/misago/admin/agreements/list.html:18
+#: templates/misago/admin/attachmenttypes/list.html:16
+#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:589
+msgid "Type"
+msgstr "Tipo"
+
+#: legal/forms.py:12 templates/misago/admin/agreements/list.html:16
+#: templates/misago/admin/ranks/list.html:17
+msgid "Title"
+msgstr "Título"
+
+#: legal/forms.py:13
+msgid "Optional, leave empty for agreement to be named after its type."
+msgstr ""
+
+#: legal/forms.py:17
+msgid "Set as active for its type"
+msgstr ""
+
+#: legal/forms.py:19
+msgid ""
+"If other agreement is already active for this type, it will be unset and "
+"replaced with this one. Misago will ask users who didn't accept this "
+"agreement to do so before allowing them to continue using the site's "
+"features."
+msgstr ""
+
+#: legal/forms.py:27
+msgid "Link"
+msgstr ""
+
+#: legal/forms.py:28
+msgid "If your agreement is located on other page, enter here a link to it."
+msgstr ""
+
+#: legal/forms.py:32
+msgid "Text"
+msgstr ""
+
+#: legal/forms.py:33
+msgid "You can use Markdown syntax for rich text elements."
+msgstr ""
+
+#: legal/forms.py:46
+msgid "Please fill in agreement link or text."
+msgstr ""
+
+#: legal/forms.py:65
+msgid "Content"
+msgstr ""
+
 #: legal/migrations/0001_initial.py:16
 #: legal/migrations/0001_initial.py:16
+#: legal/migrations/0003_create_agreements_from_settings.py:57
 msgid "Legal information"
 msgid "Legal information"
 msgstr "INFORMACIÓN LEGAL"
 msgstr "INFORMACIÓN LEGAL"
 
 
@@ -702,7 +767,7 @@ msgstr ""
 msgid "Policy title"
 msgid "Policy title"
 msgstr "Título de la política"
 msgstr "Título de la política"
 
 
-#: legal/migrations/0001_initial.py:64 legal/views.py:46
+#: legal/migrations/0001_initial.py:64 legal/models.py:43
 #: templates/misago/footer.html:27
 #: templates/misago/footer.html:27
 msgid "Privacy policy"
 msgid "Privacy policy"
 msgstr "Política de privacidad"
 msgstr "Política de privacidad"
@@ -731,21 +796,85 @@ msgstr ""
 "Misago está disponible para formatear."
 "Misago está disponible para formatear."
 
 
 #: legal/migrations/0001_initial.py:105
 #: legal/migrations/0001_initial.py:105
+#: legal/migrations/0003_create_agreements_from_settings.py:62
 msgid "Footnote"
 msgid "Footnote"
 msgstr "Nota"
 msgstr "Nota"
 
 
 #: legal/migrations/0001_initial.py:106
 #: legal/migrations/0001_initial.py:106
+#: legal/migrations/0003_create_agreements_from_settings.py:63
 msgid "Short message displayed in forum footer."
 msgid "Short message displayed in forum footer."
 msgstr "Se muestra un mensaje corto en el pie de página del foro."
 msgstr "Se muestra un mensaje corto en el pie de página del foro."
 
 
 #: legal/migrations/0001_initial.py:107
 #: legal/migrations/0001_initial.py:107
+#: legal/migrations/0003_create_agreements_from_settings.py:64
 msgid "Forum footer"
 msgid "Forum footer"
 msgstr "Pie de página del foro"
 msgstr "Pie de página del foro"
 
 
-#: legal/views.py:65 templates/misago/footer.html:22
+#: legal/migrations/0003_create_agreements_from_settings.py:58
+msgid ""
+"Those settings allow you to set additional legal information for your forum."
+msgstr ""
+
+#: legal/models.py:42 templates/misago/footer.html:22
 msgid "Terms of service"
 msgid "Terms of service"
 msgstr "Términos del servicio"
 msgstr "Términos del servicio"
 
 
+#: legal/views/admin.py:17
+msgid "Requested agreement does not exist."
+msgstr ""
+
+#: legal/views/admin.py:29 threads/views/admin/attachments.py:24
+#: users/views/admin/bans.py:24 users/views/admin/datadownloads.py:20
+#: users/views/admin/users.py:56
+msgid "From newest"
+msgstr "Desde el más nuevo"
+
+#: legal/views/admin.py:30 threads/views/admin/attachments.py:25
+#: users/views/admin/bans.py:25 users/views/admin/datadownloads.py:21
+#: users/views/admin/users.py:57
+msgid "From oldest"
+msgstr "Desde el más antiguo"
+
+#: legal/views/admin.py:33
+msgid "With agreements: 0"
+msgstr ""
+
+#: legal/views/admin.py:34
+msgid "Select agreements"
+msgstr ""
+
+#: legal/views/admin.py:38
+msgid "Delete agreements"
+msgstr ""
+
+#: legal/views/admin.py:39
+msgid "Are you sure you want to delete those agreements?"
+msgstr ""
+
+#: legal/views/admin.py:49
+msgid "Selected agreements have been deleted."
+msgstr ""
+
+#: legal/views/admin.py:53
+#, python-format
+msgid "New agreement \"%(title)s\" has been saved."
+msgstr ""
+
+#: legal/views/admin.py:63
+#, python-format
+msgid "Agreement \"%(title)s\" has been edited."
+msgstr ""
+
+#: legal/views/admin.py:77
+#, python-format
+msgid "Agreement \"%(title)s\" has been deleted."
+msgstr ""
+
+#: legal/views/admin.py:85
+#, python-format
+msgid "Agreement \"%(title)s\" has been set as active for type \"%(type)s\"."
+msgstr ""
+
 #: markup/finalise.py:22
 #: markup/finalise.py:22
 #, python-format
 #, python-format
 msgid "%(title)s has written:"
 msgid "%(title)s has written:"
@@ -755,15 +884,15 @@ msgstr "%(title)s ha escrito:"
 msgid "Quoted message:"
 msgid "Quoted message:"
 msgstr "Mensaje citado:"
 msgstr "Mensaje citado:"
 
 
-#: project_template/project_name/settings.py:388
+#: project_template/project_name/settings.py:424
 msgid "Personal"
 msgid "Personal"
 msgstr "Personal"
 msgstr "Personal"
 
 
-#: project_template/project_name/settings.py:397
+#: project_template/project_name/settings.py:433
 msgid "Contact"
 msgid "Contact"
 msgstr "Contacto"
 msgstr "Contacto"
 
 
-#: project_template/project_name/settings.py:405 users/models/ban.py:76
+#: project_template/project_name/settings.py:441 users/models/ban.py:76
 msgid "IP address"
 msgid "IP address"
 msgstr "Dirección IP"
 msgstr "Dirección IP"
 
 
@@ -872,6 +1001,98 @@ msgstr "Activación fallida"
 msgid "Your account can't be activated at this time."
 msgid "Your account can't be activated at this time."
 msgstr "Tu cuenta no puede ser activada en este momento."
 msgstr "Tu cuenta no puede ser activada en este momento."
 
 
+#: templates/misago/admin/agreements/form.html:9
+#: templates/misago/admin/agreements/form.html:18
+#: templates/misago/admin/agreements/form.html:28
+#: templates/misago/admin/agreements/list.html:9
+msgid "New agreement"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:43
+#: templates/misago/admin/categoryroles/form.html:43
+#: templates/misago/admin/roles/form.html:43
+msgid "Basic settings"
+msgstr "Configuración básica"
+
+#: templates/misago/admin/agreements/form.html:51
+msgid "Agreement contents"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:54
+msgid "Fill in one of the fields."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:19
+msgid "Created"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:20
+msgid "Modified"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:33
+#, python-format
+msgid "Active %(type)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:52
+#, python-format
+msgid "%(created_on)s by %(created_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:68
+#, python-format
+msgid "%(last_modified_on)s by %(last_modified_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:72
+msgid "never"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:78
+msgid "Set as active"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:88
+#: templates/misago/admin/attachmenttypes/list.html:54
+#: templates/misago/admin/bans/list.html:55
+#: templates/misago/admin/categories/list.html:66
+#: templates/misago/admin/categoryroles/list.html:27
+#: templates/misago/admin/ranks/list.html:99
+#: templates/misago/admin/roles/list.html:43
+#: templates/misago/admin/warnings/list.html:109
+#: templates/misago/poll/results.html:69
+#: templates/misago/profile/details.html:24
+#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
+msgid "Edit"
+msgstr "Editar"
+
+#: templates/misago/admin/agreements/list.html:94
+#: templates/misago/admin/bans/list.html:61
+msgid "Remove"
+msgstr "Eliminar"
+
+#: templates/misago/admin/agreements/list.html:106
+msgid "No agreements matching search criteria have been found"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:108
+msgid "No agreements are currently set."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:119
+msgid "Are you sure you want to set this agreement as active for its type?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:124
+msgid "Are you sure you want to delete this agreement?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:133
+#: templates/misago/admin/bans/list.html:95
+msgid "Search bans"
+msgstr "Prohibiciones de búsqueda"
+
 #: templates/misago/admin/attachments/list.html:7
 #: templates/misago/admin/attachments/list.html:7
 msgid "Attachment"
 msgid "Attachment"
 msgstr "Adjuntar archivo"
 msgstr "Adjuntar archivo"
@@ -882,12 +1103,8 @@ msgstr "Hilo"
 
 
 #: templates/misago/admin/attachments/list.html:42
 #: templates/misago/admin/attachments/list.html:42
 #, python-format
 #, python-format
-msgid ""
-"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s from "
-"%(uploader_ip)s."
+msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s."
 msgstr ""
 msgstr ""
-"%(filetype)s, %(size)s, subido por %(uploader)s %(uploaded_on)s desde "
-"%(uploader_ip)s."
 
 
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachmenttypes/list.html:47
 #: templates/misago/admin/attachmenttypes/list.html:47
@@ -938,11 +1155,6 @@ msgstr "Opciones Básicas"
 msgid "Availability"
 msgid "Availability"
 msgstr "Disponibilidad"
 msgstr "Disponibilidad"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:16
-#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:575
-msgid "Type"
-msgstr "Tipo"
-
 #: templates/misago/admin/attachmenttypes/list.html:17
 #: templates/misago/admin/attachmenttypes/list.html:17
 msgid "Extensions"
 msgid "Extensions"
 msgstr "Extensiones"
 msgstr "Extensiones"
@@ -955,19 +1167,6 @@ msgstr "Mimetypes"
 msgid "Files"
 msgid "Files"
 msgstr "Archivos"
 msgstr "Archivos"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:54
-#: templates/misago/admin/bans/list.html:55
-#: templates/misago/admin/categories/list.html:66
-#: templates/misago/admin/categoryroles/list.html:27
-#: templates/misago/admin/ranks/list.html:99
-#: templates/misago/admin/roles/list.html:43
-#: templates/misago/admin/warnings/list.html:109
-#: templates/misago/poll/results.html:69
-#: templates/misago/profile/details.html:24
-#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
-msgid "Edit"
-msgstr "Editar"
-
 #: templates/misago/admin/attachmenttypes/list.html:71
 #: templates/misago/admin/attachmenttypes/list.html:71
 msgid "No attachment types are currently defined."
 msgid "No attachment types are currently defined."
 msgstr "No hay tipos de archivos adjuntos actualmente definidos."
 msgstr "No hay tipos de archivos adjuntos actualmente definidos."
@@ -984,12 +1183,12 @@ msgid "New ban"
 msgstr "Nueva prohibición"
 msgstr "Nueva prohibición"
 
 
 #: templates/misago/admin/bans/form.html:43
 #: templates/misago/admin/bans/form.html:43
-#: templates/misago/admin/users/ban.html:53
+#: templates/misago/admin/users/ban.html:57
 msgid "Ban settings"
 msgid "Ban settings"
 msgstr "Configuración de prohibición"
 msgstr "Configuración de prohibición"
 
 
 #: templates/misago/admin/bans/form.html:52
 #: templates/misago/admin/bans/form.html:52
-#: templates/misago/admin/users/ban.html:60
+#: templates/misago/admin/users/ban.html:64
 msgid "Messages"
 msgid "Messages"
 msgstr "Mensaje"
 msgstr "Mensaje"
 
 
@@ -997,8 +1196,8 @@ msgstr "Mensaje"
 msgid "Ban"
 msgid "Ban"
 msgstr "Ban"
 msgstr "Ban"
 
 
-#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:493
-#: users/forms/admin.py:546
+#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:488
+#: users/forms/admin.py:560
 msgid "Expires on"
 msgid "Expires on"
 msgstr "Expira el"
 msgstr "Expira el"
 
 
@@ -1011,10 +1210,6 @@ msgstr "%(check_type)s, sólo registro"
 msgid "Never"
 msgid "Never"
 msgstr "Nunca"
 msgstr "Nunca"
 
 
-#: templates/misago/admin/bans/list.html:61
-msgid "Remove"
-msgstr "Eliminar"
-
 #: templates/misago/admin/bans/list.html:73
 #: templates/misago/admin/bans/list.html:73
 msgid "No bans matching search criteria have been found"
 msgid "No bans matching search criteria have been found"
 msgstr ""
 msgstr ""
@@ -1029,10 +1224,6 @@ msgstr "No hay prohibiciones establecidas actualmente."
 msgid "Are you sure you want to remove this ban?"
 msgid "Are you sure you want to remove this ban?"
 msgstr "¿Seguro que desea eliminar este ticket?"
 msgstr "¿Seguro que desea eliminar este ticket?"
 
 
-#: templates/misago/admin/bans/list.html:95
-msgid "Search bans"
-msgstr "Prohibiciones de búsqueda"
-
 #: templates/misago/admin/base_thin.html:8
 #: templates/misago/admin/base_thin.html:8
 msgid "Misago Administration"
 msgid "Misago Administration"
 msgstr "Administración de Misago"
 msgstr "Administración de Misago"
@@ -1165,11 +1356,6 @@ msgstr "¿Estás seguro de que quieres abandonar los cambios?"
 msgid "New role"
 msgid "New role"
 msgstr "Nuevo rol"
 msgstr "Nuevo rol"
 
 
-#: templates/misago/admin/categoryroles/form.html:43
-#: templates/misago/admin/roles/form.html:43
-msgid "Basic settings"
-msgstr "Configuración básica"
-
 #: templates/misago/admin/categoryroles/list.html:16
 #: templates/misago/admin/categoryroles/list.html:16
 msgid "Category role"
 msgid "Category role"
 msgstr "Papel de categoría"
 msgstr "Papel de categoría"
@@ -1207,6 +1393,61 @@ msgstr ""
 msgid "Change settings"
 msgid "Change settings"
 msgstr "Cambiar ajustes"
 msgstr "Cambiar ajustes"
 
 
+#: templates/misago/admin/datadownloads/form.html:6
+#: templates/misago/admin/datadownloads/form.html:11
+#: templates/misago/admin/datadownloads/form.html:17
+msgid "Request new data downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:9
+msgid "Request new downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:17
+#: templates/misago/admin/users/list.html:17 users/forms/admin.py:696
+msgid "User"
+msgstr "Usuario"
+
+#: templates/misago/admin/datadownloads/list.html:18 threads/forms.py:56
+#: users/forms/admin.py:691
+msgid "Status"
+msgstr "Estado"
+
+#: templates/misago/admin/datadownloads/list.html:19
+msgid "Requested on"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:21 users/forms/admin.py:700
+msgid "Requested by"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:32
+#: templates/misago/admin/datadownloads/list.html:49
+#: templates/misago/admin/datadownloads/list.html:52
+#: templates/misago/admin/users/ban.html:35
+#: templates/misago/admin/users/edit.html:113
+#: templates/misago/admin/users/list.html:35
+#: templates/misago/userslists/active_posters.html:66
+msgid "Avatar"
+msgstr "Avatar"
+
+#: templates/misago/admin/datadownloads/list.html:73
+#: templates/misago/emails/data_download.html:11 users/apps.py:50
+msgid "Download data"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:84
+msgid "No data downloads matching search criteria have been found."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:86
+msgid "No data downloads exist at the moment."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:93
+msgid "Search data downloads"
+msgstr ""
+
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 msgid "Page not available"
 msgid "Page not available"
@@ -1363,44 +1604,73 @@ msgstr "Último"
 msgid "Administration Home"
 msgid "Administration Home"
 msgstr "Administración Inicio"
 msgstr "Administración Inicio"
 
 
-#: templates/misago/admin/index.html:33
+#: templates/misago/admin/index.html:22
+msgid "System checks"
+msgstr ""
+
+#: templates/misago/admin/index.html:26
+msgid "MISAGO_ADDRESS setting appears to be correct."
+msgstr ""
+
+#: templates/misago/admin/index.html:30
+msgid "The settings.py value for MISAGO_ADDRESS appears to be incorrect."
+msgstr ""
+
+#: templates/misago/admin/index.html:38
+#, python-format
+msgid ""
+"Your MISAGO_ADDRESS is set to %(configured_address)s while correct value "
+"appears to be %(correct_address)s."
+msgstr ""
+
+#: templates/misago/admin/index.html:42 templates/misago/admin/index.html:47
+msgid ""
+"Misago uses this setting to build correct links in e-mails sent to site "
+"users."
+msgstr ""
+
+#: templates/misago/admin/index.html:46
+msgid "The settings.py is missing MISAGO_ADDRESS value."
+msgstr ""
+
+#: templates/misago/admin/index.html:60
 msgid "Misago version"
 msgid "Misago version"
 msgstr "Versión de Misago"
 msgstr "Versión de Misago"
 
 
-#: templates/misago/admin/index.html:56
+#: templates/misago/admin/index.html:83
 msgid "Check version"
 msgid "Check version"
 msgstr "Comprobar Versión"
 msgstr "Comprobar Versión"
 
 
-#: templates/misago/admin/index.html:62
+#: templates/misago/admin/index.html:89
 msgid "This feature requires \"packaging\" python module."
 msgid "This feature requires \"packaging\" python module."
 msgstr "Esta característica requiere el módulo \"paquete\" de python."
 msgstr "Esta característica requiere el módulo \"paquete\" de python."
 
 
-#: templates/misago/admin/index.html:76
+#: templates/misago/admin/index.html:103
 msgid "DB Contents"
 msgid "DB Contents"
 msgstr "Contenido de BD"
 msgstr "Contenido de BD"
 
 
-#: templates/misago/admin/index.html:87
+#: templates/misago/admin/index.html:114
 #: templates/misago/admin/users/delete.html:36
 #: templates/misago/admin/users/delete.html:36
-#: templates/misago/admin/users/list.html:23
+#: templates/misago/admin/users/list.html:24
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: threads/migrations/0002_threads_settings.py:48
 #: threads/migrations/0002_threads_settings.py:48
-#: threads/migrations/0004_update_settings.py:48 users/apps.py:83
+#: threads/migrations/0004_update_settings.py:48 users/apps.py:91
 msgid "Posts"
 msgid "Posts"
 msgstr "Mensajes"
 msgstr "Mensajes"
 
 
-#: templates/misago/admin/index.html:91 templates/misago/navbar.html:40
+#: templates/misago/admin/index.html:118 templates/misago/navbar.html:40
 #: templates/misago/userslists/base.html:5
 #: templates/misago/userslists/base.html:5
-#: templates/misago/userslists/base.html:14 users/admin.py:70
+#: templates/misago/userslists/base.html:14 users/admin.py:80
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 msgid "Users"
 msgid "Users"
 msgstr "Usuarios"
 msgstr "Usuarios"
 
 
-#: templates/misago/admin/index.html:96
+#: templates/misago/admin/index.html:123
 msgid "Inactive users"
 msgid "Inactive users"
 msgstr "Usuarios inactivos"
 msgstr "Usuarios inactivos"
 
 
-#: templates/misago/admin/index.html:122
+#: templates/misago/admin/index.html:149
 msgid "Checking..."
 msgid "Checking..."
 msgstr "Comprobando..."
 msgstr "Comprobando..."
 
 
@@ -1428,7 +1698,7 @@ msgstr "Vuelve a intentarlo."
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Nombre de usuario o e-mail"
 msgstr "Nombre de usuario o e-mail"
 
 
-#: templates/misago/admin/login.html:62 users/forms/admin.py:60
+#: templates/misago/admin/login.html:62 users/forms/admin.py:62
 #: users/forms/auth.py:59
 #: users/forms/auth.py:59
 msgid "Password"
 msgid "Password"
 msgstr "Contraseña"
 msgstr "Contraseña"
@@ -1473,17 +1743,13 @@ msgid "Display and visibility"
 msgstr "Pantalla y visibilidad"
 msgstr "Pantalla y visibilidad"
 
 
 #: templates/misago/admin/ranks/list.html:16
 #: templates/misago/admin/ranks/list.html:16
-#: templates/misago/admin/users/list.html:21
+#: templates/misago/admin/users/list.html:22
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:106
 #: templates/misago/userslists/active_posters.html:106
-#: users/forms/admin.py:236
+#: users/forms/admin.py:238
 msgid "Rank"
 msgid "Rank"
 msgstr "Rango"
 msgstr "Rango"
 
 
-#: templates/misago/admin/ranks/list.html:17
-msgid "Title"
-msgstr "Título"
-
 #: templates/misago/admin/ranks/list.html:18
 #: templates/misago/admin/ranks/list.html:18
 msgid "Special"
 msgid "Special"
 msgstr "Especial"
 msgstr "Especial"
@@ -1525,7 +1791,7 @@ msgid "No user roles are currently defined."
 msgstr "No hay roles de usuario actualmente definidos."
 msgstr "No hay roles de usuario actualmente definidos."
 
 
 #: templates/misago/admin/users/ban.html:6
 #: templates/misago/admin/users/ban.html:6
-#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:72
+#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:73
 msgid "Ban users"
 msgid "Ban users"
 msgstr "Usuarios de prohibición"
 msgstr "Usuarios de prohibición"
 
 
@@ -1533,14 +1799,11 @@ msgstr "Usuarios de prohibición"
 msgid "Ban selected users:"
 msgid "Ban selected users:"
 msgstr "Prohibir usuarios seleccionados:"
 msgstr "Prohibir usuarios seleccionados:"
 
 
-#: templates/misago/admin/users/ban.html:35
-#: templates/misago/admin/users/edit.html:113
-#: templates/misago/admin/users/list.html:34
-#: templates/misago/userslists/active_posters.html:66
-msgid "Avatar"
-msgstr "Avatar"
+#: templates/misago/admin/users/ban.html:48
+msgid "IP not available"
+msgstr ""
 
 
-#: templates/misago/admin/users/ban.html:72
+#: templates/misago/admin/users/ban.html:76
 msgid "Set bans"
 msgid "Set bans"
 msgstr "Establecer prohibiciones"
 msgstr "Establecer prohibiciones"
 
 
@@ -1637,6 +1900,18 @@ msgstr ""
 msgid "No staff message is available."
 msgid "No staff message is available."
 msgstr "No hay mensaje de personal disponible."
 msgstr "No hay mensaje de personal disponible."
 
 
+#: templates/misago/admin/users/edit.html:220
+msgid "Agreement"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:221
+msgid "Accepted on"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:239
+msgid "This user didn't accept any agreements."
+msgstr ""
+
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:11
 #: templates/misago/admin/users/new.html:11
@@ -1644,52 +1919,56 @@ msgstr "No hay mensaje de personal disponible."
 msgid "New user"
 msgid "New user"
 msgstr "Nuevo usuario"
 msgstr "Nuevo usuario"
 
 
-#: templates/misago/admin/users/list.html:17
-msgid "User"
-msgstr "Usuario"
-
-#: templates/misago/admin/users/list.html:20
+#: templates/misago/admin/users/list.html:20 users/signals.py:30
 msgid "E-mail"
 msgid "E-mail"
 msgstr "E-mail"
 msgstr "E-mail"
 
 
-#: templates/misago/admin/users/list.html:22
+#: templates/misago/admin/users/list.html:21
+msgid "IP Address"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:23
 msgid "Joined"
 msgid "Joined"
 msgstr "Unido"
 msgstr "Unido"
 
 
-#: templates/misago/admin/users/list.html:39
+#: templates/misago/admin/users/list.html:40
 msgid "Is deleting their account"
 msgid "Is deleting their account"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:43
+#: templates/misago/admin/users/list.html:44
 msgid "Is disabled by administrator"
 msgid "Is disabled by administrator"
 msgstr "Está deshabilitado por el administrador"
 msgstr "Está deshabilitado por el administrador"
 
 
-#: templates/misago/admin/users/list.html:54
+#: templates/misago/admin/users/list.html:55
 msgid "Requires activation by administrator"
 msgid "Requires activation by administrator"
 msgstr "Requiere activación por parte del administrador"
 msgstr "Requiere activación por parte del administrador"
 
 
-#: templates/misago/admin/users/list.html:56
+#: templates/misago/admin/users/list.html:57
 msgid "Has to activate account"
 msgid "Has to activate account"
 msgstr "Tiene que activar la cuenta"
 msgstr "Tiene que activar la cuenta"
 
 
-#: templates/misago/admin/users/list.html:63
+#: templates/misago/admin/users/list.html:64
 msgid "Super administrator"
 msgid "Super administrator"
 msgstr "Súper administrador"
 msgstr "Súper administrador"
 
 
-#: templates/misago/admin/users/list.html:65
+#: templates/misago/admin/users/list.html:66
 msgid "Administrator"
 msgid "Administrator"
 msgstr "Administrador"
 msgstr "Administrador"
 
 
-#: templates/misago/admin/users/list.html:90
+#: templates/misago/admin/users/list.html:78
+msgid "IP removed"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:98
 msgid "Edit user"
 msgid "Edit user"
 msgstr "Editar usuario"
 msgstr "Editar usuario"
 
 
-#: templates/misago/admin/users/list.html:99
+#: templates/misago/admin/users/list.html:107
 msgid "No users matching search criteria have been found."
 msgid "No users matching search criteria have been found."
 msgstr ""
 msgstr ""
 "No se han encontrado usuarios que coincidan con los criterios de búsqueda."
 "No se han encontrado usuarios que coincidan con los criterios de búsqueda."
 
 
-#: templates/misago/admin/users/list.html:105
+#: templates/misago/admin/users/list.html:113
 msgid "Search users"
 msgid "Search users"
 msgstr "Búqueda de Usuarios"
 msgstr "Búqueda de Usuarios"
 
 
@@ -1905,6 +2184,30 @@ msgstr "Para cambiar la contraseña haz click aquí:"
 msgid "Set new password"
 msgid "Set new password"
 msgstr "Establece la nueva contraseña"
 msgstr "Establece la nueva contraseña"
 
 
+#: templates/misago/emails/data_download.html:6
+#: templates/misago/emails/data_download.txt:6
+#, python-format
+msgid ""
+"%(user)s, you are receiving this message because your data is ready for "
+"download."
+msgstr ""
+
+#: templates/misago/emails/data_download.html:14
+#: templates/misago/emails/data_download.txt:15
+#, python-format
+msgid ""
+"This link will remain active for %(expires_in)s hour from the time this "
+"message has been sent."
+msgid_plural ""
+"This link will remain active for %(expires_in)s hours from the time this "
+"message has been sent."
+msgstr[0] ""
+msgstr[1] ""
+
+#: templates/misago/emails/data_download.txt:10
+msgid "To download your data, click the following link:"
+msgstr ""
+
 #: templates/misago/emails/privatethread/added.html:9
 #: templates/misago/emails/privatethread/added.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
@@ -2002,11 +2305,9 @@ msgstr ""
 #: templates/misago/emails/thread/reply.html:9
 #: templates/misago/emails/thread/reply.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread %(thread)s that you are subscribed to."
 "the thread %(thread)s that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s, estás recibiendo este mensaje porque %(poster)s ha respondido a un"
-" hilo %(thread)s al que estás suscrito."
 
 
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.txt:10
 #: templates/misago/emails/thread/reply.txt:10
@@ -2020,11 +2321,9 @@ msgstr "Ir a la respuesta"
 #: templates/misago/emails/thread/reply.txt:6
 #: templates/misago/emails/thread/reply.txt:6
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread \"%(thread)s\" that you are subscribed to."
 "the thread \"%(thread)s\" that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s, estás recibiendo este mensaje porque %(poster)s ha respondido a un"
-" hilo \"%(thread)s\" al que estás suscrito."
 
 
 #: templates/misago/errorpages/403.html:40
 #: templates/misago/errorpages/403.html:40
 msgid "This page is not available."
 msgid "This page is not available."
@@ -2269,7 +2568,7 @@ msgstr "Ver resultados"
 
 
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:8
 #: templates/misago/profile/ban_details.html:8
-#: templates/misago/profile/ban_details.html:15 users/apps.py:120
+#: templates/misago/profile/ban_details.html:15 users/apps.py:128
 msgid "Ban details"
 msgid "Ban details"
 msgstr "Detalles del baneo"
 msgstr "Detalles del baneo"
 
 
@@ -2316,7 +2615,7 @@ msgstr[1] "Empezó %(threads)s hilos."
 
 
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:8
 #: templates/misago/profile/details.html:8
-#: templates/misago/profile/details.html:18 users/apps.py:107
+#: templates/misago/profile/details.html:18 users/apps.py:115
 msgid "Details"
 msgid "Details"
 msgstr "Detalles"
 msgstr "Detalles"
 
 
@@ -2346,7 +2645,7 @@ msgstr ""
 "mensaje."
 "mensaje."
 
 
 #: templates/misago/profile/followers.html:5
 #: templates/misago/profile/followers.html:5
-#: templates/misago/profile/followers.html:8 users/apps.py:95
+#: templates/misago/profile/followers.html:8 users/apps.py:103
 msgid "Followers"
 msgid "Followers"
 msgstr "Seguidores"
 msgstr "Seguidores"
 
 
@@ -2374,7 +2673,7 @@ msgid "%(username)s has no followers."
 msgstr "%(username)s no tiene seguidores."
 msgstr "%(username)s no tiene seguidores."
 
 
 #: templates/misago/profile/follows.html:5
 #: templates/misago/profile/follows.html:5
-#: templates/misago/profile/follows.html:8 users/apps.py:101
+#: templates/misago/profile/follows.html:8 users/apps.py:109
 msgid "Follows"
 msgid "Follows"
 msgstr "Seguidos"
 msgstr "Seguidos"
 
 
@@ -2461,7 +2760,7 @@ msgid "%(username)s started no threads."
 msgstr "%(username)s no ha iniciado ningún hilo."
 msgstr "%(username)s no ha iniciado ningún hilo."
 
 
 #: templates/misago/profile/username_history.html:5
 #: templates/misago/profile/username_history.html:5
-#: templates/misago/profile/username_history.html:8 users/apps.py:113
+#: templates/misago/profile/username_history.html:8 users/apps.py:121
 msgid "Username history"
 msgid "Username history"
 msgstr "Historial de nombres de usuario"
 msgstr "Historial de nombres de usuario"
 
 
@@ -2488,6 +2787,20 @@ msgstr "Tu nombre de usuario nunca fue cambiado."
 msgid "%(username)s's username was never changed."
 msgid "%(username)s's username was never changed."
 msgstr "%(username)s no ha cambiado nunca su nombre de usuario."
 msgstr "%(username)s no ha cambiado nunca su nombre de usuario."
 
 
+#: templates/misago/required_agreement.html:9
+#, python-format
+msgid "Please review the updated %(agreement)s:"
+msgstr ""
+
+#: templates/misago/required_agreement.html:19
+msgid "here"
+msgstr ""
+
+#: templates/misago/required_agreement.html:21
+#, python-format
+msgid "Please review the updated %(agreement)s available %(link)s."
+msgstr ""
+
 #: templates/misago/search.html:5 templates/misago/search.html:8
 #: templates/misago/search.html:5 templates/misago/search.html:8
 msgid "Search site"
 msgid "Search site"
 msgstr "Buscar sitio"
 msgstr "Buscar sitio"
@@ -2604,10 +2917,6 @@ msgstr "Oculto por%(hidden_by)s en %(hidden_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgstr "Por %(event_by)s en %(event_on)s."
 msgstr "Por %(event_by)s en %(event_on)s."
 
 
-#: templates/misago/thread/posts/event/info.html:34
-msgid "IP recorded"
-msgstr "IP guardada"
-
 #: templates/misago/thread/posts/post/attachments.html:33
 #: templates/misago/thread/posts/post/attachments.html:33
 #, python-format
 #, python-format
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
@@ -2892,11 +3201,11 @@ msgstr "Adjuntos"
 msgid "Attachment types"
 msgid "Attachment types"
 msgstr "tipos de archivos adjuntos"
 msgstr "tipos de archivos adjuntos"
 
 
-#: threads/api/attachments.py:19
+#: threads/api/attachments.py:20
 msgid "You don't have permission to upload new files."
 msgid "You don't have permission to upload new files."
 msgstr "No tienes permiso para subir nuevos archivos."
 msgstr "No tienes permiso para subir nuevos archivos."
 
 
-#: threads/api/attachments.py:29
+#: threads/api/attachments.py:30
 msgid "No file has been uploaded."
 msgid "No file has been uploaded."
 msgstr "No se ha subido ningún archivo"
 msgstr "No se ha subido ningún archivo"
 
 
@@ -2904,11 +3213,11 @@ msgstr "No se ha subido ningún archivo"
 msgid "Uploaded image was corrupted or invalid."
 msgid "Uploaded image was corrupted or invalid."
 msgstr "La imagen cargada estaba dañada o no es válida."
 msgstr "La imagen cargada estaba dañada o no es válida."
 
 
-#: threads/api/attachments.py:81
+#: threads/api/attachments.py:83
 msgid "You can't upload files of this type."
 msgid "You can't upload files of this type."
 msgstr "No puedes subir archivos de este tipo."
 msgstr "No puedes subir archivos de este tipo."
 
 
-#: threads/api/attachments.py:86
+#: threads/api/attachments.py:88
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
@@ -2916,7 +3225,7 @@ msgstr ""
 "No puede cargar archivos mayores que %(limit)s (su archivo tiene "
 "No puede cargar archivos mayores que %(limit)s (su archivo tiene "
 "%(upload)s)."
 "%(upload)s)."
 
 
-#: threads/api/attachments.py:96
+#: threads/api/attachments.py:98
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files of this type larger than %(limit)s (your file has "
 "You can't upload files of this type larger than %(limit)s (your file has "
@@ -2925,7 +3234,7 @@ msgstr ""
 "No puede cargar archivos de este tipo mayores que %(limit)s (su archivo "
 "No puede cargar archivos de este tipo mayores que %(limit)s (su archivo "
 "tiene %(upload)s)."
 "tiene %(upload)s)."
 
 
-#: threads/api/postendpoints/edits.py:89
+#: threads/api/postendpoints/edits.py:88
 msgid "Edits record is unavailable for this post."
 msgid "Edits record is unavailable for this post."
 msgstr "El registro de ediciones no está disponible para esta publicación."
 msgstr "El registro de ediciones no está disponible para esta publicación."
 
 
@@ -2941,12 +3250,12 @@ msgstr "No puedes mover publicaciones en este hilo."
 msgid "You can't like posts in this category."
 msgid "You can't like posts in this category."
 msgstr "No te pueden gustar las publicaciones en esta categoría."
 msgstr "No te pueden gustar las publicaciones en esta categoría."
 
 
-#: threads/api/postendpoints/patch_post.py:108
+#: threads/api/postendpoints/patch_post.py:107
 #: threads/api/threadendpoints/patch.py:130
 #: threads/api/threadendpoints/patch.py:130
 msgid "Content approval can't be reversed."
 msgid "Content approval can't be reversed."
 msgstr "La aprobación del contenido no se puede revertir."
 msgstr "La aprobación del contenido no se puede revertir."
 
 
-#: threads/api/postendpoints/patch_post.py:186
+#: threads/api/postendpoints/patch_post.py:185
 msgid "One or more posts to update could not be found."
 msgid "One or more posts to update could not be found."
 msgstr "No se encontraron una o más publicaciones para actualizar."
 msgstr "No se encontraron una o más publicaciones para actualizar."
 
 
@@ -2959,7 +3268,7 @@ msgstr "No puedes dividir publicaciones de este hilo."
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgstr "No tienes permiso para eliminar el archivo adjunto \"%(attachment)s\"."
 msgstr "No tienes permiso para eliminar el archivo adjunto \"%(attachment)s\"."
 
 
-#: threads/api/postingendpoint/attachments.py:128
+#: threads/api/postingendpoint/attachments.py:127
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't attach more than %(limit_value)s file to single post (added "
 "You can't attach more than %(limit_value)s file to single post (added "
@@ -3041,11 +3350,11 @@ msgstr[1] ""
 msgid "One or more users could not be found: %(usernames)s"
 msgid "One or more users could not be found: %(usernames)s"
 msgstr "Uno o más usuarios no pudieron ser encontrados: %(usernames)s"
 msgstr "Uno o más usuarios no pudieron ser encontrados: %(usernames)s"
 
 
-#: threads/api/postingendpoint/reply.py:81 threads/validators.py:80
+#: threads/api/postingendpoint/reply.py:83 threads/validators.py:80
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Debes introducir un mensaje."
 msgstr "Debes introducir un mensaje."
 
 
-#: threads/api/postingendpoint/reply.py:103 threads/validators.py:41
+#: threads/api/postingendpoint/reply.py:105 threads/validators.py:41
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Debes darle un título al hilo."
 msgstr "Debes darle un título al hilo."
 
 
@@ -3128,7 +3437,7 @@ msgstr "Este usuario ya es propietario del hilo."
 msgid "One or more threads to update could not be found."
 msgid "One or more threads to update could not be found."
 msgstr "Uno o más hilos para actualizar no se pudieron encontrar."
 msgstr "Uno o más hilos para actualizar no se pudieron encontrar."
 
 
-#: threads/api/threadpoll.py:53
+#: threads/api/threadpoll.py:54
 msgid "There's already a poll in this thread."
 msgid "There's already a poll in this thread."
 msgstr "Ya hay una encuesta en este hilo."
 msgstr "Ya hay una encuesta en este hilo."
 
 
@@ -3164,7 +3473,7 @@ msgstr "Nombre de archivo contiene"
 msgid "File type"
 msgid "File type"
 msgstr "Tipo de archivo"
 msgstr "Tipo de archivo"
 
 
-#: threads/forms.py:24 users/forms/admin.py:595
+#: threads/forms.py:24 users/forms/admin.py:609
 msgid "State"
 msgid "State"
 msgstr "Estado"
 msgstr "Estado"
 
 
@@ -3188,10 +3497,6 @@ msgstr "Extensiones de archivo"
 msgid "Maximum allowed uploaded file size"
 msgid "Maximum allowed uploaded file size"
 msgstr "Tamaño de archivo máximo permitido"
 msgstr "Tamaño de archivo máximo permitido"
 
 
-#: threads/forms.py:56
-msgid "Status"
-msgstr "Estado"
-
 #: threads/forms.py:57
 #: threads/forms.py:57
 msgid "Limit uploads to"
 msgid "Limit uploads to"
 msgstr "Limitar las cargas a"
 msgstr "Limitar las cargas a"
@@ -3844,7 +4149,7 @@ msgstr "Permite publicar con más frecuencia que la protección contra flood."
 msgid "Can see threads"
 msgid "Can see threads"
 msgstr "Puede ver hilos"
 msgstr "Puede ver hilos"
 
 
-#: threads/permissions/threads.py:110 users/forms/admin.py:166
+#: threads/permissions/threads.py:110 users/forms/admin.py:168
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0006_update_settings.py:130
 #: users/migrations/0006_update_settings.py:130
 msgid "Started threads"
 msgid "Started threads"
@@ -4764,6 +5069,14 @@ msgstr "Una o más de las elecciones de encuesta no fueron válidas."
 msgid "You have to make a choice."
 msgid "You have to make a choice."
 msgstr "Tienes que hacer una elección."
 msgstr "Tienes que hacer una elección."
 
 
+#: threads/signals.py:177
+msgid "Question"
+msgstr ""
+
+#: threads/signals.py:178
+msgid "Choices"
+msgstr ""
+
 #: threads/templatetags/misago_poststags.py:20
 #: threads/templatetags/misago_poststags.py:20
 #, python-format
 #, python-format
 msgid "%(user)s likes this."
 msgid "%(user)s likes this."
@@ -4918,23 +5231,13 @@ msgstr "No tienes permiso para ver listas de contenido no aprobadas."
 msgid "Requested attachment could not be found."
 msgid "Requested attachment could not be found."
 msgstr "No se pudo encontrar el archivo adjunto solicitado."
 msgstr "No se pudo encontrar el archivo adjunto solicitado."
 
 
-#: threads/views/admin/attachments.py:24 users/views/admin/bans.py:24
-#: users/views/admin/users.py:55
-msgid "From newest"
-msgstr "Desde el más nuevo"
-
-#: threads/views/admin/attachments.py:25 users/views/admin/bans.py:25
-#: users/views/admin/users.py:56
-msgid "From oldest"
-msgstr "Desde el más antiguo"
-
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
-#: users/views/admin/users.py:57
+#: users/views/admin/users.py:58
 msgid "A to z"
 msgid "A to z"
 msgstr "De la A a la Z"
 msgstr "De la A a la Z"
 
 
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
-#: users/views/admin/users.py:58
+#: users/views/admin/users.py:59
 msgid "Z to a"
 msgid "Z to a"
 msgstr "Z a a"
 msgstr "Z a a"
 
 
@@ -5007,33 +5310,37 @@ msgstr ""
 "Necesita permiso para aprobar el contenido para poder acceder a la primera "
 "Necesita permiso para aprobar el contenido para poder acceder a la primera "
 "publicación no aprobada."
 "publicación no aprobada."
 
 
-#: users/admin.py:79
+#: users/admin.py:89
 msgid "User Accounts"
 msgid "User Accounts"
 msgstr "Cuentas de usuario"
 msgstr "Cuentas de usuario"
 
 
-#: users/admin.py:87
+#: users/admin.py:97
 msgid "Ranks"
 msgid "Ranks"
 msgstr "Rangos"
 msgstr "Rangos"
 
 
-#: users/admin.py:96
+#: users/admin.py:106
 msgid "Bans"
 msgid "Bans"
 msgstr "Prohibiciones"
 msgstr "Prohibiciones"
 
 
+#: users/admin.py:115
+msgid "Data downloads"
+msgstr ""
+
 #: users/api/auth.py:100
 #: users/api/auth.py:100
 #, python-format
 #, python-format
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgstr "Activa la cuenta %(user)s de %(forum_name)s"
 msgstr "Activa la cuenta %(user)s de %(forum_name)s"
 
 
-#: users/api/auth.py:139
+#: users/api/auth.py:138
 #, python-format
 #, python-format
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgstr "Cambiar la contraseña de %(user)s en %(forum_name)s"
 msgstr "Cambiar la contraseña de %(user)s en %(forum_name)s"
 
 
-#: users/api/auth.py:180
+#: users/api/auth.py:178
 msgid "Form link is invalid. Please try again."
 msgid "Form link is invalid. Please try again."
 msgstr "El enlace del formulario no es válido. Por favor inténtalo de nuevo"
 msgstr "El enlace del formulario no es válido. Por favor inténtalo de nuevo"
 
 
-#: users/api/auth.py:181
+#: users/api/auth.py:179
 msgid "Your link has expired. Please request new one."
 msgid "Your link has expired. Please request new one."
 msgstr "Tu enlace ha expirado Por favor, solicita uno nuevo."
 msgstr "Tu enlace ha expirado Por favor, solicita uno nuevo."
 
 
@@ -5105,17 +5412,17 @@ msgstr ""
 msgid "Confirm password change on %(forum_name)s forums"
 msgid "Confirm password change on %(forum_name)s forums"
 msgstr "Confirmar el cambio de contraseña de %(forum_name)s"
 msgstr "Confirmar el cambio de contraseña de %(forum_name)s"
 
 
-#: users/api/userendpoints/changepassword.py:31
+#: users/api/userendpoints/changepassword.py:32
 msgid "Password change confirmation link was sent to your address."
 msgid "Password change confirmation link was sent to your address."
 msgstr ""
 msgstr ""
 "El enlace de confirmación de cambio de contraseña fue enviado a tu "
 "El enlace de confirmación de cambio de contraseña fue enviado a tu "
 "dirección."
 "dirección."
 
 
-#: users/api/userendpoints/create.py:22
+#: users/api/userendpoints/create.py:25
 msgid "New users registrations are currently closed."
 msgid "New users registrations are currently closed."
 msgstr "Los nuevos registros de usuarios están actualmente cerrados."
 msgstr "Los nuevos registros de usuarios están actualmente cerrados."
 
 
-#: users/api/userendpoints/create.py:53 users/social/pipeline.py:205
+#: users/api/userendpoints/create.py:61 users/social/pipeline.py:215
 msgid "Please try resubmitting the form."
 msgid "Please try resubmitting the form."
 msgstr "Intenta volver a enviar el formulario."
 msgstr "Intenta volver a enviar el formulario."
 
 
@@ -5140,39 +5447,55 @@ msgstr "Error al cambiar el nombre de usuario. Por favor inténtalo de nuevo"
 msgid "You don't have permission to see other users name history."
 msgid "You don't have permission to see other users name history."
 msgstr "No tienes permiso para ver el historial de nombres de otros usuarios."
 msgstr "No tienes permiso para ver el historial de nombres de otros usuarios."
 
 
-#: users/api/users.py:54
+#: users/api/users.py:57
 msgid "You have to sign in to perform this action."
 msgid "You have to sign in to perform this action."
 msgstr "Debes iniciar sesión para realizar esta acción."
 msgstr "Debes iniciar sesión para realizar esta acción."
 
 
-#: users/api/users.py:100
+#: users/api/users.py:103
 msgid "You can't change other users avatars."
 msgid "You can't change other users avatars."
 msgstr "No puedes cambiar avatares de otros usuarios."
 msgstr "No puedes cambiar avatares de otros usuarios."
 
 
-#: users/api/users.py:107
+#: users/api/users.py:110
 msgid "You can't change other users options."
 msgid "You can't change other users options."
 msgstr "No puede cambiar opciones de otros usuarios."
 msgstr "No puede cambiar opciones de otros usuarios."
 
 
-#: users/api/users.py:112
+#: users/api/users.py:115
 msgid "Your forum options have been changed."
 msgid "Your forum options have been changed."
 msgstr "Tus opciones de foro han sido cambiadas."
 msgstr "Tus opciones de foro han sido cambiadas."
 
 
-#: users/api/users.py:119
+#: users/api/users.py:122
 msgid "You can't change other users names."
 msgid "You can't change other users names."
 msgstr "No puedes cambiar otros nombres de usuarios."
 msgstr "No puedes cambiar otros nombres de usuarios."
 
 
-#: users/api/users.py:126
+#: users/api/users.py:129
 msgid "You can't change other users signatures."
 msgid "You can't change other users signatures."
 msgstr "No puedes cambiar las firmas de otros usuarios."
 msgstr "No puedes cambiar las firmas de otros usuarios."
 
 
-#: users/api/users.py:133
+#: users/api/users.py:136
 msgid "You can't change other users passwords."
 msgid "You can't change other users passwords."
 msgstr "No puedes cambiar las contraseñas de otros usuarios."
 msgstr "No puedes cambiar las contraseñas de otros usuarios."
 
 
-#: users/api/users.py:140
+#: users/api/users.py:143
 msgid "You can't change other users e-mail addresses."
 msgid "You can't change other users e-mail addresses."
 msgstr ""
 msgstr ""
 "No puedes cambiar las direcciones de correo electrónico de otros usuarios."
 "No puedes cambiar las direcciones de correo electrónico de otros usuarios."
 
 
+#: users/api/users.py:225
+msgid "You can't request data downloads for other users."
+msgstr ""
+
+#: users/api/users.py:228
+msgid "You can't download your data."
+msgstr ""
+
+#: users/api/users.py:232
+msgid "You can't have more than one data download request at single time."
+msgstr ""
+
+#: users/api/users.py:278
+msgid "You can't see other users data downloads."
+msgstr ""
+
 #: users/apps.py:30
 #: users/apps.py:30
 msgid "Edit details"
 msgid "Edit details"
 msgstr "Editar detalles"
 msgstr "Editar detalles"
@@ -5185,11 +5508,11 @@ msgstr "Cambiar nombre de usuario"
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "Cambiar e-mail o contraseña"
 msgstr "Cambiar e-mail o contraseña"
 
 
-#: users/apps.py:50
+#: users/apps.py:58
 msgid "Delete account"
 msgid "Delete account"
 msgstr ""
 msgstr ""
 
 
-#: users/apps.py:59
+#: users/apps.py:67
 msgid "Active poster"
 msgid "Active poster"
 msgstr ""
 msgstr ""
 
 
@@ -5247,27 +5570,27 @@ msgstr "Editar permisos y grupos"
 msgid "Edit the user from Misago admin panel"
 msgid "Edit the user from Misago admin panel"
 msgstr "Edita al usuario desde el panel de administración de Misago"
 msgstr "Edita al usuario desde el panel de administración de Misago"
 
 
-#: users/forms/admin.py:21 users/models/ban.py:74
+#: users/forms/admin.py:23 users/models/ban.py:74 users/signals.py:29
 msgid "Username"
 msgid "Username"
 msgstr "Nombre de usuario"
 msgstr "Nombre de usuario"
 
 
-#: users/forms/admin.py:22
+#: users/forms/admin.py:24
 msgid "Custom title"
 msgid "Custom title"
 msgstr "Título personalizado"
 msgstr "Título personalizado"
 
 
-#: users/forms/admin.py:23 users/models/ban.py:75
+#: users/forms/admin.py:25 users/models/ban.py:75
 msgid "E-mail address"
 msgid "E-mail address"
 msgstr "Dirección de correo electrónico"
 msgstr "Dirección de correo electrónico"
 
 
-#: users/forms/admin.py:52
+#: users/forms/admin.py:54
 msgid "All registered members must have \"Member\" role."
 msgid "All registered members must have \"Member\" role."
 msgstr "Todos los miembros registrados deben tener el rol \"Miembro \"."
 msgstr "Todos los miembros registrados deben tener el rol \"Miembro \"."
 
 
-#: users/forms/admin.py:71
+#: users/forms/admin.py:73
 msgid "Is administrator"
 msgid "Is administrator"
 msgstr "Es administrador"
 msgstr "Es administrador"
 
 
-#: users/forms/admin.py:73
+#: users/forms/admin.py:75
 msgid ""
 msgid ""
 "Designates whether the user can log into admin sites. If Django admin site "
 "Designates whether the user can log into admin sites. If Django admin site "
 "is enabled, this user will need additional permissions assigned within it to"
 "is enabled, this user will need additional permissions assigned within it to"
@@ -5278,11 +5601,11 @@ msgstr ""
 "necesitará permisos adicionales asignados para administrar los módulos de "
 "necesitará permisos adicionales asignados para administrar los módulos de "
 "Django."
 "Django."
 
 
-#: users/forms/admin.py:79
+#: users/forms/admin.py:81
 msgid "Is superuser"
 msgid "Is superuser"
 msgstr "Es superusuario"
 msgstr "Es superusuario"
 
 
-#: users/forms/admin.py:81
+#: users/forms/admin.py:83
 msgid ""
 msgid ""
 "Only administrators can access admin sites. In addition to admin site "
 "Only administrators can access admin sites. In addition to admin site "
 "access, superadmins can also change other members admin levels."
 "access, superadmins can also change other members admin levels."
@@ -5291,11 +5614,11 @@ msgstr ""
 "Además del acceso del sitio de administración, las superadminas también "
 "Además del acceso del sitio de administración, las superadminas también "
 "pueden cambiar los niveles de administración de otros miembros."
 "pueden cambiar los niveles de administración de otros miembros."
 
 
-#: users/forms/admin.py:86
+#: users/forms/admin.py:88
 msgid "Is active"
 msgid "Is active"
 msgstr "Está activo"
 msgstr "Está activo"
 
 
-#: users/forms/admin.py:88
+#: users/forms/admin.py:90
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Turning this off "
 "Designates whether this user should be treated as active. Turning this off "
 "is non-destructible way to remove user accounts."
 "is non-destructible way to remove user accounts."
@@ -5303,11 +5626,11 @@ msgstr ""
 "Designa si este usuario debe tratarse como activo. Desactivar esto es una "
 "Designa si este usuario debe tratarse como activo. Desactivar esto es una "
 "forma no destructiva de eliminar cuentas de usuario."
 "forma no destructiva de eliminar cuentas de usuario."
 
 
-#: users/forms/admin.py:92 users/forms/admin.py:123 users/forms/admin.py:151
+#: users/forms/admin.py:94 users/forms/admin.py:125 users/forms/admin.py:153
 msgid "Staff message"
 msgid "Staff message"
 msgstr "Mensaje del staff"
 msgstr "Mensaje del staff"
 
 
-#: users/forms/admin.py:94
+#: users/forms/admin.py:96
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user's account has "
 "Optional message for forum team members explaining why user's account has "
 "been disabled."
 "been disabled."
@@ -5315,15 +5638,15 @@ msgstr ""
 "Mensaje opcional para los miembros del equipo del foro que explica por qué "
 "Mensaje opcional para los miembros del equipo del foro que explica por qué "
 "se ha inhabilitado la cuenta del usuario."
 "se ha inhabilitado la cuenta del usuario."
 
 
-#: users/forms/admin.py:99
+#: users/forms/admin.py:101
 msgid "Change password to"
 msgid "Change password to"
 msgstr "Cambiar la contraseña a"
 msgstr "Cambiar la contraseña a"
 
 
-#: users/forms/admin.py:106
+#: users/forms/admin.py:108
 msgid "Lock avatar"
 msgid "Lock avatar"
 msgstr "Bloquear avatar"
 msgstr "Bloquear avatar"
 
 
-#: users/forms/admin.py:108
+#: users/forms/admin.py:110
 msgid ""
 msgid ""
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "reset his/her avatar to procedurally generated one."
 "reset his/her avatar to procedurally generated one."
@@ -5331,12 +5654,12 @@ msgstr ""
 "Establecer esto evitará que el usuario cambie su avatar, y restablecerá su "
 "Establecer esto evitará que el usuario cambie su avatar, y restablecerá su "
 "avatar a uno generado por procedimiento."
 "avatar a uno generado por procedimiento."
 
 
-#: users/forms/admin.py:114 users/forms/admin.py:145 users/forms/admin.py:473
-#: users/forms/admin.py:526
+#: users/forms/admin.py:116 users/forms/admin.py:147 users/forms/admin.py:468
+#: users/forms/admin.py:540
 msgid "User message"
 msgid "User message"
 msgstr "Mensaje de usuario"
 msgstr "Mensaje de usuario"
 
 
-#: users/forms/admin.py:116
+#: users/forms/admin.py:118
 msgid ""
 msgid ""
 "Optional message for user explaining why he/she is banned form changing "
 "Optional message for user explaining why he/she is banned form changing "
 "avatar."
 "avatar."
@@ -5344,7 +5667,7 @@ msgstr ""
 "Mensaje opcional para el usuario que explica por qué está prohibido cambiar "
 "Mensaje opcional para el usuario que explica por qué está prohibido cambiar "
 "el avatar."
 "el avatar."
 
 
-#: users/forms/admin.py:125
+#: users/forms/admin.py:127
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user is banned form "
 "Optional message for forum team members explaining why user is banned form "
 "changing avatar."
 "changing avatar."
@@ -5352,52 +5675,52 @@ msgstr ""
 "Mensaje opcional para los miembros del equipo del foro explicando por qué el"
 "Mensaje opcional para los miembros del equipo del foro explicando por qué el"
 " usuario está prohibido para cambiar el avatar."
 " usuario está prohibido para cambiar el avatar."
 
 
-#: users/forms/admin.py:133
+#: users/forms/admin.py:135
 msgid "Signature contents"
 msgid "Signature contents"
 msgstr "Contenido de la firma"
 msgstr "Contenido de la firma"
 
 
-#: users/forms/admin.py:138
+#: users/forms/admin.py:140
 msgid "Lock signature"
 msgid "Lock signature"
 msgstr "Bloquear firma"
 msgstr "Bloquear firma"
 
 
-#: users/forms/admin.py:140
+#: users/forms/admin.py:142
 msgid ""
 msgid ""
 "Setting this to yes will stop user from making changes to his/her signature."
 "Setting this to yes will stop user from making changes to his/her signature."
 msgstr "Establecer esto evitará que el usuario realice cambios en su firma."
 msgstr "Establecer esto evitará que el usuario realice cambios en su firma."
 
 
-#: users/forms/admin.py:146
+#: users/forms/admin.py:148
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgstr ""
 msgstr ""
 "Mensaje opcional para el usuario explicando por qué su firma de está "
 "Mensaje opcional para el usuario explicando por qué su firma de está "
 "bloqueada."
 "bloqueada."
 
 
-#: users/forms/admin.py:152
+#: users/forms/admin.py:154
 msgid ""
 msgid ""
 "Optional message to team members explaining why user signature is locked."
 "Optional message to team members explaining why user signature is locked."
 msgstr ""
 msgstr ""
 "Mensaje opcional para los miembros del equipo explicando por qué la firma "
 "Mensaje opcional para los miembros del equipo explicando por qué la firma "
 "del usuario está bloqueada."
 "del usuario está bloqueada."
 
 
-#: users/forms/admin.py:157
+#: users/forms/admin.py:159
 msgid "Hides presence"
 msgid "Hides presence"
 msgstr "Oculta la presencia"
 msgstr "Oculta la presencia"
 
 
-#: users/forms/admin.py:160
+#: users/forms/admin.py:162
 msgid "Who can add user to private threads"
 msgid "Who can add user to private threads"
 msgstr "¿Quién puede agregar usuarios a hilos privados?"
 msgstr "¿Quién puede agregar usuarios a hilos privados?"
 
 
-#: users/forms/admin.py:169
+#: users/forms/admin.py:171
 msgid "Replid threads"
 msgid "Replid threads"
 msgstr "Hilos repetidos"
 msgstr "Hilos repetidos"
 
 
-#: users/forms/admin.py:219 users/serializers/moderation.py:42
+#: users/forms/admin.py:221 users/serializers/moderation.py:42
 #, python-format
 #, python-format
 msgid "Signature can't be longer than %(limit)s character."
 msgid "Signature can't be longer than %(limit)s character."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgstr[0] "La firma no puede ser más larga que el %(limit)s caracter."
 msgstr[0] "La firma no puede ser más larga que el %(limit)s caracter."
 msgstr[1] "La firma no puede ser más larga que el %(limit)s caracteres."
 msgstr[1] "La firma no puede ser más larga que el %(limit)s caracteres."
 
 
-#: users/forms/admin.py:238
+#: users/forms/admin.py:240
 msgid ""
 msgid ""
 "Ranks are used to group and distinguish users. They are also used to add "
 "Ranks are used to group and distinguish users. They are also used to add "
 "permissions to groups of users."
 "permissions to groups of users."
@@ -5405,61 +5728,61 @@ msgstr ""
 "Los rangos se usan para agrupar y distinguir usuarios. También se usan para "
 "Los rangos se usan para agrupar y distinguir usuarios. También se usan para "
 "agregar permisos a grupos de usuarios."
 "agregar permisos a grupos de usuarios."
 
 
-#: users/forms/admin.py:248
+#: users/forms/admin.py:250
 msgid "Roles"
 msgid "Roles"
 msgstr "Roles"
 msgstr "Roles"
 
 
-#: users/forms/admin.py:249
+#: users/forms/admin.py:251
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgstr ""
 msgstr ""
 "Roles individuales de este usuario Todos los usuarios deben tener el rol "
 "Roles individuales de este usuario Todos los usuarios deben tener el rol "
 "\"miembro\"."
 "\"miembro\"."
 
 
-#: users/forms/admin.py:307
+#: users/forms/admin.py:309
 msgid "Username starts with"
 msgid "Username starts with"
 msgstr "El nombre de usuario comienza con"
 msgstr "El nombre de usuario comienza con"
 
 
-#: users/forms/admin.py:308
+#: users/forms/admin.py:310
 msgid "E-mail starts with"
 msgid "E-mail starts with"
 msgstr "El correo electrónico comienza con"
 msgstr "El correo electrónico comienza con"
 
 
-#: users/forms/admin.py:309
+#: users/forms/admin.py:311
 msgid "Profile fields contain"
 msgid "Profile fields contain"
 msgstr "Los campos de perfil contienen"
 msgstr "Los campos de perfil contienen"
 
 
-#: users/forms/admin.py:310
+#: users/forms/admin.py:312
 msgid "Inactive only"
 msgid "Inactive only"
 msgstr "Solo inactivo"
 msgstr "Solo inactivo"
 
 
-#: users/forms/admin.py:311
+#: users/forms/admin.py:313
 msgid "Disabled only"
 msgid "Disabled only"
 msgstr "Deshabilitado solo"
 msgstr "Deshabilitado solo"
 
 
-#: users/forms/admin.py:312
+#: users/forms/admin.py:314
 msgid "Admins only"
 msgid "Admins only"
 msgstr "Admins solo"
 msgstr "Admins solo"
 
 
-#: users/forms/admin.py:313
+#: users/forms/admin.py:315
 msgid "Deleting their accounts"
 msgid "Deleting their accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:355
+#: users/forms/admin.py:357
 msgid "All ranks"
 msgid "All ranks"
 msgstr "Todos los rangos"
 msgstr "Todos los rangos"
 
 
-#: users/forms/admin.py:362
+#: users/forms/admin.py:364
 msgid "All roles"
 msgid "All roles"
 msgstr "Todos los roles"
 msgstr "Todos los roles"
 
 
-#: users/forms/admin.py:369
+#: users/forms/admin.py:371
 msgid "Has rank"
 msgid "Has rank"
 msgstr "Tiene rango"
 msgstr "Tiene rango"
 
 
-#: users/forms/admin.py:375
+#: users/forms/admin.py:377
 msgid "Has role"
 msgid "Has role"
 msgstr "Tiene un rol"
 msgstr "Tiene un rol"
 
 
-#: users/forms/admin.py:391
+#: users/forms/admin.py:393
 msgid ""
 msgid ""
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "\"Game Masters\" are good examples."
 "\"Game Masters\" are good examples."
@@ -5467,11 +5790,11 @@ msgstr ""
 "Nombre breve y descriptivo de todos los usuarios con este rango. \"The "
 "Nombre breve y descriptivo de todos los usuarios con este rango. \"The "
 "Team\" o \"Game Masters\" son buenos ejemplos."
 "Team\" o \"Game Masters\" son buenos ejemplos."
 
 
-#: users/forms/admin.py:396
+#: users/forms/admin.py:398
 msgid "User title"
 msgid "User title"
 msgstr "Título del usuario"
 msgstr "Título del usuario"
 
 
-#: users/forms/admin.py:399
+#: users/forms/admin.py:401
 msgid ""
 msgid ""
 "Optional, singular version of rank name displayed by user names. For example"
 "Optional, singular version of rank name displayed by user names. For example"
 " \"GM\" or \"Dev\"."
 " \"GM\" or \"Dev\"."
@@ -5479,7 +5802,7 @@ msgstr ""
 "Versión opcional y singular del nombre de rango mostrado por los nombres de "
 "Versión opcional y singular del nombre de rango mostrado por los nombres de "
 "usuario. Por ejemplo \"GM\" o \"Dev\"."
 "usuario. Por ejemplo \"GM\" o \"Dev\"."
 
 
-#: users/forms/admin.py:409
+#: users/forms/admin.py:411
 msgid ""
 msgid ""
 "Optional description explaining function or status of members distincted "
 "Optional description explaining function or status of members distincted "
 "with this rank."
 "with this rank."
@@ -5487,21 +5810,21 @@ msgstr ""
 "Descripción opcional que explica la función o el estado de los miembros "
 "Descripción opcional que explica la función o el estado de los miembros "
 "distinguidos con este rango."
 "distinguidos con este rango."
 
 
-#: users/forms/admin.py:418
+#: users/forms/admin.py:420
 msgid "Rank can give additional roles to users with it."
 msgid "Rank can give additional roles to users with it."
 msgstr "Rank puede otorgar roles adicionales a los usuarios que lo utilizan."
 msgstr "Rank puede otorgar roles adicionales a los usuarios que lo utilizan."
 
 
-#: users/forms/admin.py:423
+#: users/forms/admin.py:425
 msgid "Optional css class added to content belonging to this rank owner."
 msgid "Optional css class added to content belonging to this rank owner."
 msgstr ""
 msgstr ""
 "Clase css opcional agregada al contenido que pertenece al propietario del "
 "Clase css opcional agregada al contenido que pertenece al propietario del "
 "rango."
 "rango."
 
 
-#: users/forms/admin.py:426
+#: users/forms/admin.py:428
 msgid "Give rank dedicated tab on users list"
 msgid "Give rank dedicated tab on users list"
 msgstr "Dar una pestaña de rango dedicada en la lista de usuarios"
 msgstr "Dar una pestaña de rango dedicada en la lista de usuarios"
 
 
-#: users/forms/admin.py:429
+#: users/forms/admin.py:431
 msgid ""
 msgid ""
 "Selecting this option will make users with this rank easily discoverable by "
 "Selecting this option will make users with this rank easily discoverable by "
 "others through dedicated page on forum users list."
 "others through dedicated page on forum users list."
@@ -5510,71 +5833,71 @@ msgstr ""
 " detectables por otros a través de la página dedicada en la lista de "
 " detectables por otros a través de la página dedicada en la lista de "
 "usuarios del foro."
 "usuarios del foro."
 
 
-#: users/forms/admin.py:454
+#: users/forms/admin.py:456
 msgid "This name collides with other rank."
 msgid "This name collides with other rank."
 msgstr "Este nombre colisiona con otro rango."
 msgstr "Este nombre colisiona con otro rango."
 
 
-#: users/forms/admin.py:461
+#: users/forms/admin.py:463
 msgid "Values to ban"
 msgid "Values to ban"
 msgstr "Valores para prohibir"
 msgstr "Valores para prohibir"
 
 
-#: users/forms/admin.py:464 users/forms/admin.py:579
-msgid "Usernames"
-msgstr "Nombres de Usuario"
-
-#: users/forms/admin.py:465 users/forms/admin.py:580
-msgid "E-mails"
-msgstr "Correos electrónicos"
-
-#: users/forms/admin.py:466
-msgid "E-mail domains"
-msgstr "Dominios de correo electrónico"
-
-#: users/forms/admin.py:467
-msgid "IP addresses"
-msgstr "Dirección(es) IP "
-
-#: users/forms/admin.py:468
-msgid "First segment of IP addresses"
-msgstr "Primer segmento de direcciones IP"
-
-#: users/forms/admin.py:469
-msgid "First two segments of IP addresses"
-msgstr "Primeros dos segmentos de direcciones IP"
-
-#: users/forms/admin.py:476
+#: users/forms/admin.py:471
 msgid "Optional message displayed to users instead of default one."
 msgid "Optional message displayed to users instead of default one."
 msgstr ""
 msgstr ""
 "Mensaje opcional que se muestra a los usuarios en lugar de uno "
 "Mensaje opcional que se muestra a los usuarios en lugar de uno "
 "predeterminado."
 "predeterminado."
 
 
-#: users/forms/admin.py:479 users/forms/admin.py:489 users/forms/admin.py:532
-#: users/forms/admin.py:542
+#: users/forms/admin.py:474 users/forms/admin.py:484 users/forms/admin.py:546
+#: users/forms/admin.py:556
 msgid "Message can't be longer than 1000 characters."
 msgid "Message can't be longer than 1000 characters."
 msgstr "El mensaje no puede tener más de 1000 caracteres."
 msgstr "El mensaje no puede tener más de 1000 caracteres."
 
 
-#: users/forms/admin.py:483 users/forms/admin.py:536
+#: users/forms/admin.py:478 users/forms/admin.py:550
 msgid "Team message"
 msgid "Team message"
 msgstr "Mensaje de equipo"
 msgstr "Mensaje de equipo"
 
 
-#: users/forms/admin.py:486 users/forms/admin.py:539
+#: users/forms/admin.py:481 users/forms/admin.py:553
 msgid "Optional ban message for moderators and administrators."
 msgid "Optional ban message for moderators and administrators."
 msgstr "Mensaje de prohibición opcional para moderadores y administradores."
 msgstr "Mensaje de prohibición opcional para moderadores y administradores."
 
 
-#: users/forms/admin.py:495
+#: users/forms/admin.py:490
 msgid "Leave this field empty for set bans to never expire."
 msgid "Leave this field empty for set bans to never expire."
 msgstr ""
 msgstr ""
 "Deja este campo vacío para que las prohibiciones establecidas nunca expiren."
 "Deja este campo vacío para que las prohibiciones establecidas nunca expiren."
 
 
+#: users/forms/admin.py:499 users/forms/admin.py:593
+msgid "Usernames"
+msgstr "Nombres de Usuario"
+
+#: users/forms/admin.py:500 users/forms/admin.py:594
+msgid "E-mails"
+msgstr "Correos electrónicos"
+
 #: users/forms/admin.py:501
 #: users/forms/admin.py:501
+msgid "E-mail domains"
+msgstr "Dominios de correo electrónico"
+
+#: users/forms/admin.py:507
+msgid "IP addresses"
+msgstr "Dirección(es) IP "
+
+#: users/forms/admin.py:508
+msgid "First segment of IP addresses"
+msgstr "Primer segmento de direcciones IP"
+
+#: users/forms/admin.py:509
+msgid "First two segments of IP addresses"
+msgstr "Primeros dos segmentos de direcciones IP"
+
+#: users/forms/admin.py:515
 msgid "Check type"
 msgid "Check type"
 msgstr "Tipo de cheque"
 msgstr "Tipo de cheque"
 
 
-#: users/forms/admin.py:506
+#: users/forms/admin.py:520
 msgid "Restrict this ban to registrations"
 msgid "Restrict this ban to registrations"
 msgstr "Restringe esta prohibición a los registros"
 msgstr "Restringe esta prohibición a los registros"
 
 
-#: users/forms/admin.py:508
+#: users/forms/admin.py:522
 msgid ""
 msgid ""
 "Changing this to yes will make this ban check be only performed on "
 "Changing this to yes will make this ban check be only performed on "
 "registration step. This is good if you want to block certain registrations "
 "registration step. This is good if you want to block certain registrations "
@@ -5586,11 +5909,11 @@ msgstr ""
 "como los de proveedores de correo electrónico recientemente comprometidos, "
 "como los de proveedores de correo electrónico recientemente comprometidos, "
 "sin dañar a los usuarios existentes."
 "sin dañar a los usuarios existentes."
 
 
-#: users/forms/admin.py:514
+#: users/forms/admin.py:528
 msgid "Banned value"
 msgid "Banned value"
 msgstr "Valor prohibido"
 msgstr "Valor prohibido"
 
 
-#: users/forms/admin.py:517
+#: users/forms/admin.py:531
 msgid ""
 msgid ""
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
@@ -5601,51 +5924,74 @@ msgstr ""
 "prohíba el valor \"83. * \" Prohibirá todas las direcciones IP que comiencen"
 "prohíba el valor \"83. * \" Prohibirá todas las direcciones IP que comiencen"
 " con \"83. \"."
 " con \"83. \"."
 
 
-#: users/forms/admin.py:522
+#: users/forms/admin.py:536
 msgid "Banned value can't be longer than 250 characters."
 msgid "Banned value can't be longer than 250 characters."
 msgstr "El valor prohibido no puede tener más de 250 caracteres."
 msgstr "El valor prohibido no puede tener más de 250 caracteres."
 
 
-#: users/forms/admin.py:529
+#: users/forms/admin.py:543
 msgid "Optional message displayed to user instead of default one."
 msgid "Optional message displayed to user instead of default one."
 msgstr ""
 msgstr ""
 "Mensaje opcional que se muestra al usuario en lugar del predeterminado."
 "Mensaje opcional que se muestra al usuario en lugar del predeterminado."
 
 
-#: users/forms/admin.py:548
+#: users/forms/admin.py:562
 msgid "Leave this field empty for this ban to never expire."
 msgid "Leave this field empty for this ban to never expire."
 msgstr "Deje este campo vacío para que esta prohibición nunca expire."
 msgstr "Deje este campo vacío para que esta prohibición nunca expire."
 
 
-#: users/forms/admin.py:568
+#: users/forms/admin.py:582
 msgid "Banned value is too vague."
 msgid "Banned value is too vague."
 msgstr "El valor prohibido es demasiado vago."
 msgstr "El valor prohibido es demasiado vago."
 
 
-#: users/forms/admin.py:578
+#: users/forms/admin.py:592
 msgid "All bans"
 msgid "All bans"
 msgstr "Todas las prohibiciones"
 msgstr "Todas las prohibiciones"
 
 
-#: users/forms/admin.py:581
+#: users/forms/admin.py:595
 msgid "IPs"
 msgid "IPs"
 msgstr "IPs"
 msgstr "IPs"
 
 
-#: users/forms/admin.py:584
+#: users/forms/admin.py:598
 msgid "Banned value begins with"
 msgid "Banned value begins with"
 msgstr "El valor prohibido comienza con"
 msgstr "El valor prohibido comienza con"
 
 
-#: users/forms/admin.py:586
+#: users/forms/admin.py:600
 msgid "Registration only"
 msgid "Registration only"
 msgstr "Sólo registro"
 msgstr "Sólo registro"
 
 
-#: users/forms/admin.py:589 users/forms/admin.py:598
+#: users/forms/admin.py:603 users/forms/admin.py:612
 msgid "Any"
 msgid "Any"
 msgstr "Todos"
 msgstr "Todos"
 
 
-#: users/forms/admin.py:599
+#: users/forms/admin.py:613
 msgid "Active"
 msgid "Active"
 msgstr "Activo"
 msgstr "Activo"
 
 
-#: users/forms/admin.py:600
+#: users/forms/admin.py:614 users/models/datadownload.py:26
 msgid "Expired"
 msgid "Expired"
 msgstr "Expirado"
 msgstr "Expirado"
 
 
+#: users/forms/admin.py:649
+msgid "Usernames or emails"
+msgstr ""
+
+#: users/forms/admin.py:651
+msgid ""
+"Enter every item in new line. Duplicates will be ignored. This field is case"
+" insensitive. Depending on site configuration and amount of data to archive "
+"it may take up to few days for requests to complete. E-mail will "
+"notification will be sent to every user once their download is ready."
+msgstr ""
+
+#: users/forms/admin.py:667
+#, python-format
+msgid ""
+"You may not enter more than 20 items at single time (You have entered "
+"%(show_value)s)."
+msgstr ""
+
+#: users/forms/admin.py:684
+msgid "One or more specified users could not be found."
+msgstr ""
+
 #: users/forms/auth.py:16
 #: users/forms/auth.py:16
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Rellena ambos campos."
 msgstr "Rellena ambos campos."
@@ -5705,18 +6051,27 @@ msgstr ""
 "El administrador debe activar tu cuenta antes de que pueda solicitar una "
 "El administrador debe activar tu cuenta antes de que pueda solicitar una "
 "nueva contraseña."
 "nueva contraseña."
 
 
-#: users/forms/register.py:27
+#: users/forms/register.py:34
 msgid "This usernane is not allowed."
 msgid "This usernane is not allowed."
 msgstr "Este usuario no está permitido."
 msgstr "Este usuario no está permitido."
 
 
-#: users/forms/register.py:38 users/validators.py:41
+#: users/forms/register.py:45 users/validators.py:41
 msgid "This e-mail address is not allowed."
 msgid "This e-mail address is not allowed."
 msgstr "Esta dirección de correo electrónico no está permitida."
 msgstr "Esta dirección de correo electrónico no está permitida."
 
 
-#: users/forms/register.py:47
+#: users/forms/register.py:51
+msgid "This agreement is required."
+msgstr ""
+
+#: users/forms/register.py:60
 msgid "New registrations from this IP address are not allowed."
 msgid "New registrations from this IP address are not allowed."
 msgstr "No se permiten nuevos registros desde esta dirección IP."
 msgstr "No se permiten nuevos registros desde esta dirección IP."
 
 
+#: users/management/commands/prepareuserdatadownloads.py:34
+#, python-format
+msgid "%(user)s, your data download is ready"
+msgstr ""
+
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0006_update_settings.py:19
 #: users/migrations/0006_update_settings.py:19
 msgid ""
 msgid ""
@@ -5953,7 +6308,7 @@ msgstr ""
 "entre mayúsculas y minúsculas."
 "entre mayúsculas y minúsculas."
 
 
 #: users/migrations/0004_default_ranks.py:17
 #: users/migrations/0004_default_ranks.py:17
-#: users/migrations/0004_default_ranks.py:18 users/models/user.py:111
+#: users/migrations/0004_default_ranks.py:18 users/models/user.py:113
 msgid "Forum team"
 msgid "Forum team"
 msgstr "Equipo del foro"
 msgstr "Equipo del foro"
 
 
@@ -5966,48 +6321,60 @@ msgstr "Equipo"
 msgid "Members"
 msgid "Members"
 msgstr "Miembros"
 msgstr "Miembros"
 
 
-#: users/models/user.py:37
+#: users/models/datadownload.py:23
+msgid "Pending"
+msgstr ""
+
+#: users/models/datadownload.py:24
+msgid "Processing"
+msgstr ""
+
+#: users/models/datadownload.py:25
+msgid "Ready"
+msgstr ""
+
+#: users/models/user.py:38
 msgid "User must have an email address."
 msgid "User must have an email address."
 msgstr "El usuario debe tener una dirección de correo electrónico."
 msgstr "El usuario debe tener una dirección de correo electrónico."
 
 
-#: users/models/user.py:146
+#: users/models/user.py:148
 msgid "Notify"
 msgid "Notify"
 msgstr "Notificar"
 msgstr "Notificar"
 
 
-#: users/models/user.py:147
+#: users/models/user.py:149
 msgid "Notify with e-mail"
 msgid "Notify with e-mail"
 msgstr "Notificar mediante e-mail"
 msgstr "Notificar mediante e-mail"
 
 
-#: users/models/user.py:155
+#: users/models/user.py:157
 msgid "Everybody"
 msgid "Everybody"
 msgstr "Todos"
 msgstr "Todos"
 
 
-#: users/models/user.py:156
+#: users/models/user.py:158
 msgid "Users I follow"
 msgid "Users I follow"
 msgstr "Usuarios que sigo"
 msgstr "Usuarios que sigo"
 
 
-#: users/models/user.py:157
+#: users/models/user.py:159
 msgid "Nobody"
 msgid "Nobody"
 msgstr "Nadie"
 msgstr "Nadie"
 
 
-#: users/models/user.py:175
+#: users/models/user.py:177
 msgid "joined on"
 msgid "joined on"
 msgstr "se unió a"
 msgstr "se unió a"
 
 
-#: users/models/user.py:190
+#: users/models/user.py:191
 msgid "staff status"
 msgid "staff status"
 msgstr "estado del personal"
 msgstr "estado del personal"
 
 
-#: users/models/user.py:192
+#: users/models/user.py:193
 msgid "Designates whether the user can log into admin sites."
 msgid "Designates whether the user can log into admin sites."
 msgstr ""
 msgstr ""
 "Designa si el usuario puede iniciar sesión en sitios de administración."
 "Designa si el usuario puede iniciar sesión en sitios de administración."
 
 
-#: users/models/user.py:199
+#: users/models/user.py:200
 msgid "active"
 msgid "active"
 msgstr "activo"
 msgstr "activo"
 
 
-#: users/models/user.py:203
+#: users/models/user.py:204
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Unselect this "
 "Designates whether this user should be treated as active. Unselect this "
 "instead of deleting accounts."
 "instead of deleting accounts."
@@ -6385,11 +6752,7 @@ msgstr "Este no es un identificador de Twitter válido."
 msgid "Join IP"
 msgid "Join IP"
 msgstr "IP de sesión"
 msgstr "IP de sesión"
 
 
-#: users/profilefields/default.py:99
-msgid "Last IP"
-msgstr "Última IP"
-
-#: users/registration.py:9
+#: users/registration.py:11
 #, python-format
 #, python-format
 msgid "Welcome on %(forum_name)s forums!"
 msgid "Welcome on %(forum_name)s forums!"
 msgstr "¡Bienvenido a %(forum_name)s!"
 msgstr "¡Bienvenido a %(forum_name)s!"
@@ -6431,14 +6794,30 @@ msgstr "Debes ingresar una nueva dirección de correo electrónico."
 msgid "New e-mail is same as current one."
 msgid "New e-mail is same as current one."
 msgstr "El nuevo correo electrónico es el mismo que el actual."
 msgstr "El nuevo correo electrónico es el mismo que el actual."
 
 
-#: users/social/pipeline.py:74
+#: users/signals.py:31
+msgid "Joined on"
+msgstr ""
+
+#: users/signals.py:32
+msgid "Joined from ip"
+msgstr ""
+
+#: users/signals.py:72
+msgid "New username"
+msgstr ""
+
+#: users/signals.py:73
+msgid "Old username"
+msgstr ""
+
+#: users/social/pipeline.py:77
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "The e-mail address associated with your %(backend)s account is not available"
 "The e-mail address associated with your %(backend)s account is not available"
 " for use on this site."
 " for use on this site."
 msgstr ""
 msgstr ""
 
 
-#: users/social/pipeline.py:83
+#: users/social/pipeline.py:86
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "Your account has to be activated by site administrator before you will be "
 "Your account has to be activated by site administrator before you will be "
@@ -6542,6 +6921,42 @@ msgstr "Prohibir \"%(name)s\" ha sido editado."
 msgid "Ban \"%(name)s\" has been removed."
 msgid "Ban \"%(name)s\" has been removed."
 msgstr "Prohibir \"%(name)s\" ha sido eliminado."
 msgstr "Prohibir \"%(name)s\" ha sido eliminado."
 
 
+#: users/views/admin/datadownloads.py:23
+msgid "With data downloads: 0"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:24
+msgid "Select data downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:28
+msgid "Expire downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:30
+msgid "Are you sure you want to set selected data downloads as expired?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:34
+msgid "Delete downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:36
+msgid "Are you sure you want to delete selected data downloads?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:51
+msgid "Selected data downloads have been set as expired."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:57
+msgid "Selected data downloads have been deleted."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:68
+msgid "Data downloads have been requested for specified users."
+msgstr ""
+
 #: users/views/admin/ranks.py:16
 #: users/views/admin/ranks.py:16
 msgid "Requested rank does not exist."
 msgid "Requested rank does not exist."
 msgstr "El rango solicitado no existe."
 msgstr "El rango solicitado no existe."
@@ -6591,39 +7006,43 @@ msgstr "El rango \"%(name)s\" ya está predeterminado."
 msgid "Rank \"%(name)s\" has been made default."
 msgid "Rank \"%(name)s\" has been made default."
 msgstr "El rango \"%(name)s\" se ha establecido de manera predeterminada."
 msgstr "El rango \"%(name)s\" se ha establecido de manera predeterminada."
 
 
-#: users/views/admin/users.py:59
+#: users/views/admin/users.py:60
 msgid "Biggest posters"
 msgid "Biggest posters"
 msgstr "Los carteles más grandes"
 msgstr "Los carteles más grandes"
 
 
-#: users/views/admin/users.py:60
+#: users/views/admin/users.py:61
 msgid "Smallest posters"
 msgid "Smallest posters"
 msgstr "Los carteles más pequeños"
 msgstr "Los carteles más pequeños"
 
 
-#: users/views/admin/users.py:62
+#: users/views/admin/users.py:63
 msgid "With users: 0"
 msgid "With users: 0"
 msgstr "Con los usuarios: 0"
 msgstr "Con los usuarios: 0"
 
 
-#: users/views/admin/users.py:63
+#: users/views/admin/users.py:64
 msgid "Select users"
 msgid "Select users"
 msgstr "Seleccionar usuarios"
 msgstr "Seleccionar usuarios"
 
 
-#: users/views/admin/users.py:67
+#: users/views/admin/users.py:68
 msgid "Activate accounts"
 msgid "Activate accounts"
 msgstr "Activar cuentas"
 msgstr "Activar cuentas"
 
 
-#: users/views/admin/users.py:77
+#: users/views/admin/users.py:78
+msgid "Request data download"
+msgstr ""
+
+#: users/views/admin/users.py:83
 msgid "Delete accounts"
 msgid "Delete accounts"
 msgstr "Eliminar cuentas"
 msgstr "Eliminar cuentas"
 
 
-#: users/views/admin/users.py:79
+#: users/views/admin/users.py:85
 msgid "Are you sure you want to delete selected users?"
 msgid "Are you sure you want to delete selected users?"
 msgstr "¿Seguro que quieres eliminar los usuarios seleccionados?"
 msgstr "¿Seguro que quieres eliminar los usuarios seleccionados?"
 
 
-#: users/views/admin/users.py:83
+#: users/views/admin/users.py:89
 msgid "Delete all"
 msgid "Delete all"
 msgstr "Borrar todo"
 msgstr "Borrar todo"
 
 
-#: users/views/admin/users.py:86
+#: users/views/admin/users.py:92
 msgid ""
 msgid ""
 "Are you sure you want to delete selected users? This will also delete all "
 "Are you sure you want to delete selected users? This will also delete all "
 "content associated with their accounts."
 "content associated with their accounts."
@@ -6631,54 +7050,58 @@ msgstr ""
 "¿Seguro que quieres eliminar los usuarios seleccionados? Esto también "
 "¿Seguro que quieres eliminar los usuarios seleccionados? Esto también "
 "eliminará todo el contenido asociado a sus cuentas."
 "eliminará todo el contenido asociado a sus cuentas."
 
 
-#: users/views/admin/users.py:107
+#: users/views/admin/users.py:113
 msgid "You have to select inactive users."
 msgid "You have to select inactive users."
 msgstr "Debes seleccionar usuarios inactivos."
 msgstr "Debes seleccionar usuarios inactivos."
 
 
-#: users/views/admin/users.py:114
+#: users/views/admin/users.py:120
 #, python-format
 #, python-format
 msgid "Your account on %(forum_name)s forums has been activated"
 msgid "Your account on %(forum_name)s forums has been activated"
 msgstr "Tu cuenta en %(forum_name)s ha sido activada"
 msgstr "Tu cuenta en %(forum_name)s ha sido activada"
 
 
-#: users/views/admin/users.py:119
+#: users/views/admin/users.py:125
 msgid "Selected users accounts have been activated."
 msgid "Selected users accounts have been activated."
 msgstr "Las cuentas de los usuarios seleccionados se han activado."
 msgstr "Las cuentas de los usuarios seleccionados se han activado."
 
 
-#: users/views/admin/users.py:125
+#: users/views/admin/users.py:131
 #, python-format
 #, python-format
 msgid "%(user)s is super admin and can't be banned."
 msgid "%(user)s is super admin and can't be banned."
 msgstr "%(user)s es super administrador y no puede ser baneado."
 msgstr "%(user)s es super administrador y no puede ser baneado."
 
 
-#: users/views/admin/users.py:186
+#: users/views/admin/users.py:194
 msgid "Selected users have been banned."
 msgid "Selected users have been banned."
 msgstr "Los usuarios seleccionados han sido baneados."
 msgstr "Los usuarios seleccionados han sido baneados."
 
 
-#: users/views/admin/users.py:201 users/views/admin/users.py:215
-#: users/views/admin/users.py:331
+#: users/views/admin/users.py:212
+msgid "Data download requests have been placed for selected users."
+msgstr ""
+
+#: users/views/admin/users.py:217 users/views/admin/users.py:230
+#: users/views/admin/users.py:346
 msgid "You can't delete yourself."
 msgid "You can't delete yourself."
 msgstr "No puedes borrarte a ti mismo."
 msgstr "No puedes borrarte a ti mismo."
 
 
-#: users/views/admin/users.py:203 users/views/admin/users.py:217
-#: users/views/admin/users.py:334
+#: users/views/admin/users.py:219 users/views/admin/users.py:232
+#: users/views/admin/users.py:349
 #, python-format
 #, python-format
 msgid "%(user)s is admin and can't be deleted."
 msgid "%(user)s is admin and can't be deleted."
 msgstr "%(user)s es admin y no se puede eliminar."
 msgstr "%(user)s es admin y no se puede eliminar."
 
 
-#: users/views/admin/users.py:209
+#: users/views/admin/users.py:225
 msgid "Selected users have been deleted."
 msgid "Selected users have been deleted."
 msgstr "Los usuarios seleccionados han sido eliminados."
 msgstr "Los usuarios seleccionados han sido eliminados."
 
 
-#: users/views/admin/users.py:232
+#: users/views/admin/users.py:247
 #, python-format
 #, python-format
 msgid "New user \"%(user)s\" has been registered."
 msgid "New user \"%(user)s\" has been registered."
 msgstr "Nuevo usuario \"%(user)s\" ha sido registrado."
 msgstr "Nuevo usuario \"%(user)s\" ha sido registrado."
 
 
-#: users/views/admin/users.py:261
+#: users/views/admin/users.py:276
 #, python-format
 #, python-format
 msgid "User \"%(user)s\" has been edited."
 msgid "User \"%(user)s\" has been edited."
 msgstr "Usuario \"%(user)s\" ha sido editado."
 msgstr "Usuario \"%(user)s\" ha sido editado."
 
 
-#: users/views/admin/users.py:328
+#: users/views/admin/users.py:343
 msgid "This action can't be accessed directly."
 msgid "This action can't be accessed directly."
 msgstr "No se puede acceder a esta acción directamente."
 msgstr "No se puede acceder a esta acción directamente."
 
 

BIN
misago/locale/es/LC_MESSAGES/djangojs.mo


+ 285 - 207
misago/locale/es/LC_MESSAGES/djangojs.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-20 21:20+0200\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Javier Lorenzo <javichio@gmail.com>, 2017\n"
 "Last-Translator: Javier Lorenzo <javichio@gmail.com>, 2017\n"
 "Language-Team: Spanish (https://www.transifex.com/misago/teams/65369/es/)\n"
 "Language-Team: Spanish (https://www.transifex.com/misago/teams/65369/es/)\n"
@@ -39,8 +39,30 @@ msgid "Promise can't be resolved itself"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:1
 #: static/misago/js/misago.js:1
-msgid "By registering you agree to site's terms and conditions."
-msgstr "Registrándote, aceptas los términos y condiciones de uso."
+msgid "the terms of service"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "the privacy policy"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "I have read and accept %(agreement)s."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid ""
+"Declining will result in immediate deactivation and deletion of your "
+"account. This action is not reversible."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Decline"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Accept and continue"
+msgstr ""
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
@@ -48,11 +70,12 @@ msgstr "Registrándote, aceptas los términos y condiciones de uso."
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Close"
 msgid "Close"
 msgstr "Cerrar"
 msgstr "Cerrar"
 
 
-#: static/misago/js/misago.js:1 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:1 static/misago/js/misago.js:6
 msgid "Add participant"
 msgid "Add participant"
 msgstr "Añadir participante"
 msgstr "Añadir participante"
 
 
@@ -70,9 +93,10 @@ msgstr "Usuario a añadir"
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:6 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:6 static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Cancel"
 msgid "Cancel"
 msgstr "Cancelar"
 msgstr "Cancelar"
 
 
@@ -199,8 +223,8 @@ msgid "Generate my individual avatar"
 msgstr "Generar avatar con tu inicial"
 msgstr "Generar avatar con tu inicial"
 
 
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "Ok"
 msgid "Ok"
 msgstr "Ok"
 msgstr "Ok"
 
 
@@ -268,39 +292,39 @@ msgstr "Insertar código"
 msgid "Emphase selection"
 msgid "Emphase selection"
 msgstr "Añadir énfasis a la selección"
 msgstr "Añadir énfasis a la selección"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert horizontal ruler"
 msgid "Insert horizontal ruler"
 msgstr "Insertar regla horizontal"
 msgstr "Insertar regla horizontal"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link to image"
 msgid "Enter link to image"
 msgstr "Añadir enlace a la imagen"
 msgstr "Añadir enlace a la imagen"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter image label (optional)"
 msgid "Enter image label (optional)"
 msgstr "Añadir etiqueta de imagen (opcional)"
 msgstr "Añadir etiqueta de imagen (opcional)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert image"
 msgid "Insert image"
 msgstr "Insertar imagen"
 msgstr "Insertar imagen"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link address"
 msgid "Enter link address"
 msgstr "Añadir dirección de enlace"
 msgstr "Añadir dirección de enlace"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link label (optional)"
 msgid "Enter link label (optional)"
 msgstr "Añadir etiqueta de enlace (opcional)"
 msgstr "Añadir etiqueta de enlace (opcional)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert link"
 msgid "Insert link"
 msgstr "Insertar enlace"
 msgstr "Insertar enlace"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter quote autor, prefix usernames with @"
 msgid "Enter quote autor, prefix usernames with @"
 msgstr "Añadir autor de la cita, utiliza @ para mencionar"
 msgstr "Añadir autor de la cita, utiliza @ para mencionar"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert quote"
 msgid "Insert quote"
 msgstr "Añadir cita"
 msgstr "Añadir cita"
 
 
@@ -332,7 +356,7 @@ msgstr "Deshacer eliminar"
 msgid "Error uploading %(filename)s"
 msgid "Error uploading %(filename)s"
 msgstr "Error subiendo %(filename)s"
 msgstr "Error subiendo %(filename)s"
 
 
-#: static/misago/js/misago.js:3 static/misago/js/misago.js:8
+#: static/misago/js/misago.js:3 static/misago/js/misago.js:9
 msgid "Dismiss"
 msgid "Dismiss"
 msgstr "Descartar"
 msgstr "Descartar"
 
 
@@ -349,7 +373,7 @@ msgid "Protected"
 msgstr "Protegido"
 msgstr "Protegido"
 
 
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Protect"
 msgid "Protect"
 msgstr "Proteger"
 msgstr "Proteger"
 
 
@@ -384,7 +408,7 @@ msgid ""
 " deleted during the merge."
 " deleted during the merge."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:18
 msgid "Poll"
 msgid "Poll"
 msgstr "Encuesta"
 msgstr "Encuesta"
 
 
@@ -399,6 +423,7 @@ msgid "Are you sure you want to delete all polls?"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Merge threads"
 msgid "Merge threads"
 msgstr "Mezclar hilos"
 msgstr "Mezclar hilos"
 
 
@@ -426,8 +451,7 @@ msgstr "Escrito por %(poster)s en %(posted_on)s en %(category)s."
 msgid "%(title)s, joined on %(joined_on)s"
 msgid "%(title)s, joined on %(joined_on)s"
 msgstr "%(title)s, ha entrado en %(joined_on)s"
 msgstr "%(title)s, ha entrado en %(joined_on)s"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "Change username"
 msgid "Change username"
 msgstr "Cambiar nombre de usuario"
 msgstr "Cambiar nombre de usuario"
 
 
@@ -463,7 +487,7 @@ msgstr[1] ""
 msgid "Your new username is same as current one."
 msgid "Your new username is same as current one."
 msgstr "El nombre propuesto es igual al anterior."
 msgstr "El nombre propuesto es igual al anterior."
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "New username"
 msgid "New username"
 msgstr "Nuevo nombre de usuario"
 msgstr "Nuevo nombre de usuario"
 
 
@@ -472,15 +496,15 @@ msgid "Your username has been changed successfully."
 msgstr "Tu nombre de usuario se ha cambiado correctamente."
 msgstr "Tu nombre de usuario se ha cambiado correctamente."
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change your options"
 msgid "Change your options"
 msgstr "Cambia tus opciones"
 msgstr "Cambia tus opciones"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5
 msgid "Enter your password to confirm account deletion."
 msgid "Enter your password to confirm account deletion."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:13
 msgid "Delete account"
 msgid "Delete account"
 msgstr "Eliminar cuenta"
 msgstr "Eliminar cuenta"
 
 
@@ -516,7 +540,54 @@ msgstr ""
 msgid "Delete my account"
 msgid "Delete my account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:5
+msgid "Your request for data download has been registered."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download your data"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"To download your data from the site, click the \"Request data download\" "
+"button. Depending on amount of data to be archived and number of users "
+"wanting to download their data at same time it may take up to few days for "
+"your download to be prepared. An e-mail with notification will be sent to "
+"you when your data is ready to be downloaded."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"The download will only be available for limited amount of time, after which "
+"it will be deleted from the site and marked as expired."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Requested on"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "You have no data downloads."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Request data download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is being prepared"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is expired"
+msgstr ""
+
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:12
 msgid "Your details have been updated."
 msgid "Your details have been updated."
 msgstr "Tus detalles han sido actualizados."
 msgstr "Tus detalles han sido actualizados."
 
 
@@ -601,7 +672,7 @@ msgstr "Hilos que he creado"
 msgid "Threads I reply to"
 msgid "Threads I reply to"
 msgstr "Hilos en los que he contestado"
 msgstr "Hilos en los que he contestado"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:6
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "Cambiar e-mail o contraseña"
 msgstr "Cambiar e-mail o contraseña"
 
 
@@ -651,7 +722,7 @@ msgstr "Nueva contraseña"
 msgid "Repeat password"
 msgid "Repeat password"
 msgstr "Repetir contraseña"
 msgstr "Repetir contraseña"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change forgotten password"
 msgid "Change forgotten password"
 msgstr "Cambiar contraseña olvidada"
 msgstr "Cambiar contraseña olvidada"
 
 
@@ -840,21 +911,21 @@ msgid_plural "%(votes)s votes."
 msgstr[0] "%(votes)s voto"
 msgstr[0] "%(votes)s voto"
 msgstr[1] "%(votes)s votos"
 msgstr[1] "%(votes)s votos"
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Votes are public."
 msgid "Votes are public."
 msgstr "Los votos son públicos."
 msgstr "Los votos son públicos."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgstr[0] "%(votes)s voto, %(proc)s% del total."
 msgstr[0] "%(votes)s voto, %(proc)s% del total."
 msgstr[1] "%(votes)s votos, %(proc)s% del total."
 msgstr[1] "%(votes)s votos, %(proc)s% del total."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Your choice."
 msgid "Your choice."
 msgstr "Tu elección."
 msgstr "Tu elección."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s user has voted for this choice."
 msgid "%(votes)s user has voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgstr[0] "%(votes)s vez que el usuario votó por esta opción."
 msgstr[0] "%(votes)s vez que el usuario votó por esta opción."
@@ -872,9 +943,8 @@ msgstr "Vota"
 msgid "See votes"
 msgid "See votes"
 msgstr "Ver votos"
 msgstr "Ver votos"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:15
 msgid "Edit"
 msgid "Edit"
 msgstr "Editar"
 msgstr "Editar"
 
 
@@ -886,8 +956,7 @@ msgstr ""
 "deshacer."
 "deshacer."
 
 
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Delete"
 msgid "Delete"
 msgstr "Eliminar"
 msgstr "Eliminar"
 
 
@@ -953,29 +1022,29 @@ msgstr "El mensaje ha sido revertido al estado anterior."
 msgid "See previous change"
 msgid "See previous change"
 msgstr "Ver cambio anterior"
 msgstr "Ver cambio anterior"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "By %(edited_by)s %(edited_on)s."
 msgid "By %(edited_by)s %(edited_on)s."
 msgstr "Por %(edited_by)s %(edited_on)s."
 msgstr "Por %(edited_by)s %(edited_on)s."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This post's contents cannot be displayed."
 msgid "This post's contents cannot be displayed."
 msgstr "El contenido de este mensaje no puede ser mostrado."
 msgstr "El contenido de este mensaje no puede ser mostrado."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This error is caused by invalid post content manipulation."
 msgid "This error is caused by invalid post content manipulation."
 msgstr ""
 msgstr ""
 "Este error está causado por una manipulación inválida del contenido del "
 "Este error está causado por una manipulación inválida del contenido del "
 "post."
 "post."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "posted %(posted_on)s"
 msgid "posted %(posted_on)s"
 msgstr "posteado %(posted_on)s"
 msgstr "posteado %(posted_on)s"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "Removed user"
 msgid "Removed user"
 msgstr "Usuario eliminado"
 msgstr "Usuario eliminado"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "See post"
 msgid "See post"
 msgstr "Ver mensaje"
 msgstr "Ver mensaje"
 
 
@@ -997,7 +1066,7 @@ msgstr "Ningún usuario ha enlazado este mensaje."
 msgid "Are you sure you want to discard changes?"
 msgid "Are you sure you want to discard changes?"
 msgstr "¿Estás seguro de querer descartar los cambios?"
 msgstr "¿Estás seguro de querer descartar los cambios?"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Debes introducir un mensaje."
 msgstr "Debes introducir un mensaje."
 
 
@@ -1029,11 +1098,12 @@ msgstr "¿Estás seguro de querer descartar el hilo privado?"
 msgid "You have to enter at least one recipient."
 msgid "You have to enter at least one recipient."
 msgstr "Debes introducir al menos un destinatario."
 msgstr "Debes introducir al menos un destinatario."
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:15
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Debes darle un título al hilo."
 msgstr "Debes darle un título al hilo."
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Your thread has been posted."
 msgid "Your thread has been posted."
 msgstr "Tu hilo ha sido publicado."
 msgstr "Tu hilo ha sido publicado."
 
 
@@ -1041,12 +1111,13 @@ msgstr "Tu hilo ha sido publicado."
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgstr "Nombres de usuario separados por comas, ejemplo: Pepito, Josefa"
 msgstr "Nombres de usuario separados por comas, ejemplo: Pepito, Josefa"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:19
 msgid "Thread title"
 msgid "Thread title"
 msgstr "Título del hilo"
 msgstr "Título del hilo"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Post thread"
 msgid "Post thread"
 msgstr "Publicar hilo"
 msgstr "Publicar hilo"
 
 
@@ -1054,35 +1125,35 @@ msgstr "Publicar hilo"
 msgid "Are you sure you want to discard thread?"
 msgid "Are you sure you want to discard thread?"
 msgstr "¿Estás seguro de querer descartar el hilo?"
 msgstr "¿Estás seguro de querer descartar el hilo?"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18
 msgid "Closed"
 msgid "Closed"
 msgstr "Cerrado"
 msgstr "Cerrado"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:16
 msgid "Open"
 msgid "Open"
 msgstr "Abierto"
 msgstr "Abierto"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:21
 msgid "Hidden"
 msgid "Hidden"
 msgstr "Oculto"
 msgstr "Oculto"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Not hidden"
 msgid "Not hidden"
 msgstr "Público"
 msgstr "Público"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Unpinned"
 msgid "Unpinned"
 msgstr "No fijado"
 msgstr "No fijado"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned locally"
 msgid "Pinned locally"
 msgstr "Fijado localmente"
 msgstr "Fijado localmente"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned globally"
 msgid "Pinned globally"
@@ -1145,12 +1216,12 @@ msgstr[1] ""
 " %(show_value)s)."
 " %(show_value)s)."
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Hide"
 msgid "Hide"
 msgstr "Ocultar"
 msgstr "Ocultar"
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Unhide"
 msgid "Unhide"
 msgstr "Mostrar"
 msgstr "Mostrar"
 
 
@@ -1174,10 +1245,6 @@ msgid "By %(event_by)s %(event_on)s."
 msgstr "Por %(event_by)s %(events_on)s."
 msgstr "Por %(event_by)s %(events_on)s."
 
 
 #: static/misago/js/misago.js:9
 #: static/misago/js/misago.js:9
-msgid "IP recorded"
-msgstr "IP guardada"
-
-#: static/misago/js/misago.js:9
 msgid "Thread title has been changed from %(old_title)s."
 msgid "Thread title has been changed from %(old_title)s."
 msgstr "El título del hilo se ha cambiado de %(old_title)s."
 msgstr "El título del hilo se ha cambiado de %(old_title)s."
 
 
@@ -1268,23 +1335,23 @@ msgstr ""
 msgid "Post has been deleted."
 msgid "Post has been deleted."
 msgstr "El mensaje ha sido eliminado"
 msgstr "El mensaje ha sido eliminado"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link to this post:"
 msgid "Permament link to this post:"
 msgstr "Enlace permanente al mensaje:"
 msgstr "Enlace permanente al mensaje:"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link"
 msgid "Permament link"
 msgstr "Enlace permanente"
 msgstr "Enlace permanente"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Mark as best answer"
 msgid "Mark as best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Unmark best answer"
 msgid "Unmark best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
 msgid "This post was edited %(edits)s time."
 msgid "This post was edited %(edits)s time."
 msgid_plural "This post was edited %(edits)s times."
 msgid_plural "This post was edited %(edits)s times."
 msgstr[0] "El mensaje ha sido editado %(edits)s vez."
 msgstr[0] "El mensaje ha sido editado %(edits)s vez."
@@ -1294,17 +1361,15 @@ msgstr[1] "El mensaje ha sido editado %(edits)s veces."
 msgid "Changes history"
 msgid "Changes history"
 msgstr "Historial de cambios"
 msgstr "Historial de cambios"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Approve"
 msgid "Approve"
 msgstr "Aprobar"
 msgstr "Aprobar"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Move"
 msgid "Move"
 msgstr "Mover"
 msgstr "Mover"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Split"
 msgid "Split"
 msgstr "Separar"
 msgstr "Separar"
 
 
@@ -1317,6 +1382,7 @@ msgid "Move post"
 msgstr "Mover mensaje"
 msgstr "Mover mensaje"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You have to enter link to the other thread."
 msgid "You have to enter link to the other thread."
 msgstr "Debes introducir el enlace a otro hilo."
 msgstr "Debes introducir el enlace a otro hilo."
 
 
@@ -1366,7 +1432,7 @@ msgid "Close thread"
 msgstr "Cerrar hilo"
 msgstr "Cerrar hilo"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19
 msgid "Category"
 msgid "Category"
 msgstr "Categoría"
 msgstr "Categoría"
 
 
@@ -1417,32 +1483,32 @@ msgid_plural "%(users)s and %(likes)s other users like this."
 msgstr[0] "%(users)s y %(likes)s otro usuario dio like aquí."
 msgstr[0] "%(users)s y %(likes)s otro usuario dio like aquí."
 msgstr[1] "%(users)s y %(likes)s otro usuario dio like aquí."
 msgstr[1] "%(users)s y %(likes)s otro usuario dio like aquí."
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Liked"
 msgid "Liked"
 msgstr "Liked"
 msgstr "Liked"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Like"
 msgid "Like"
 msgstr "Like"
 msgstr "Like"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
 msgid "Reply"
 msgid "Reply"
 msgstr "Responder"
 msgstr "Responder"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "New post"
 msgid "New post"
 msgstr "Nuevo mensaje"
 msgstr "Nuevo mensaje"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:20
 msgid "New"
 msgid "New"
 msgstr "Nuevos"
 msgstr "Nuevos"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "This post is protected and may not be edited."
 msgid "This post is protected and may not be edited."
 msgstr "Este mensaje está protegido y no puede ser editado."
 msgstr "Este mensaje está protegido y no puede ser editado."
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "protected"
 msgid "protected"
 msgstr "protegido"
 msgstr "protegido"
 
 
@@ -1490,69 +1556,68 @@ msgstr "No compartes detalles con otros."
 msgid "%(username)s is not sharing any details with others."
 msgid "%(username)s is not sharing any details with others."
 msgstr "%(username)s no comparte detalles con otros."
 msgstr "%(username)s no comparte detalles con otros."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
 msgid "Details"
 msgid "Details"
 msgstr "Detalles"
 msgstr "Detalles"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s's details have been updated."
 msgid "%(username)s's details have been updated."
 msgstr "Los detalles de %(username)s han sido actualizados."
 msgstr "Los detalles de %(username)s han sido actualizados."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have no started threads."
 msgid "You have no started threads."
 msgstr "No has iniciado ningún hilo."
 msgstr "No has iniciado ningún hilo."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s started no threads."
 msgid "%(username)s started no threads."
 msgstr "%(username)s no ha iniciado ningún hilo."
 msgstr "%(username)s no ha iniciado ningún hilo."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have started %(threads)s thread."
 msgid "You have started %(threads)s thread."
 msgid_plural "You have started %(threads)s threads."
 msgid_plural "You have started %(threads)s threads."
 msgstr[0] "Has iniciado %(threads)s hilo."
 msgstr[0] "Has iniciado %(threads)s hilo."
 msgstr[1] "Has iniciado %(threads)s hilos."
 msgstr[1] "Has iniciado %(threads)s hilos."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has started %(threads)s thread."
 msgid "%(username)s has started %(threads)s thread."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgstr[0] "%(username)s ha iniciado %(threads)s hilo."
 msgstr[0] "%(username)s ha iniciado %(threads)s hilo."
 msgstr[1] "%(username)s ha iniciado %(threads)s hilos."
 msgstr[1] "%(username)s ha iniciado %(threads)s hilos."
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:13
 msgid "Loading..."
 msgid "Loading..."
 msgstr "Cargando..."
 msgstr "Cargando..."
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:20
 #: static/misago/js/misago.js:20
 msgid "Threads"
 msgid "Threads"
 msgstr "Hilos"
 msgstr "Hilos"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted no messages."
 msgid "You have posted no messages."
 msgstr "No has publicado mensajes."
 msgstr "No has publicado mensajes."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s posted no messages."
 msgid "%(username)s posted no messages."
 msgstr "%(username)s no ha publicado mensajes."
 msgstr "%(username)s no ha publicado mensajes."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted %(posts)s message."
 msgid "You have posted %(posts)s message."
 msgid_plural "You have posted %(posts)s messages."
 msgid_plural "You have posted %(posts)s messages."
 msgstr[0] "Has publicado %(posts)s mensaje."
 msgstr[0] "Has publicado %(posts)s mensaje."
 msgstr[1] "Has publicado %(posts)s mensajes"
 msgstr[1] "Has publicado %(posts)s mensajes"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has posted %(posts)s message."
 msgid "%(username)s has posted %(posts)s message."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgstr[0] "%(username)s ha publicado %(posts)s mensaje."
 msgstr[0] "%(username)s ha publicado %(posts)s mensaje."
 msgstr[1] "%(username)s ha publicado %(posts)s mensajes."
 msgstr[1] "%(username)s ha publicado %(posts)s mensajes."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "Posts"
 msgid "Posts"
 msgstr "Mensajes"
 msgstr "Mensajes"
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:12
 msgid "Show more (%(more)s)"
 msgid "Show more (%(more)s)"
 msgstr "Mostrar más (%(more)s)"
 msgstr "Mostrar más (%(more)s)"
 
 
@@ -1643,6 +1708,7 @@ msgid "Joined %(joined_on)s"
 msgstr "Registrado %(joined_on)s"
 msgstr "Registrado %(joined_on)s"
 
 
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Moderation"
 msgid "Moderation"
 msgstr "Moderación"
 msgstr "Moderación"
 
 
@@ -1702,45 +1768,45 @@ msgstr ""
 msgid "Avatar controls"
 msgid "Avatar controls"
 msgstr "Controles de avatar"
 msgstr "Controles de avatar"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Username has been changed."
 msgid "Username has been changed."
 msgstr "El nombre de usuario ha sido cambiado."
 msgstr "El nombre de usuario ha sido cambiado."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account, threads, posts and other content has been deleted."
 "%(username)s's account, threads, posts and other content has been deleted."
 msgstr ""
 msgstr ""
 "La cuenta de %(username)s's, los hilos, los mensajes y otro contenido ha "
 "La cuenta de %(username)s's, los hilos, los mensajes y otro contenido ha "
 "sido eliminado."
 "sido eliminado."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account has been deleted and other content has been hidden."
 "%(username)s's account has been deleted and other content has been hidden."
 msgstr ""
 msgstr ""
 "La cuenta de %(username)s ha sido eliminada y otro contenido ha sido "
 "La cuenta de %(username)s ha sido eliminada y otro contenido ha sido "
 "ocultado."
 "ocultado."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete %(username)s"
 msgid "Delete %(username)s"
 msgstr "Eliminar %(username)s"
 msgstr "Eliminar %(username)s"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Please wait... (%(countdown)ss)"
 msgid "Please wait... (%(countdown)ss)"
 msgstr "Por favor, espera... (%(countdown)ss)"
 msgstr "Por favor, espera... (%(countdown)ss)"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "User content"
 msgid "User content"
 msgstr "Contenido de usuario"
 msgstr "Contenido de usuario"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete together with user's account"
 msgid "Delete together with user's account"
 msgstr "Borrar conjuntamente con la cuenta del usuario"
 msgstr "Borrar conjuntamente con la cuenta del usuario"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Hide after deleting user's account"
 msgid "Hide after deleting user's account"
 msgstr "Ocultar tras eliminar la cuenta del usuario"
 msgstr "Ocultar tras eliminar la cuenta del usuario"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Return to users list"
 msgid "Return to users list"
 msgstr "Volver a la lista de usuarios"
 msgstr "Volver a la lista de usuarios"
 
 
@@ -1808,32 +1874,32 @@ msgstr "Se han cerrado los registros debido a un error inesperado."
 msgid "Register"
 msgid "Register"
 msgstr "Registro"
 msgstr "Registro"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Join with %(site)s"
 msgid "Join with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Or create forum account:"
 msgid "Or create forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Username"
 msgid "Username"
 msgstr "Nombre de usuario"
 msgstr "Nombre de usuario"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "E-mail"
 msgid "E-mail"
 msgstr "E-mail"
 msgstr "E-mail"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Password"
 msgid "Password"
 msgstr "Contraseña"
 msgstr "Contraseña"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Register account"
 msgid "Register account"
 msgstr "Registrar cuenta"
 msgstr "Registrar cuenta"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but you need to activate it "
 "%(username)s, your account has been created but you need to activate it "
 "before you will be able to sign in."
 "before you will be able to sign in."
@@ -1841,7 +1907,7 @@ msgstr ""
 "%(username)s, tu cuenta ha sido creada, pero requiere ser activada antes de "
 "%(username)s, tu cuenta ha sido creada, pero requiere ser activada antes de "
 "que puedas iniciar sesión."
 "que puedas iniciar sesión."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but board administrator will "
 "%(username)s, your account has been created but board administrator will "
 "have to activate it before you will be able to sign in."
 "have to activate it before you will be able to sign in."
@@ -1849,7 +1915,7 @@ msgstr ""
 "%(username)s, tu cuenta ha sido creada pero la administración del sitio debe"
 "%(username)s, tu cuenta ha sido creada pero la administración del sitio debe"
 " activarla antes de que puedas iniciar sesión."
 " activarla antes de que puedas iniciar sesión."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid ""
 msgid ""
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "activate your account."
 "activate your account."
@@ -1857,32 +1923,31 @@ msgstr ""
 "Hemos enviado un correo a %(email)s con un enlace al que deberás acceder "
 "Hemos enviado un correo a %(email)s con un enlace al que deberás acceder "
 "para activar tu cuenta."
 "para activar tu cuenta."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgstr "Te enviaremos un correo a %(email)s en su momento."
 msgstr "Te enviaremos un correo a %(email)s en su momento."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Registration complete"
 msgid "Registration complete"
 msgstr "Registro completo"
 msgstr "Registro completo"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:25
 msgid "Enter a valid email address."
 msgid "Enter a valid email address."
 msgstr "Introduce un correo electrónico válido."
 msgstr "Introduce un correo electrónico válido."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Your e-mail address"
 msgid "Your e-mail address"
 msgstr "Tu correo electrónico"
 msgstr "Tu correo electrónico"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Send link"
 msgid "Send link"
 msgstr "Enviar enlace"
 msgstr "Enviar enlace"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Activation link was sent to %(email)s"
 msgid "Activation link was sent to %(email)s"
 msgstr "El enlace de activación ha sido enviado a %(email)s"
 msgstr "El enlace de activación ha sido enviado a %(email)s"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Request another link"
 msgid "Request another link"
 msgstr "Pedir otro enlace de activación"
 msgstr "Pedir otro enlace de activación"
 
 
@@ -1949,41 +2014,41 @@ msgstr "No existen usuarios que coincidan con tu criterio de búsqueda."
 msgid "Enter at least two characters to search users."
 msgid "Enter at least two characters to search users."
 msgstr "Introduce al menos dos caracteres para buscar usuarios."
 msgstr "Introduce al menos dos caracteres para buscar usuarios."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Rellena ambos campos."
 msgstr "Rellena ambos campos."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Activate account"
 msgid "Activate account"
 msgstr "Activar cuenta"
 msgstr "Activar cuenta"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Sign in with %(site)s"
 msgid "Sign in with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Or use your forum account:"
 msgid "Or use your forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Nombre de usuario o e-mail"
 msgstr "Nombre de usuario o e-mail"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Forgot password?"
 msgid "Forgot password?"
 msgstr "¿Contraseña olvidada?"
 msgstr "¿Contraseña olvidada?"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid ""
 msgid ""
-"%(username)s, your account has been created and you has been signed in to "
+"%(username)s, your account has been created and you have been signed in to "
 "it."
 "it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Registration completed!"
 msgid "Registration completed!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Return to forum index"
 msgid "Return to forum index"
 msgstr ""
 msgstr ""
 
 
@@ -1992,6 +2057,10 @@ msgid "Sign in with %(backend)s"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
+msgid "You need to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:15
 msgid "Your e-mail address has been verified by %(backend)s."
 msgid "Your e-mail address has been verified by %(backend)s."
 msgstr ""
 msgstr ""
 
 
@@ -2012,7 +2081,7 @@ msgid "Edit title"
 msgstr "Editar título"
 msgstr "Editar título"
 
 
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:20
 msgid "Unapproved"
 msgid "Unapproved"
 msgstr "No aprobados"
 msgstr "No aprobados"
 
 
@@ -2020,7 +2089,7 @@ msgstr "No aprobados"
 msgid "Unapproved posts"
 msgid "Unapproved posts"
 msgstr "Mensajes no aprobados"
 msgstr "Mensajes no aprobados"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:15 static/misago/js/misago.js:18
 msgid "%(replies)s reply"
 msgid "%(replies)s reply"
 msgid_plural "%(replies)s replies"
 msgid_plural "%(replies)s replies"
 msgstr[0] "%(replies)s respuesta"
 msgstr[0] "%(replies)s respuesta"
@@ -2046,19 +2115,19 @@ msgstr ""
 "¿Estás seguro de que quieres eliminar los mensajes seleccionados? Esta "
 "¿Estás seguro de que quieres eliminar los mensajes seleccionados? Esta "
 "opción no puede deshacerse."
 "opción no puede deshacerse."
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Merge"
 msgid "Merge"
 msgstr "Mezclar"
 msgstr "Mezclar"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Unprotect"
 msgid "Unprotect"
 msgstr "Desproteger"
 msgstr "Desproteger"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "%(username)s on %(posted_on)s"
 msgid "%(username)s on %(posted_on)s"
 msgstr "%(username)s en %(posted_on)s"
 msgstr "%(username)s en %(posted_on)s"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "One or more posts could not be changed:"
 msgid "One or more posts could not be changed:"
 msgstr "Uno o más mensajes no pueden ser cambiados:"
 msgstr "Uno o más mensajes no pueden ser cambiados:"
 
 
@@ -2118,19 +2187,19 @@ msgstr "Fijado localmente"
 msgid "Unpin"
 msgid "Unpin"
 msgstr "No fijar"
 msgstr "No fijar"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Merge thread"
 msgid "Merge thread"
 msgstr "Mezclar hilo"
 msgstr "Mezclar hilo"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been merged with other one."
 msgid "Thread has been merged with other one."
 msgstr "El hilo ha sido mezclado con otro."
 msgstr "El hilo ha sido mezclado con otro."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Link to thread you want to merge with"
 msgid "Link to thread you want to merge with"
 msgstr "Enlace al hilo con el que quieres mezclar"
 msgstr "Enlace al hilo con el que quieres mezclar"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid ""
 msgid ""
 "Merge will delete current thread and move its contents to the thread "
 "Merge will delete current thread and move its contents to the thread "
 "specified here."
 "specified here."
@@ -2138,19 +2207,19 @@ msgstr ""
 "La tarea de mezclado eliminará el hilo y su contenido y lo moverá al hilo "
 "La tarea de mezclado eliminará el hilo y su contenido y lo moverá al hilo "
 "que especifiques a continuación."
 "que especifiques a continuación."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Move thread"
 msgid "Move thread"
 msgstr "Mover hilo"
 msgstr "Mover hilo"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You can't move this thread at the moment."
 msgid "You can't move this thread at the moment."
 msgstr "No puedes mover este hilo en este momento."
 msgstr "No puedes mover este hilo en este momento."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been moved."
 msgid "Thread has been moved."
 msgstr "El hilo se ha movido."
 msgstr "El hilo se ha movido."
 
 
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "New category"
 msgid "New category"
 msgstr "Nueva categoría"
 msgstr "Nueva categoría"
 
 
@@ -2188,15 +2257,15 @@ msgstr "Habilitado"
 msgid "Disabled"
 msgid "Disabled"
 msgstr "Deshabilitado"
 msgstr "Deshabilitado"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Unsubscribe"
 msgid "Unsubscribe"
 msgstr "Desuscribirse"
 msgstr "Desuscribirse"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe"
 msgid "Subscribe"
 msgstr "Suscribirse"
 msgstr "Suscribirse"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe with e-mail"
 msgid "Subscribe with e-mail"
 msgstr "Notificaciones por email"
 msgstr "Notificaciones por email"
 
 
@@ -2228,11 +2297,11 @@ msgstr "Último mensaje"
 msgid "Options"
 msgid "Options"
 msgstr "Opciones"
 msgstr "Opciones"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid "Add poll"
 msgid "Add poll"
 msgstr "Añadir encuesta"
 msgstr "Añadir encuesta"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid ""
 msgid ""
 "There is %(threads)s new or updated thread. Click this message to show it."
 "There is %(threads)s new or updated thread. Click this message to show it."
 msgid_plural ""
 msgid_plural ""
@@ -2253,7 +2322,7 @@ msgstr ""
 msgid "Change subscription"
 msgid "Change subscription"
 msgstr "Cambiar suscripción"
 msgstr "Cambiar suscripción"
 
 
-#: static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19
 msgid "Start thread"
 msgid "Start thread"
 msgstr "Crear hilo"
 msgstr "Crear hilo"
 
 
@@ -2333,7 +2402,7 @@ msgstr "Fijar los hilos localmente"
 msgid "Unpin threads"
 msgid "Unpin threads"
 msgstr "Soltar hilo"
 msgstr "Soltar hilo"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Move threads"
 msgid "Move threads"
 msgstr "Mover hilos"
 msgstr "Mover hilos"
 
 
@@ -2369,7 +2438,7 @@ msgstr "Moderar hilos"
 msgid "One or more threads could not be deleted:"
 msgid "One or more threads could not be deleted:"
 msgstr "Uno o más hilos no pueden ser eliminados:"
 msgstr "Uno o más hilos no pueden ser eliminados:"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You can't move threads because there are no categories you are allowed to "
 "You can't move threads because there are no categories you are allowed to "
 "move them to."
 "move them to."
@@ -2384,11 +2453,11 @@ msgstr ""
 "Necesitas permisos para empezar hilos en la categoría para poder mezclar "
 "Necesitas permisos para empezar hilos en la categoría para poder mezclar "
 "hilos en ela."
 "hilos en ela."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Selected threads were moved."
 msgid "Selected threads were moved."
 msgstr "Los hilos seleccionados se han movido."
 msgstr "Los hilos seleccionados se han movido."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You need permission to start threads in category to be able to move threads "
 "You need permission to start threads in category to be able to move threads "
 "to it."
 "to it."
@@ -2396,51 +2465,51 @@ msgstr ""
 "Necesitas permisos para empezar hilos en la categoría para poder mover hilos"
 "Necesitas permisos para empezar hilos en la categoría para poder mover hilos"
 " a ella"
 " a ella"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select all"
 msgid "Select all"
 msgstr "Seleccionar todo"
 msgstr "Seleccionar todo"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select none"
 msgid "Select none"
 msgstr "Cancelar selección"
 msgstr "Cancelar selección"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All"
 msgid "All"
 msgstr "Todo"
 msgstr "Todo"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All threads"
 msgid "All threads"
 msgstr "Todos los hilos"
 msgstr "Todos los hilos"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My"
 msgid "My"
 msgstr "Míos"
 msgstr "Míos"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My threads"
 msgid "My threads"
 msgstr "Mis hilos"
 msgstr "Mis hilos"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "New threads"
 msgid "New threads"
 msgstr "Nuevos hilos"
 msgstr "Nuevos hilos"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread"
 msgid "Unread"
 msgstr "No leídos"
 msgstr "No leídos"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread threads"
 msgid "Unread threads"
 msgstr "Hilos no leídos"
 msgstr "Hilos no leídos"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed"
 msgid "Subscribed"
 msgstr "Suscrito"
 msgstr "Suscrito"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed threads"
 msgid "Subscribed threads"
 msgstr "Hilos a los que estás suscrito"
 msgstr "Hilos a los que estás suscrito"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unapproved content"
 msgid "Unapproved content"
 msgstr "Contenido no aprobado"
 msgstr "Contenido no aprobado"
 
 
@@ -2456,7 +2525,8 @@ msgstr "Inicia sesión o registrate para comenzar a participar en los foros."
 msgid "You have unread private threads!"
 msgid "You have unread private threads!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20 static/misago/js/misago.js:22
+#: static/misago/js/misago.js:20 static/misago/js/misago.js:21
+#: static/misago/js/misago.js:23
 msgid "Private threads"
 msgid "Private threads"
 msgstr "Hilos privados"
 msgstr "Hilos privados"
 
 
@@ -2464,67 +2534,67 @@ msgstr "Hilos privados"
 msgid "Are you sure you want to sign out?"
 msgid "Are you sure you want to sign out?"
 msgstr "¿Estás seguro de que quieres cerrar sesión?"
 msgstr "¿Estás seguro de que quieres cerrar sesión?"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "See your profile"
 msgid "See your profile"
 msgstr "Ver tu perfil"
 msgstr "Ver tu perfil"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change options"
 msgid "Change options"
 msgstr "Cambiar opciones"
 msgstr "Cambiar opciones"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change avatar"
 msgid "Change avatar"
 msgstr "Cambiar avatar"
 msgstr "Cambiar avatar"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Log out"
 msgid "Log out"
 msgstr "Cerrar sesión"
 msgstr "Cerrar sesión"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned until %(ban_expires)s"
 msgid "%(username)s is banned until %(ban_expires)s"
 msgstr "%(username)s ha sido banneado hasta %(ban_expires)s"
 msgstr "%(username)s ha sido banneado hasta %(ban_expires)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned"
 msgid "%(username)s is banned"
 msgstr "%(username)s ha sido baneado"
 msgstr "%(username)s ha sido baneado"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is hiding presence"
 msgid "%(username)s is hiding presence"
 msgstr "%(username)s está ocultando su presencia"
 msgstr "%(username)s está ocultando su presencia"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online (hidden)"
 msgid "%(username)s is online (hidden)"
 msgstr "%(username)s está online (oculto)"
 msgstr "%(username)s está online (oculto)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgstr "La última actividad de %(username)s el %(last_click)s (oculto)"
 msgstr "La última actividad de %(username)s el %(last_click)s (oculto)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online"
 msgid "%(username)s is online"
 msgstr "%(username)s está conectado"
 msgstr "%(username)s está conectado"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s"
 msgid "%(username)s was last seen %(last_click)s"
 msgstr "La última actividad de %(username)s ha sido %(last_click)s"
 msgstr "La última actividad de %(username)s ha sido %(last_click)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Banned"
 msgid "Banned"
 msgstr "Baneado"
 msgstr "Baneado"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online (hidden)"
 msgid "Online (hidden)"
 msgstr "En línea (oculto)"
 msgstr "En línea (oculto)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline (hidden)"
 msgid "Offline (hidden)"
 msgstr "Desconectado (oculto)"
 msgstr "Desconectado (oculto)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online"
 msgid "Online"
 msgstr "En línea"
 msgstr "En línea"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline"
 msgid "Offline"
 msgstr "Desconectado"
 msgstr "Desconectado"
 
 
@@ -2538,19 +2608,19 @@ msgstr[1] "%(followers)s seguidores"
 msgid "No users have posted any new messages during last %(days)s days."
 msgid "No users have posted any new messages during last %(days)s days."
 msgstr "Los usuarios no han escrito en los últimos %(days)s days."
 msgstr "Los usuarios no han escrito en los últimos %(days)s days."
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Rank"
 msgid "Rank"
 msgstr "Rango"
 msgstr "Rango"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Ranked posts"
 msgid "Ranked posts"
 msgstr "Mensajes de rango"
 msgstr "Mensajes de rango"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "Total posts"
 msgid "Total posts"
 msgstr "Mensajes totales"
 msgstr "Mensajes totales"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgstr[0] "%(posters)s es el forero más activo del último %(days)s día."
 msgstr[0] "%(posters)s es el forero más activo del último %(days)s día."
@@ -2582,7 +2652,7 @@ msgstr "sí"
 msgid "no"
 msgid "no"
 msgstr "no"
 msgstr "no"
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid ""
 msgid ""
 "Private threads are threads which only those that started them and those "
 "Private threads are threads which only those that started them and those "
 "they have invited may see and participate in."
 "they have invited may see and participate in."
@@ -2590,19 +2660,19 @@ msgstr ""
 "Los hilos privados son hilos en los que puedes hablar con los participantes "
 "Los hilos privados son hilos en los que puedes hablar con los participantes "
 "que tú elijas, ellos serán los únicos que podrán leer y escribir."
 "que tú elijas, ellos serán los únicos que podrán leer y escribir."
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid "You aren't participating in any private threads."
 msgid "You aren't participating in any private threads."
 msgstr "No participas en ningún hilo privado."
 msgstr "No participas en ningún hilo privado."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Lost connection with application."
 msgid "Lost connection with application."
 msgstr "Se ha perdido la conexión con la aplicación."
 msgstr "Se ha perdido la conexión con la aplicación."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Action link is invalid."
 msgid "Action link is invalid."
 msgstr "Enlace de acción inválido."
 msgstr "Enlace de acción inválido."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Unknown error has occured."
 msgid "Unknown error has occured."
 msgstr "Ups, parece que algo ha ido mal..."
 msgstr "Ups, parece que algo ha ido mal..."
 
 
@@ -2638,15 +2708,23 @@ msgstr "Estás haciendo una encuesta, ¿quieres descartarla?"
 msgid "You don't have permission to perform this action."
 msgid "You don't have permission to perform this action."
 msgstr "No tienes permisos para realizar esta acción."
 msgstr "No tienes permisos para realizar esta acción."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "You are banned"
 msgid "You are banned"
 msgstr "Has sido baneado"
 msgstr "Has sido baneado"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "This field is required."
 msgid "This field is required."
 msgstr "Se requiere este campo."
 msgstr "Se requiere este campo."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
+msgid "You have to accept the terms of service."
+msgstr ""
+
+#: static/misago/js/misago.js:25
+msgid "You have to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at least %(limit_value)s character (it has "
 "Ensure this value has at least %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2660,7 +2738,7 @@ msgstr[1] ""
 "Asegúrate de que este valor tiene al menos %(limit_value)s caracteres (it "
 "Asegúrate de que este valor tiene al menos %(limit_value)s caracteres (it "
 "has %(show_value)s)."
 "has %(show_value)s)."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at most %(limit_value)s character (it has "
 "Ensure this value has at most %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2674,14 +2752,14 @@ msgstr[1] ""
 "Asegúrate de que el valor es al menos %(limit_value)s caracteres (es de "
 "Asegúrate de que el valor es al menos %(limit_value)s caracteres (es de "
 "%(show_value)s)."
 "%(show_value)s)."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username must be at least %(limit_value)s character long."
 msgid "Username must be at least %(limit_value)s character long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgstr[0] "El nombre de usuario debe tener al menos %(limit_value)s caracter."
 msgstr[0] "El nombre de usuario debe tener al menos %(limit_value)s caracter."
 msgstr[1] ""
 msgstr[1] ""
 "El nombre de usuario debe tener al menos %(limit_value)s caracteres."
 "El nombre de usuario debe tener al menos %(limit_value)s caracteres."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgstr[0] ""
 msgstr[0] ""
@@ -2689,13 +2767,13 @@ msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 "El nombre de usuario no puede ser mayor de %(limit_value)s caracteres."
 "El nombre de usuario no puede ser mayor de %(limit_value)s caracteres."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username can only contain latin alphabet letters and digits."
 msgid "Username can only contain latin alphabet letters and digits."
 msgstr ""
 msgstr ""
 "El nombre de usuario sólo puede contener caracteres latinos, letras y "
 "El nombre de usuario sólo puede contener caracteres latinos, letras y "
 "dígitos."
 "dígitos."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid_plural ""
 msgid_plural ""
 "Valid password must be at least %(limit_value)s characters long."
 "Valid password must be at least %(limit_value)s characters long."

BIN
misago/locale/fr/LC_MESSAGES/django.mo


+ 726 - 303
misago/locale/fr/LC_MESSAGES/django.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-31 23:36+0000\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: carine hejl <carinelg@yahoo.fr>, 2017\n"
 "Last-Translator: carine hejl <carinelg@yahoo.fr>, 2017\n"
 "Language-Team: French (https://www.transifex.com/misago/teams/65369/fr/)\n"
 "Language-Team: French (https://www.transifex.com/misago/teams/65369/fr/)\n"
@@ -25,7 +25,7 @@ msgstr ""
 msgid "Permissions"
 msgid "Permissions"
 msgstr "Autorisations"
 msgstr "Autorisations"
 
 
-#: acl/admin.py:33 users/forms/admin.py:414
+#: acl/admin.py:33 users/forms/admin.py:416
 msgid "User roles"
 msgid "User roles"
 msgstr " Rôles d'utilisateurs"
 msgstr " Rôles d'utilisateurs"
 
 
@@ -143,17 +143,17 @@ msgstr "Vous devez sélectionner au moins un élément."
 msgid "Action is not allowed."
 msgid "Action is not allowed."
 msgstr "Cette action n'est pas autorisée."
 msgstr "Cette action n'est pas autorisée."
 
 
-#: admin/views/index.py:70
+#: admin/views/index.py:83
 #, python-format
 #, python-format
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgstr "Caduc : %(current)s ! (dernier : %(latest)s)"
 msgstr "Caduc : %(current)s ! (dernier : %(latest)s)"
 
 
-#: admin/views/index.py:78
+#: admin/views/index.py:91
 #, python-format
 #, python-format
 msgid "Up to date! (%(current)s)"
 msgid "Up to date! (%(current)s)"
 msgstr "Mis à jour ! (%(current)s)"
 msgstr "Mis à jour ! (%(current)s)"
 
 
-#: admin/views/index.py:87
+#: admin/views/index.py:100
 msgid "Failed to connect to GitHub API. Try again later."
 msgid "Failed to connect to GitHub API. Try again later."
 msgstr "Échec de la connexion à l'API GitHub. Réessayez plus tard."
 msgstr "Échec de la connexion à l'API GitHub. Réessayez plus tard."
 
 
@@ -172,11 +172,11 @@ msgstr "Hiérarchie des catégories"
 msgid "Category roles"
 msgid "Category roles"
 msgstr "Rôles de catégories"
 msgstr "Rôles de catégories"
 
 
-#: categories/forms.py:47 users/forms/admin.py:388
+#: categories/forms.py:47 users/forms/admin.py:390
 msgid "Name"
 msgid "Name"
 msgstr "Nom"
 msgstr "Nom"
 
 
-#: categories/forms.py:49 users/forms/admin.py:404
+#: categories/forms.py:49 users/forms/admin.py:406
 msgid "Description"
 msgid "Description"
 msgstr "Description"
 msgstr "Description"
 
 
@@ -184,7 +184,7 @@ msgstr "Description"
 msgid "Optional description explaining category intented purpose."
 msgid "Optional description explaining category intented purpose."
 msgstr "Description facultative expliquant l'objectif de la catégorie."
 msgstr "Description facultative expliquant l'objectif de la catégorie."
 
 
-#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:421
+#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:423
 msgid "CSS class"
 msgid "CSS class"
 msgstr "Classe CSS"
 msgstr "Classe CSS"
 
 
@@ -204,7 +204,7 @@ msgstr "Catégorie fermée"
 msgid "Only members with valid permissions can post in closed categories."
 msgid "Only members with valid permissions can post in closed categories."
 msgstr "Seul les membres autorisés peuvent écrire dans une catégorie close."
 msgstr "Seul les membres autorisés peuvent écrire dans une catégorie close."
 
 
-#: categories/forms.py:75 templates/misago/admin/index.html:83
+#: categories/forms.py:75 templates/misago/admin/index.html:110
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/profile/threads.html:8
 #: templates/misago/profile/threads.html:8
@@ -217,7 +217,7 @@ msgstr "Seul les membres autorisés peuvent écrire dans une catégorie close."
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
-#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:89
+#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:97
 msgid "Threads"
 msgid "Threads"
 msgstr "Fils de discussion"
 msgstr "Fils de discussion"
 
 
@@ -539,7 +539,7 @@ msgstr "Demande d'authentification invalide."
 
 
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: templates/misago/admin/users/edit.html:78
 #: templates/misago/admin/users/edit.html:78
-#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:590
+#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:604
 msgid "Yes"
 msgid "Yes"
 msgstr "Oui"
 msgstr "Oui"
 
 
@@ -553,7 +553,7 @@ msgstr "Oui"
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
-#: users/forms/admin.py:591 users/models/user.py:145
+#: users/forms/admin.py:605 users/models/user.py:147
 msgid "No"
 msgid "No"
 msgstr "Non"
 msgstr "Non"
 
 
@@ -656,7 +656,72 @@ msgstr "La valeur doit contenir des caractères alpha-numériques."
 msgid "Value is too long."
 msgid "Value is too long."
 msgstr "La valeur est trop longue."
 msgstr "La valeur est trop longue."
 
 
+#: legal/admin.py:25 templates/misago/admin/users/edit.html:216
+msgid "Agreements"
+msgstr ""
+
+#: legal/api.py:18
+msgid "You have already accepted this agreement."
+msgstr ""
+
+#: legal/api.py:27
+msgid "You need to submit a valid choice."
+msgstr ""
+
+#: legal/forms.py:10 legal/forms.py:60
+#: templates/misago/admin/agreements/list.html:18
+#: templates/misago/admin/attachmenttypes/list.html:16
+#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:589
+msgid "Type"
+msgstr "Type"
+
+#: legal/forms.py:12 templates/misago/admin/agreements/list.html:16
+#: templates/misago/admin/ranks/list.html:17
+msgid "Title"
+msgstr "Titre"
+
+#: legal/forms.py:13
+msgid "Optional, leave empty for agreement to be named after its type."
+msgstr ""
+
+#: legal/forms.py:17
+msgid "Set as active for its type"
+msgstr ""
+
+#: legal/forms.py:19
+msgid ""
+"If other agreement is already active for this type, it will be unset and "
+"replaced with this one. Misago will ask users who didn't accept this "
+"agreement to do so before allowing them to continue using the site's "
+"features."
+msgstr ""
+
+#: legal/forms.py:27
+msgid "Link"
+msgstr ""
+
+#: legal/forms.py:28
+msgid "If your agreement is located on other page, enter here a link to it."
+msgstr ""
+
+#: legal/forms.py:32
+msgid "Text"
+msgstr ""
+
+#: legal/forms.py:33
+msgid "You can use Markdown syntax for rich text elements."
+msgstr ""
+
+#: legal/forms.py:46
+msgid "Please fill in agreement link or text."
+msgstr ""
+
+#: legal/forms.py:65
+msgid "Content"
+msgstr ""
+
 #: legal/migrations/0001_initial.py:16
 #: legal/migrations/0001_initial.py:16
+#: legal/migrations/0003_create_agreements_from_settings.py:57
 msgid "Legal information"
 msgid "Legal information"
 msgstr "Informations légales"
 msgstr "Informations légales"
 
 
@@ -706,7 +771,7 @@ msgstr ""
 msgid "Policy title"
 msgid "Policy title"
 msgstr "Titre de la politique"
 msgstr "Titre de la politique"
 
 
-#: legal/migrations/0001_initial.py:64 legal/views.py:46
+#: legal/migrations/0001_initial.py:64 legal/models.py:43
 #: templates/misago/footer.html:27
 #: templates/misago/footer.html:27
 msgid "Privacy policy"
 msgid "Privacy policy"
 msgstr "Politique de confidentialite"
 msgstr "Politique de confidentialite"
@@ -735,21 +800,85 @@ msgstr ""
 "les balises Misago sont disponibles pour la mise en forme."
 "les balises Misago sont disponibles pour la mise en forme."
 
 
 #: legal/migrations/0001_initial.py:105
 #: legal/migrations/0001_initial.py:105
+#: legal/migrations/0003_create_agreements_from_settings.py:62
 msgid "Footnote"
 msgid "Footnote"
 msgstr "Note de bas-de-page"
 msgstr "Note de bas-de-page"
 
 
 #: legal/migrations/0001_initial.py:106
 #: legal/migrations/0001_initial.py:106
+#: legal/migrations/0003_create_agreements_from_settings.py:63
 msgid "Short message displayed in forum footer."
 msgid "Short message displayed in forum footer."
 msgstr "Message court affiché en bas-de-page."
 msgstr "Message court affiché en bas-de-page."
 
 
 #: legal/migrations/0001_initial.py:107
 #: legal/migrations/0001_initial.py:107
+#: legal/migrations/0003_create_agreements_from_settings.py:64
 msgid "Forum footer"
 msgid "Forum footer"
 msgstr "Pied-de-page du forum"
 msgstr "Pied-de-page du forum"
 
 
-#: legal/views.py:65 templates/misago/footer.html:22
+#: legal/migrations/0003_create_agreements_from_settings.py:58
+msgid ""
+"Those settings allow you to set additional legal information for your forum."
+msgstr ""
+
+#: legal/models.py:42 templates/misago/footer.html:22
 msgid "Terms of service"
 msgid "Terms of service"
 msgstr "Termes de service"
 msgstr "Termes de service"
 
 
+#: legal/views/admin.py:17
+msgid "Requested agreement does not exist."
+msgstr ""
+
+#: legal/views/admin.py:29 threads/views/admin/attachments.py:24
+#: users/views/admin/bans.py:24 users/views/admin/datadownloads.py:20
+#: users/views/admin/users.py:56
+msgid "From newest"
+msgstr "Du plus récent"
+
+#: legal/views/admin.py:30 threads/views/admin/attachments.py:25
+#: users/views/admin/bans.py:25 users/views/admin/datadownloads.py:21
+#: users/views/admin/users.py:57
+msgid "From oldest"
+msgstr "Du plus ancien"
+
+#: legal/views/admin.py:33
+msgid "With agreements: 0"
+msgstr ""
+
+#: legal/views/admin.py:34
+msgid "Select agreements"
+msgstr ""
+
+#: legal/views/admin.py:38
+msgid "Delete agreements"
+msgstr ""
+
+#: legal/views/admin.py:39
+msgid "Are you sure you want to delete those agreements?"
+msgstr ""
+
+#: legal/views/admin.py:49
+msgid "Selected agreements have been deleted."
+msgstr ""
+
+#: legal/views/admin.py:53
+#, python-format
+msgid "New agreement \"%(title)s\" has been saved."
+msgstr ""
+
+#: legal/views/admin.py:63
+#, python-format
+msgid "Agreement \"%(title)s\" has been edited."
+msgstr ""
+
+#: legal/views/admin.py:77
+#, python-format
+msgid "Agreement \"%(title)s\" has been deleted."
+msgstr ""
+
+#: legal/views/admin.py:85
+#, python-format
+msgid "Agreement \"%(title)s\" has been set as active for type \"%(type)s\"."
+msgstr ""
+
 #: markup/finalise.py:22
 #: markup/finalise.py:22
 #, python-format
 #, python-format
 msgid "%(title)s has written:"
 msgid "%(title)s has written:"
@@ -759,15 +888,15 @@ msgstr "%(title)s a écrit :"
 msgid "Quoted message:"
 msgid "Quoted message:"
 msgstr "Message cité :"
 msgstr "Message cité :"
 
 
-#: project_template/project_name/settings.py:388
+#: project_template/project_name/settings.py:424
 msgid "Personal"
 msgid "Personal"
 msgstr "Personnel"
 msgstr "Personnel"
 
 
-#: project_template/project_name/settings.py:397
+#: project_template/project_name/settings.py:433
 msgid "Contact"
 msgid "Contact"
 msgstr "Contact"
 msgstr "Contact"
 
 
-#: project_template/project_name/settings.py:405 users/models/ban.py:76
+#: project_template/project_name/settings.py:441 users/models/ban.py:76
 msgid "IP address"
 msgid "IP address"
 msgstr "Adresse IP"
 msgstr "Adresse IP"
 
 
@@ -878,6 +1007,98 @@ msgstr "Échec de l'activation"
 msgid "Your account can't be activated at this time."
 msgid "Your account can't be activated at this time."
 msgstr "Votre compte ne peut pas être activé pour le moment."
 msgstr "Votre compte ne peut pas être activé pour le moment."
 
 
+#: templates/misago/admin/agreements/form.html:9
+#: templates/misago/admin/agreements/form.html:18
+#: templates/misago/admin/agreements/form.html:28
+#: templates/misago/admin/agreements/list.html:9
+msgid "New agreement"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:43
+#: templates/misago/admin/categoryroles/form.html:43
+#: templates/misago/admin/roles/form.html:43
+msgid "Basic settings"
+msgstr "Parametres par defaut"
+
+#: templates/misago/admin/agreements/form.html:51
+msgid "Agreement contents"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:54
+msgid "Fill in one of the fields."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:19
+msgid "Created"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:20
+msgid "Modified"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:33
+#, python-format
+msgid "Active %(type)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:52
+#, python-format
+msgid "%(created_on)s by %(created_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:68
+#, python-format
+msgid "%(last_modified_on)s by %(last_modified_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:72
+msgid "never"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:78
+msgid "Set as active"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:88
+#: templates/misago/admin/attachmenttypes/list.html:54
+#: templates/misago/admin/bans/list.html:55
+#: templates/misago/admin/categories/list.html:66
+#: templates/misago/admin/categoryroles/list.html:27
+#: templates/misago/admin/ranks/list.html:99
+#: templates/misago/admin/roles/list.html:43
+#: templates/misago/admin/warnings/list.html:109
+#: templates/misago/poll/results.html:69
+#: templates/misago/profile/details.html:24
+#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
+msgid "Edit"
+msgstr "Modifier"
+
+#: templates/misago/admin/agreements/list.html:94
+#: templates/misago/admin/bans/list.html:61
+msgid "Remove"
+msgstr "Supprimer"
+
+#: templates/misago/admin/agreements/list.html:106
+msgid "No agreements matching search criteria have been found"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:108
+msgid "No agreements are currently set."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:119
+msgid "Are you sure you want to set this agreement as active for its type?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:124
+msgid "Are you sure you want to delete this agreement?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:133
+#: templates/misago/admin/bans/list.html:95
+msgid "Search bans"
+msgstr "Rechercher un bannissement"
+
 #: templates/misago/admin/attachments/list.html:7
 #: templates/misago/admin/attachments/list.html:7
 msgid "Attachment"
 msgid "Attachment"
 msgstr "Pièces jointes"
 msgstr "Pièces jointes"
@@ -888,12 +1109,8 @@ msgstr "Fil de discussion"
 
 
 #: templates/misago/admin/attachments/list.html:42
 #: templates/misago/admin/attachments/list.html:42
 #, python-format
 #, python-format
-msgid ""
-"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s from "
-"%(uploader_ip)s."
+msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s."
 msgstr ""
 msgstr ""
-"%(filetype)s, %(size)s, télédéposé par %(uploader)s %(uploaded_on)s depuis "
-"%(uploader_ip)s."
 
 
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachmenttypes/list.html:47
 #: templates/misago/admin/attachmenttypes/list.html:47
@@ -943,11 +1160,6 @@ msgstr "Options par défaut"
 msgid "Availability"
 msgid "Availability"
 msgstr "Disponibilité"
 msgstr "Disponibilité"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:16
-#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:575
-msgid "Type"
-msgstr "Type"
-
 #: templates/misago/admin/attachmenttypes/list.html:17
 #: templates/misago/admin/attachmenttypes/list.html:17
 msgid "Extensions"
 msgid "Extensions"
 msgstr "Extensions"
 msgstr "Extensions"
@@ -960,19 +1172,6 @@ msgstr "type MIME"
 msgid "Files"
 msgid "Files"
 msgstr "Fichiers"
 msgstr "Fichiers"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:54
-#: templates/misago/admin/bans/list.html:55
-#: templates/misago/admin/categories/list.html:66
-#: templates/misago/admin/categoryroles/list.html:27
-#: templates/misago/admin/ranks/list.html:99
-#: templates/misago/admin/roles/list.html:43
-#: templates/misago/admin/warnings/list.html:109
-#: templates/misago/poll/results.html:69
-#: templates/misago/profile/details.html:24
-#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
-msgid "Edit"
-msgstr "Modifier"
-
 #: templates/misago/admin/attachmenttypes/list.html:71
 #: templates/misago/admin/attachmenttypes/list.html:71
 msgid "No attachment types are currently defined."
 msgid "No attachment types are currently defined."
 msgstr "Aucun type de pièce jointe n'est actuellement défini."
 msgstr "Aucun type de pièce jointe n'est actuellement défini."
@@ -989,12 +1188,12 @@ msgid "New ban"
 msgstr "Nouveau bannissement"
 msgstr "Nouveau bannissement"
 
 
 #: templates/misago/admin/bans/form.html:43
 #: templates/misago/admin/bans/form.html:43
-#: templates/misago/admin/users/ban.html:53
+#: templates/misago/admin/users/ban.html:57
 msgid "Ban settings"
 msgid "Ban settings"
 msgstr "Paramètres d'exclusion"
 msgstr "Paramètres d'exclusion"
 
 
 #: templates/misago/admin/bans/form.html:52
 #: templates/misago/admin/bans/form.html:52
-#: templates/misago/admin/users/ban.html:60
+#: templates/misago/admin/users/ban.html:64
 msgid "Messages"
 msgid "Messages"
 msgstr "Messages"
 msgstr "Messages"
 
 
@@ -1002,8 +1201,8 @@ msgstr "Messages"
 msgid "Ban"
 msgid "Ban"
 msgstr "Bannir"
 msgstr "Bannir"
 
 
-#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:493
-#: users/forms/admin.py:546
+#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:488
+#: users/forms/admin.py:560
 msgid "Expires on"
 msgid "Expires on"
 msgstr "Expire le"
 msgstr "Expire le"
 
 
@@ -1016,10 +1215,6 @@ msgstr "%(check_type)s, enregistrement seulement"
 msgid "Never"
 msgid "Never"
 msgstr "Jamais"
 msgstr "Jamais"
 
 
-#: templates/misago/admin/bans/list.html:61
-msgid "Remove"
-msgstr "Supprimer"
-
 #: templates/misago/admin/bans/list.html:73
 #: templates/misago/admin/bans/list.html:73
 msgid "No bans matching search criteria have been found"
 msgid "No bans matching search criteria have been found"
 msgstr ""
 msgstr ""
@@ -1033,10 +1228,6 @@ msgstr "Aucun bannissement prononcé."
 msgid "Are you sure you want to remove this ban?"
 msgid "Are you sure you want to remove this ban?"
 msgstr "Êtes-vous certain de vouloir supprimer ce bannissement ?"
 msgstr "Êtes-vous certain de vouloir supprimer ce bannissement ?"
 
 
-#: templates/misago/admin/bans/list.html:95
-msgid "Search bans"
-msgstr "Rechercher un bannissement"
-
 #: templates/misago/admin/base_thin.html:8
 #: templates/misago/admin/base_thin.html:8
 msgid "Misago Administration"
 msgid "Misago Administration"
 msgstr "Administration de Misago"
 msgstr "Administration de Misago"
@@ -1170,11 +1361,6 @@ msgstr "Êtes-vous sûr de vouloir abandonner les changements ?"
 msgid "New role"
 msgid "New role"
 msgstr "Nouveau rôle"
 msgstr "Nouveau rôle"
 
 
-#: templates/misago/admin/categoryroles/form.html:43
-#: templates/misago/admin/roles/form.html:43
-msgid "Basic settings"
-msgstr "Parametres par defaut"
-
 #: templates/misago/admin/categoryroles/list.html:16
 #: templates/misago/admin/categoryroles/list.html:16
 msgid "Category role"
 msgid "Category role"
 msgstr "Rôle de la catégorie."
 msgstr "Rôle de la catégorie."
@@ -1212,6 +1398,61 @@ msgstr ""
 msgid "Change settings"
 msgid "Change settings"
 msgstr "Modifier les paramètres"
 msgstr "Modifier les paramètres"
 
 
+#: templates/misago/admin/datadownloads/form.html:6
+#: templates/misago/admin/datadownloads/form.html:11
+#: templates/misago/admin/datadownloads/form.html:17
+msgid "Request new data downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:9
+msgid "Request new downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:17
+#: templates/misago/admin/users/list.html:17 users/forms/admin.py:696
+msgid "User"
+msgstr "Utilisateur"
+
+#: templates/misago/admin/datadownloads/list.html:18 threads/forms.py:56
+#: users/forms/admin.py:691
+msgid "Status"
+msgstr "Statut"
+
+#: templates/misago/admin/datadownloads/list.html:19
+msgid "Requested on"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:21 users/forms/admin.py:700
+msgid "Requested by"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:32
+#: templates/misago/admin/datadownloads/list.html:49
+#: templates/misago/admin/datadownloads/list.html:52
+#: templates/misago/admin/users/ban.html:35
+#: templates/misago/admin/users/edit.html:113
+#: templates/misago/admin/users/list.html:35
+#: templates/misago/userslists/active_posters.html:66
+msgid "Avatar"
+msgstr "Avatar"
+
+#: templates/misago/admin/datadownloads/list.html:73
+#: templates/misago/emails/data_download.html:11 users/apps.py:50
+msgid "Download data"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:84
+msgid "No data downloads matching search criteria have been found."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:86
+msgid "No data downloads exist at the moment."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:93
+msgid "Search data downloads"
+msgstr ""
+
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 msgid "Page not available"
 msgid "Page not available"
@@ -1369,44 +1610,73 @@ msgstr "Dernier"
 msgid "Administration Home"
 msgid "Administration Home"
 msgstr "Accueil administration"
 msgstr "Accueil administration"
 
 
-#: templates/misago/admin/index.html:33
+#: templates/misago/admin/index.html:22
+msgid "System checks"
+msgstr ""
+
+#: templates/misago/admin/index.html:26
+msgid "MISAGO_ADDRESS setting appears to be correct."
+msgstr ""
+
+#: templates/misago/admin/index.html:30
+msgid "The settings.py value for MISAGO_ADDRESS appears to be incorrect."
+msgstr ""
+
+#: templates/misago/admin/index.html:38
+#, python-format
+msgid ""
+"Your MISAGO_ADDRESS is set to %(configured_address)s while correct value "
+"appears to be %(correct_address)s."
+msgstr ""
+
+#: templates/misago/admin/index.html:42 templates/misago/admin/index.html:47
+msgid ""
+"Misago uses this setting to build correct links in e-mails sent to site "
+"users."
+msgstr ""
+
+#: templates/misago/admin/index.html:46
+msgid "The settings.py is missing MISAGO_ADDRESS value."
+msgstr ""
+
+#: templates/misago/admin/index.html:60
 msgid "Misago version"
 msgid "Misago version"
 msgstr "Version de Misago"
 msgstr "Version de Misago"
 
 
-#: templates/misago/admin/index.html:56
+#: templates/misago/admin/index.html:83
 msgid "Check version"
 msgid "Check version"
 msgstr "Vérifier la version"
 msgstr "Vérifier la version"
 
 
-#: templates/misago/admin/index.html:62
+#: templates/misago/admin/index.html:89
 msgid "This feature requires \"packaging\" python module."
 msgid "This feature requires \"packaging\" python module."
 msgstr "Cette fonction requiert le module Python nommé « packaging »"
 msgstr "Cette fonction requiert le module Python nommé « packaging »"
 
 
-#: templates/misago/admin/index.html:76
+#: templates/misago/admin/index.html:103
 msgid "DB Contents"
 msgid "DB Contents"
 msgstr "Contenu de la base de donnée"
 msgstr "Contenu de la base de donnée"
 
 
-#: templates/misago/admin/index.html:87
+#: templates/misago/admin/index.html:114
 #: templates/misago/admin/users/delete.html:36
 #: templates/misago/admin/users/delete.html:36
-#: templates/misago/admin/users/list.html:23
+#: templates/misago/admin/users/list.html:24
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: threads/migrations/0002_threads_settings.py:48
 #: threads/migrations/0002_threads_settings.py:48
-#: threads/migrations/0004_update_settings.py:48 users/apps.py:83
+#: threads/migrations/0004_update_settings.py:48 users/apps.py:91
 msgid "Posts"
 msgid "Posts"
 msgstr "Messages"
 msgstr "Messages"
 
 
-#: templates/misago/admin/index.html:91 templates/misago/navbar.html:40
+#: templates/misago/admin/index.html:118 templates/misago/navbar.html:40
 #: templates/misago/userslists/base.html:5
 #: templates/misago/userslists/base.html:5
-#: templates/misago/userslists/base.html:14 users/admin.py:70
+#: templates/misago/userslists/base.html:14 users/admin.py:80
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 msgid "Users"
 msgid "Users"
 msgstr "Utilisateurs"
 msgstr "Utilisateurs"
 
 
-#: templates/misago/admin/index.html:96
+#: templates/misago/admin/index.html:123
 msgid "Inactive users"
 msgid "Inactive users"
 msgstr "Utilisateurs inactifs"
 msgstr "Utilisateurs inactifs"
 
 
-#: templates/misago/admin/index.html:122
+#: templates/misago/admin/index.html:149
 msgid "Checking..."
 msgid "Checking..."
 msgstr "Vérification…"
 msgstr "Vérification…"
 
 
@@ -1434,7 +1704,7 @@ msgstr "Veuillez réessayer."
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Identifiant ou e-mail"
 msgstr "Identifiant ou e-mail"
 
 
-#: templates/misago/admin/login.html:62 users/forms/admin.py:60
+#: templates/misago/admin/login.html:62 users/forms/admin.py:62
 #: users/forms/auth.py:59
 #: users/forms/auth.py:59
 msgid "Password"
 msgid "Password"
 msgstr "Mot de passe"
 msgstr "Mot de passe"
@@ -1479,17 +1749,13 @@ msgid "Display and visibility"
 msgstr "Affichage et visibilité"
 msgstr "Affichage et visibilité"
 
 
 #: templates/misago/admin/ranks/list.html:16
 #: templates/misago/admin/ranks/list.html:16
-#: templates/misago/admin/users/list.html:21
+#: templates/misago/admin/users/list.html:22
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:106
 #: templates/misago/userslists/active_posters.html:106
-#: users/forms/admin.py:236
+#: users/forms/admin.py:238
 msgid "Rank"
 msgid "Rank"
 msgstr "Rang"
 msgstr "Rang"
 
 
-#: templates/misago/admin/ranks/list.html:17
-msgid "Title"
-msgstr "Titre"
-
 #: templates/misago/admin/ranks/list.html:18
 #: templates/misago/admin/ranks/list.html:18
 msgid "Special"
 msgid "Special"
 msgstr "Spécial"
 msgstr "Spécial"
@@ -1531,7 +1797,7 @@ msgid "No user roles are currently defined."
 msgstr "Aucun rôle utilisateur n'est actuellement défini."
 msgstr "Aucun rôle utilisateur n'est actuellement défini."
 
 
 #: templates/misago/admin/users/ban.html:6
 #: templates/misago/admin/users/ban.html:6
-#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:72
+#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:73
 msgid "Ban users"
 msgid "Ban users"
 msgstr "Utilisateurs bannis"
 msgstr "Utilisateurs bannis"
 
 
@@ -1539,14 +1805,11 @@ msgstr "Utilisateurs bannis"
 msgid "Ban selected users:"
 msgid "Ban selected users:"
 msgstr "Interdire les utilisateurs sélectionnés :"
 msgstr "Interdire les utilisateurs sélectionnés :"
 
 
-#: templates/misago/admin/users/ban.html:35
-#: templates/misago/admin/users/edit.html:113
-#: templates/misago/admin/users/list.html:34
-#: templates/misago/userslists/active_posters.html:66
-msgid "Avatar"
-msgstr "Avatar"
+#: templates/misago/admin/users/ban.html:48
+msgid "IP not available"
+msgstr ""
 
 
-#: templates/misago/admin/users/ban.html:72
+#: templates/misago/admin/users/ban.html:76
 msgid "Set bans"
 msgid "Set bans"
 msgstr "Bannir"
 msgstr "Bannir"
 
 
@@ -1643,6 +1906,18 @@ msgstr ""
 msgid "No staff message is available."
 msgid "No staff message is available."
 msgstr "Aucun message du staff n'est disponible."
 msgstr "Aucun message du staff n'est disponible."
 
 
+#: templates/misago/admin/users/edit.html:220
+msgid "Agreement"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:221
+msgid "Accepted on"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:239
+msgid "This user didn't accept any agreements."
+msgstr ""
+
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:11
 #: templates/misago/admin/users/new.html:11
@@ -1650,52 +1925,56 @@ msgstr "Aucun message du staff n'est disponible."
 msgid "New user"
 msgid "New user"
 msgstr "Nouvel utilisateur"
 msgstr "Nouvel utilisateur"
 
 
-#: templates/misago/admin/users/list.html:17
-msgid "User"
-msgstr "Utilisateur"
-
-#: templates/misago/admin/users/list.html:20
+#: templates/misago/admin/users/list.html:20 users/signals.py:30
 msgid "E-mail"
 msgid "E-mail"
 msgstr "E-mail"
 msgstr "E-mail"
 
 
-#: templates/misago/admin/users/list.html:22
+#: templates/misago/admin/users/list.html:21
+msgid "IP Address"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:23
 msgid "Joined"
 msgid "Joined"
 msgstr "Inscrit"
 msgstr "Inscrit"
 
 
-#: templates/misago/admin/users/list.html:39
+#: templates/misago/admin/users/list.html:40
 msgid "Is deleting their account"
 msgid "Is deleting their account"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:43
+#: templates/misago/admin/users/list.html:44
 msgid "Is disabled by administrator"
 msgid "Is disabled by administrator"
 msgstr "est désactivé par l'administrateur"
 msgstr "est désactivé par l'administrateur"
 
 
-#: templates/misago/admin/users/list.html:54
+#: templates/misago/admin/users/list.html:55
 msgid "Requires activation by administrator"
 msgid "Requires activation by administrator"
 msgstr "Nécessite une activation par l'administrateur"
 msgstr "Nécessite une activation par l'administrateur"
 
 
-#: templates/misago/admin/users/list.html:56
+#: templates/misago/admin/users/list.html:57
 msgid "Has to activate account"
 msgid "Has to activate account"
 msgstr "Doit activer le compte"
 msgstr "Doit activer le compte"
 
 
-#: templates/misago/admin/users/list.html:63
+#: templates/misago/admin/users/list.html:64
 msgid "Super administrator"
 msgid "Super administrator"
 msgstr "Super-administrateur"
 msgstr "Super-administrateur"
 
 
-#: templates/misago/admin/users/list.html:65
+#: templates/misago/admin/users/list.html:66
 msgid "Administrator"
 msgid "Administrator"
 msgstr "Administrateur"
 msgstr "Administrateur"
 
 
-#: templates/misago/admin/users/list.html:90
+#: templates/misago/admin/users/list.html:78
+msgid "IP removed"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:98
 msgid "Edit user"
 msgid "Edit user"
 msgstr "Modifier l'utilisateur"
 msgstr "Modifier l'utilisateur"
 
 
-#: templates/misago/admin/users/list.html:99
+#: templates/misago/admin/users/list.html:107
 msgid "No users matching search criteria have been found."
 msgid "No users matching search criteria have been found."
 msgstr ""
 msgstr ""
 "Aucun utilisateur correspondant aux critères de recherche n'a été trouvé."
 "Aucun utilisateur correspondant aux critères de recherche n'a été trouvé."
 
 
-#: templates/misago/admin/users/list.html:105
+#: templates/misago/admin/users/list.html:113
 msgid "Search users"
 msgid "Search users"
 msgstr "Rechercher les utilisateurs"
 msgstr "Rechercher les utilisateurs"
 
 
@@ -1919,6 +2198,30 @@ msgstr ""
 msgid "Set new password"
 msgid "Set new password"
 msgstr "Définir un nouveau mot de passe"
 msgstr "Définir un nouveau mot de passe"
 
 
+#: templates/misago/emails/data_download.html:6
+#: templates/misago/emails/data_download.txt:6
+#, python-format
+msgid ""
+"%(user)s, you are receiving this message because your data is ready for "
+"download."
+msgstr ""
+
+#: templates/misago/emails/data_download.html:14
+#: templates/misago/emails/data_download.txt:15
+#, python-format
+msgid ""
+"This link will remain active for %(expires_in)s hour from the time this "
+"message has been sent."
+msgid_plural ""
+"This link will remain active for %(expires_in)s hours from the time this "
+"message has been sent."
+msgstr[0] ""
+msgstr[1] ""
+
+#: templates/misago/emails/data_download.txt:10
+msgid "To download your data, click the following link:"
+msgstr ""
+
 #: templates/misago/emails/privatethread/added.html:9
 #: templates/misago/emails/privatethread/added.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
@@ -2025,11 +2328,9 @@ msgstr ""
 #: templates/misago/emails/thread/reply.html:9
 #: templates/misago/emails/thread/reply.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread %(thread)s that you are subscribed to."
 "the thread %(thread)s that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s, vous recevez ce message car %(poster)s  a répondu au fil de "
-"discussion %(thread)s auquel vous êtes abonné."
 
 
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.txt:10
 #: templates/misago/emails/thread/reply.txt:10
@@ -2043,11 +2344,9 @@ msgstr "Aller à la réponse"
 #: templates/misago/emails/thread/reply.txt:6
 #: templates/misago/emails/thread/reply.txt:6
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread \"%(thread)s\" that you are subscribed to."
 "the thread \"%(thread)s\" that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s, vous recevez ce message car %(poster)s  a répondu au fil de "
-"discussion %(thread)s auquel vous êtes abonné."
 
 
 #: templates/misago/errorpages/403.html:40
 #: templates/misago/errorpages/403.html:40
 msgid "This page is not available."
 msgid "This page is not available."
@@ -2297,7 +2596,7 @@ msgstr "Voir les résultats"
 
 
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:8
 #: templates/misago/profile/ban_details.html:8
-#: templates/misago/profile/ban_details.html:15 users/apps.py:120
+#: templates/misago/profile/ban_details.html:15 users/apps.py:128
 msgid "Ban details"
 msgid "Ban details"
 msgstr "Details de l'interdiction"
 msgstr "Details de l'interdiction"
 
 
@@ -2344,7 +2643,7 @@ msgstr[1] "A initié %(threads)s fils de discussion"
 
 
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:8
 #: templates/misago/profile/details.html:8
-#: templates/misago/profile/details.html:18 users/apps.py:107
+#: templates/misago/profile/details.html:18 users/apps.py:115
 msgid "Details"
 msgid "Details"
 msgstr "Détails"
 msgstr "Détails"
 
 
@@ -2374,7 +2673,7 @@ msgstr ""
 "message."
 "message."
 
 
 #: templates/misago/profile/followers.html:5
 #: templates/misago/profile/followers.html:5
-#: templates/misago/profile/followers.html:8 users/apps.py:95
+#: templates/misago/profile/followers.html:8 users/apps.py:103
 msgid "Followers"
 msgid "Followers"
 msgstr "Suiveurs"
 msgstr "Suiveurs"
 
 
@@ -2402,7 +2701,7 @@ msgid "%(username)s has no followers."
 msgstr "Personne ne suit %(username)s."
 msgstr "Personne ne suit %(username)s."
 
 
 #: templates/misago/profile/follows.html:5
 #: templates/misago/profile/follows.html:5
-#: templates/misago/profile/follows.html:8 users/apps.py:101
+#: templates/misago/profile/follows.html:8 users/apps.py:109
 msgid "Follows"
 msgid "Follows"
 msgstr "Suit"
 msgstr "Suit"
 
 
@@ -2489,7 +2788,7 @@ msgid "%(username)s started no threads."
 msgstr "%(username)s n'a démarré aucun fil de discussion."
 msgstr "%(username)s n'a démarré aucun fil de discussion."
 
 
 #: templates/misago/profile/username_history.html:5
 #: templates/misago/profile/username_history.html:5
-#: templates/misago/profile/username_history.html:8 users/apps.py:113
+#: templates/misago/profile/username_history.html:8 users/apps.py:121
 msgid "Username history"
 msgid "Username history"
 msgstr "Historique du nom d'utilisateur"
 msgstr "Historique du nom d'utilisateur"
 
 
@@ -2516,6 +2815,20 @@ msgstr "Votre nom d'utilisateur n'a jamais été changé."
 msgid "%(username)s's username was never changed."
 msgid "%(username)s's username was never changed."
 msgstr "%(username)s's nom d'utlisateur n'a jamais été changé."
 msgstr "%(username)s's nom d'utlisateur n'a jamais été changé."
 
 
+#: templates/misago/required_agreement.html:9
+#, python-format
+msgid "Please review the updated %(agreement)s:"
+msgstr ""
+
+#: templates/misago/required_agreement.html:19
+msgid "here"
+msgstr ""
+
+#: templates/misago/required_agreement.html:21
+#, python-format
+msgid "Please review the updated %(agreement)s available %(link)s."
+msgstr ""
+
 #: templates/misago/search.html:5 templates/misago/search.html:8
 #: templates/misago/search.html:5 templates/misago/search.html:8
 msgid "Search site"
 msgid "Search site"
 msgstr "Rechercher sur le site"
 msgstr "Rechercher sur le site"
@@ -2635,10 +2948,6 @@ msgstr "Caché par %(hidden_by)s le %(hidden_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgstr "Par %(event_by)s le %(event_on)s."
 msgstr "Par %(event_by)s le %(event_on)s."
 
 
-#: templates/misago/thread/posts/event/info.html:34
-msgid "IP recorded"
-msgstr "IP enregistré"
-
 #: templates/misago/thread/posts/post/attachments.html:33
 #: templates/misago/thread/posts/post/attachments.html:33
 #, python-format
 #, python-format
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
@@ -2928,11 +3237,11 @@ msgstr "Pièces jointes"
 msgid "Attachment types"
 msgid "Attachment types"
 msgstr "Types de pièces jointes"
 msgstr "Types de pièces jointes"
 
 
-#: threads/api/attachments.py:19
+#: threads/api/attachments.py:20
 msgid "You don't have permission to upload new files."
 msgid "You don't have permission to upload new files."
 msgstr "Vous n'êtes pas autorisé⋅e à télédéposer de nouveaux fichiers."
 msgstr "Vous n'êtes pas autorisé⋅e à télédéposer de nouveaux fichiers."
 
 
-#: threads/api/attachments.py:29
+#: threads/api/attachments.py:30
 msgid "No file has been uploaded."
 msgid "No file has been uploaded."
 msgstr "Aucun fichier télédéposé."
 msgstr "Aucun fichier télédéposé."
 
 
@@ -2940,11 +3249,11 @@ msgstr "Aucun fichier télédéposé."
 msgid "Uploaded image was corrupted or invalid."
 msgid "Uploaded image was corrupted or invalid."
 msgstr "L'image télédéposée était corrompue ou invalide."
 msgstr "L'image télédéposée était corrompue ou invalide."
 
 
-#: threads/api/attachments.py:81
+#: threads/api/attachments.py:83
 msgid "You can't upload files of this type."
 msgid "You can't upload files of this type."
 msgstr "Vous ne pouvez pas télédéposer de fichiers de ce type."
 msgstr "Vous ne pouvez pas télédéposer de fichiers de ce type."
 
 
-#: threads/api/attachments.py:86
+#: threads/api/attachments.py:88
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
@@ -2952,7 +3261,7 @@ msgstr ""
 "Vous ne pouvez pas télédéposer des fichiers plus larges que %(limit)s (votre"
 "Vous ne pouvez pas télédéposer des fichiers plus larges que %(limit)s (votre"
 " fichier fait %(upload)s)"
 " fichier fait %(upload)s)"
 
 
-#: threads/api/attachments.py:96
+#: threads/api/attachments.py:98
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files of this type larger than %(limit)s (your file has "
 "You can't upload files of this type larger than %(limit)s (your file has "
@@ -2961,7 +3270,7 @@ msgstr ""
 "Vous ne pouvez pas télédéposer de fichiers de ce type plus larges "
 "Vous ne pouvez pas télédéposer de fichiers de ce type plus larges "
 "que%(limit)s(votre fichier fait %(upload)s)"
 "que%(limit)s(votre fichier fait %(upload)s)"
 
 
-#: threads/api/postendpoints/edits.py:89
+#: threads/api/postendpoints/edits.py:88
 msgid "Edits record is unavailable for this post."
 msgid "Edits record is unavailable for this post."
 msgstr "L'enregistrement des modifications est indisponible pour ce message."
 msgstr "L'enregistrement des modifications est indisponible pour ce message."
 
 
@@ -2977,12 +3286,12 @@ msgstr "Vous ne pouvez pas déplacer les messages dans ce fil de discussion."
 msgid "You can't like posts in this category."
 msgid "You can't like posts in this category."
 msgstr "Vous ne pouvez pas aimer les messages dans cette catégorie."
 msgstr "Vous ne pouvez pas aimer les messages dans cette catégorie."
 
 
-#: threads/api/postendpoints/patch_post.py:108
+#: threads/api/postendpoints/patch_post.py:107
 #: threads/api/threadendpoints/patch.py:130
 #: threads/api/threadendpoints/patch.py:130
 msgid "Content approval can't be reversed."
 msgid "Content approval can't be reversed."
 msgstr "L'approbation du contenu ne peut pas être annulée."
 msgstr "L'approbation du contenu ne peut pas être annulée."
 
 
-#: threads/api/postendpoints/patch_post.py:186
+#: threads/api/postendpoints/patch_post.py:185
 msgid "One or more posts to update could not be found."
 msgid "One or more posts to update could not be found."
 msgstr "Un ou plusieurs messages à mettre à jour n'ont pas été trouvés."
 msgstr "Un ou plusieurs messages à mettre à jour n'ont pas été trouvés."
 
 
@@ -2997,7 +3306,7 @@ msgstr ""
 "Vous n'avez pas la permission de supprimer la pièce-jointe « %(attachment)s "
 "Vous n'avez pas la permission de supprimer la pièce-jointe « %(attachment)s "
 "»."
 "»."
 
 
-#: threads/api/postingendpoint/attachments.py:128
+#: threads/api/postingendpoint/attachments.py:127
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't attach more than %(limit_value)s file to single post (added "
 "You can't attach more than %(limit_value)s file to single post (added "
@@ -3083,11 +3392,11 @@ msgstr[1] ""
 msgid "One or more users could not be found: %(usernames)s"
 msgid "One or more users could not be found: %(usernames)s"
 msgstr "Un ou plusieurs utilisateurs n’ont pas été trouvés : %(usernames)s"
 msgstr "Un ou plusieurs utilisateurs n’ont pas été trouvés : %(usernames)s"
 
 
-#: threads/api/postingendpoint/reply.py:81 threads/validators.py:80
+#: threads/api/postingendpoint/reply.py:83 threads/validators.py:80
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Vous devez saisir un message."
 msgstr "Vous devez saisir un message."
 
 
-#: threads/api/postingendpoint/reply.py:103 threads/validators.py:41
+#: threads/api/postingendpoint/reply.py:105 threads/validators.py:41
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Vous devez renseigner un titre pour le fil de discussion."
 msgstr "Vous devez renseigner un titre pour le fil de discussion."
 
 
@@ -3175,7 +3484,7 @@ msgid "One or more threads to update could not be found."
 msgstr ""
 msgstr ""
 "Un ou plusieurs fils de discussion à mettre à jour n'ont pas été trouvés."
 "Un ou plusieurs fils de discussion à mettre à jour n'ont pas été trouvés."
 
 
-#: threads/api/threadpoll.py:53
+#: threads/api/threadpoll.py:54
 msgid "There's already a poll in this thread."
 msgid "There's already a poll in this thread."
 msgstr "Il y a déjà un sondage dans ce fil de discussion."
 msgstr "Il y a déjà un sondage dans ce fil de discussion."
 
 
@@ -3211,7 +3520,7 @@ msgstr "Le nom de fichier contient"
 msgid "File type"
 msgid "File type"
 msgstr "Type de fichier"
 msgstr "Type de fichier"
 
 
-#: threads/forms.py:24 users/forms/admin.py:595
+#: threads/forms.py:24 users/forms/admin.py:609
 msgid "State"
 msgid "State"
 msgstr "État"
 msgstr "État"
 
 
@@ -3235,10 +3544,6 @@ msgstr "Extensions de fichier"
 msgid "Maximum allowed uploaded file size"
 msgid "Maximum allowed uploaded file size"
 msgstr "Taille maximale autorisée du fichier télédéposé"
 msgstr "Taille maximale autorisée du fichier télédéposé"
 
 
-#: threads/forms.py:56
-msgid "Status"
-msgstr "Statut"
-
 #: threads/forms.py:57
 #: threads/forms.py:57
 msgid "Limit uploads to"
 msgid "Limit uploads to"
 msgstr "Limiter les uploads à"
 msgstr "Limiter les uploads à"
@@ -3932,7 +4237,7 @@ msgstr ""
 msgid "Can see threads"
 msgid "Can see threads"
 msgstr "Peut voir les fils de discussion"
 msgstr "Peut voir les fils de discussion"
 
 
-#: threads/permissions/threads.py:110 users/forms/admin.py:166
+#: threads/permissions/threads.py:110 users/forms/admin.py:168
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0006_update_settings.py:130
 #: users/migrations/0006_update_settings.py:130
 msgid "Started threads"
 msgid "Started threads"
@@ -4985,6 +5290,14 @@ msgstr "Un ou plusieurs choix du sondage étaient invalides"
 msgid "You have to make a choice."
 msgid "You have to make a choice."
 msgstr "Vous devez faire un choix"
 msgstr "Vous devez faire un choix"
 
 
+#: threads/signals.py:177
+msgid "Question"
+msgstr ""
+
+#: threads/signals.py:178
+msgid "Choices"
+msgstr ""
+
 #: threads/templatetags/misago_poststags.py:20
 #: threads/templatetags/misago_poststags.py:20
 #, python-format
 #, python-format
 msgid "%(user)s likes this."
 msgid "%(user)s likes this."
@@ -5148,23 +5461,13 @@ msgstr ""
 msgid "Requested attachment could not be found."
 msgid "Requested attachment could not be found."
 msgstr "La pièce jointe requise n'a pu être trouvée"
 msgstr "La pièce jointe requise n'a pu être trouvée"
 
 
-#: threads/views/admin/attachments.py:24 users/views/admin/bans.py:24
-#: users/views/admin/users.py:55
-msgid "From newest"
-msgstr "Du plus récent"
-
-#: threads/views/admin/attachments.py:25 users/views/admin/bans.py:25
-#: users/views/admin/users.py:56
-msgid "From oldest"
-msgstr "Du plus ancien"
-
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
-#: users/views/admin/users.py:57
+#: users/views/admin/users.py:58
 msgid "A to z"
 msgid "A to z"
 msgstr "A à Z"
 msgstr "A à Z"
 
 
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
-#: users/views/admin/users.py:58
+#: users/views/admin/users.py:59
 msgid "Z to a"
 msgid "Z to a"
 msgstr "Z à A"
 msgstr "Z à A"
 
 
@@ -5237,34 +5540,38 @@ msgstr ""
 "Une autorisation d'approbation des contenus est nécessaire  pour pouvoir "
 "Une autorisation d'approbation des contenus est nécessaire  pour pouvoir "
 "accéder aux premiers messages non approuvés."
 "accéder aux premiers messages non approuvés."
 
 
-#: users/admin.py:79
+#: users/admin.py:89
 msgid "User Accounts"
 msgid "User Accounts"
 msgstr "Compte utilisateur"
 msgstr "Compte utilisateur"
 
 
-#: users/admin.py:87
+#: users/admin.py:97
 msgid "Ranks"
 msgid "Ranks"
 msgstr "Rangs"
 msgstr "Rangs"
 
 
-#: users/admin.py:96
+#: users/admin.py:106
 msgid "Bans"
 msgid "Bans"
 msgstr "Bannis"
 msgstr "Bannis"
 
 
+#: users/admin.py:115
+msgid "Data downloads"
+msgstr ""
+
 #: users/api/auth.py:100
 #: users/api/auth.py:100
 #, python-format
 #, python-format
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgstr "Activer  %(user)s  sur les forums  %(forum_name)s "
 msgstr "Activer  %(user)s  sur les forums  %(forum_name)s "
 
 
-#: users/api/auth.py:139
+#: users/api/auth.py:138
 #, python-format
 #, python-format
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgstr ""
 msgstr ""
 "Changer les mots de passe de  %(user)s  sur les forums  %(forum_name)s "
 "Changer les mots de passe de  %(user)s  sur les forums  %(forum_name)s "
 
 
-#: users/api/auth.py:180
+#: users/api/auth.py:178
 msgid "Form link is invalid. Please try again."
 msgid "Form link is invalid. Please try again."
 msgstr "Le lien associé à ce formulaire est non valide. Veuillez réessayer."
 msgstr "Le lien associé à ce formulaire est non valide. Veuillez réessayer."
 
 
-#: users/api/auth.py:181
+#: users/api/auth.py:179
 msgid "Your link has expired. Please request new one."
 msgid "Your link has expired. Please request new one."
 msgstr "votre lien a expiré. veuillez en demander un nouveau."
 msgstr "votre lien a expiré. veuillez en demander un nouveau."
 
 
@@ -5338,16 +5645,16 @@ msgstr ""
 msgid "Confirm password change on %(forum_name)s forums"
 msgid "Confirm password change on %(forum_name)s forums"
 msgstr "Confirmer le changement de mot de passe sur  %(forum_name)s forums"
 msgstr "Confirmer le changement de mot de passe sur  %(forum_name)s forums"
 
 
-#: users/api/userendpoints/changepassword.py:31
+#: users/api/userendpoints/changepassword.py:32
 msgid "Password change confirmation link was sent to your address."
 msgid "Password change confirmation link was sent to your address."
 msgstr ""
 msgstr ""
 "Un lien permettant de changer de mot de passe a été envoyé à votre adresse."
 "Un lien permettant de changer de mot de passe a été envoyé à votre adresse."
 
 
-#: users/api/userendpoints/create.py:22
+#: users/api/userendpoints/create.py:25
 msgid "New users registrations are currently closed."
 msgid "New users registrations are currently closed."
 msgstr "Les inscriptions sont closes."
 msgstr "Les inscriptions sont closes."
 
 
-#: users/api/userendpoints/create.py:53 users/social/pipeline.py:205
+#: users/api/userendpoints/create.py:61 users/social/pipeline.py:215
 msgid "Please try resubmitting the form."
 msgid "Please try resubmitting the form."
 msgstr "Veuillez resoumettre le formulaire."
 msgstr "Veuillez resoumettre le formulaire."
 
 
@@ -5375,38 +5682,54 @@ msgid "You don't have permission to see other users name history."
 msgstr ""
 msgstr ""
 "Vous n'avez pas le droit d'accéder à l'historique des autres utilisateurs."
 "Vous n'avez pas le droit d'accéder à l'historique des autres utilisateurs."
 
 
-#: users/api/users.py:54
+#: users/api/users.py:57
 msgid "You have to sign in to perform this action."
 msgid "You have to sign in to perform this action."
 msgstr "Vous devez vous identifier pour réaliser cette action."
 msgstr "Vous devez vous identifier pour réaliser cette action."
 
 
-#: users/api/users.py:100
+#: users/api/users.py:103
 msgid "You can't change other users avatars."
 msgid "You can't change other users avatars."
 msgstr "Vous ne pouvez modifier les avatars des autres utilisateurs."
 msgstr "Vous ne pouvez modifier les avatars des autres utilisateurs."
 
 
-#: users/api/users.py:107
+#: users/api/users.py:110
 msgid "You can't change other users options."
 msgid "You can't change other users options."
 msgstr "Vous ne pouvez modifier les options des autres utilisateurs."
 msgstr "Vous ne pouvez modifier les options des autres utilisateurs."
 
 
-#: users/api/users.py:112
+#: users/api/users.py:115
 msgid "Your forum options have been changed."
 msgid "Your forum options have been changed."
 msgstr "Les options de votre forum ont été modifiées."
 msgstr "Les options de votre forum ont été modifiées."
 
 
-#: users/api/users.py:119
+#: users/api/users.py:122
 msgid "You can't change other users names."
 msgid "You can't change other users names."
 msgstr "Vous ne pouvez modifier les noms des autres utilisateurs."
 msgstr "Vous ne pouvez modifier les noms des autres utilisateurs."
 
 
-#: users/api/users.py:126
+#: users/api/users.py:129
 msgid "You can't change other users signatures."
 msgid "You can't change other users signatures."
 msgstr "Vous ne pouvez modifier les identifiants des autres utilisateurs."
 msgstr "Vous ne pouvez modifier les identifiants des autres utilisateurs."
 
 
-#: users/api/users.py:133
+#: users/api/users.py:136
 msgid "You can't change other users passwords."
 msgid "You can't change other users passwords."
 msgstr "Vous ne pouvez modifier les mots de passe des autres utilisateurs."
 msgstr "Vous ne pouvez modifier les mots de passe des autres utilisateurs."
 
 
-#: users/api/users.py:140
+#: users/api/users.py:143
 msgid "You can't change other users e-mail addresses."
 msgid "You can't change other users e-mail addresses."
 msgstr "Vous ne pouvez modifier les courriels des autres utilisateurs."
 msgstr "Vous ne pouvez modifier les courriels des autres utilisateurs."
 
 
+#: users/api/users.py:225
+msgid "You can't request data downloads for other users."
+msgstr ""
+
+#: users/api/users.py:228
+msgid "You can't download your data."
+msgstr ""
+
+#: users/api/users.py:232
+msgid "You can't have more than one data download request at single time."
+msgstr ""
+
+#: users/api/users.py:278
+msgid "You can't see other users data downloads."
+msgstr ""
+
 #: users/apps.py:30
 #: users/apps.py:30
 msgid "Edit details"
 msgid "Edit details"
 msgstr "Modifier les détails"
 msgstr "Modifier les détails"
@@ -5419,11 +5742,11 @@ msgstr "Changer de nom d'utilisateur"
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "Changer le courriel ou le mot de passe"
 msgstr "Changer le courriel ou le mot de passe"
 
 
-#: users/apps.py:50
+#: users/apps.py:58
 msgid "Delete account"
 msgid "Delete account"
 msgstr ""
 msgstr ""
 
 
-#: users/apps.py:59
+#: users/apps.py:67
 msgid "Active poster"
 msgid "Active poster"
 msgstr ""
 msgstr ""
 
 
@@ -5483,27 +5806,27 @@ msgid "Edit the user from Misago admin panel"
 msgstr ""
 msgstr ""
 "Modifier l'utilisateur depuis le tableau de bord d'administration Misago"
 "Modifier l'utilisateur depuis le tableau de bord d'administration Misago"
 
 
-#: users/forms/admin.py:21 users/models/ban.py:74
+#: users/forms/admin.py:23 users/models/ban.py:74 users/signals.py:29
 msgid "Username"
 msgid "Username"
 msgstr "Nom d'utilisateur"
 msgstr "Nom d'utilisateur"
 
 
-#: users/forms/admin.py:22
+#: users/forms/admin.py:24
 msgid "Custom title"
 msgid "Custom title"
 msgstr "Titre personnalisé"
 msgstr "Titre personnalisé"
 
 
-#: users/forms/admin.py:23 users/models/ban.py:75
+#: users/forms/admin.py:25 users/models/ban.py:75
 msgid "E-mail address"
 msgid "E-mail address"
 msgstr "Courriel"
 msgstr "Courriel"
 
 
-#: users/forms/admin.py:52
+#: users/forms/admin.py:54
 msgid "All registered members must have \"Member\" role."
 msgid "All registered members must have \"Member\" role."
 msgstr "Tous les membres enregistrés doivent avoir un rôle de « Membre »."
 msgstr "Tous les membres enregistrés doivent avoir un rôle de « Membre »."
 
 
-#: users/forms/admin.py:71
+#: users/forms/admin.py:73
 msgid "Is administrator"
 msgid "Is administrator"
 msgstr "Est administrateur"
 msgstr "Est administrateur"
 
 
-#: users/forms/admin.py:73
+#: users/forms/admin.py:75
 msgid ""
 msgid ""
 "Designates whether the user can log into admin sites. If Django admin site "
 "Designates whether the user can log into admin sites. If Django admin site "
 "is enabled, this user will need additional permissions assigned within it to"
 "is enabled, this user will need additional permissions assigned within it to"
@@ -5513,11 +5836,11 @@ msgstr ""
 "site d'administration de Django est activé, cet utilisateur aura besoin "
 "site d'administration de Django est activé, cet utilisateur aura besoin "
 "d'autorisations supplémentaires pour administrer les modules Django."
 "d'autorisations supplémentaires pour administrer les modules Django."
 
 
-#: users/forms/admin.py:79
+#: users/forms/admin.py:81
 msgid "Is superuser"
 msgid "Is superuser"
 msgstr "Est super utilisateur"
 msgstr "Est super utilisateur"
 
 
-#: users/forms/admin.py:81
+#: users/forms/admin.py:83
 msgid ""
 msgid ""
 "Only administrators can access admin sites. In addition to admin site "
 "Only administrators can access admin sites. In addition to admin site "
 "access, superadmins can also change other members admin levels."
 "access, superadmins can also change other members admin levels."
@@ -5526,11 +5849,11 @@ msgstr ""
 "plus de l'accès au site administrateur, les superadministrateurs peuvent "
 "plus de l'accès au site administrateur, les superadministrateurs peuvent "
 "aussi modifier les niveaux administrateurs des autres membres."
 "aussi modifier les niveaux administrateurs des autres membres."
 
 
-#: users/forms/admin.py:86
+#: users/forms/admin.py:88
 msgid "Is active"
 msgid "Is active"
 msgstr "Est actif"
 msgstr "Est actif"
 
 
-#: users/forms/admin.py:88
+#: users/forms/admin.py:90
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Turning this off "
 "Designates whether this user should be treated as active. Turning this off "
 "is non-destructible way to remove user accounts."
 "is non-destructible way to remove user accounts."
@@ -5538,11 +5861,11 @@ msgstr ""
 "indique si cet utilisateur doit être considéré comme actif. Désactiver cette"
 "indique si cet utilisateur doit être considéré comme actif. Désactiver cette"
 " option est un moyen non destructif de supprimer les comptes utilisateurs."
 " option est un moyen non destructif de supprimer les comptes utilisateurs."
 
 
-#: users/forms/admin.py:92 users/forms/admin.py:123 users/forms/admin.py:151
+#: users/forms/admin.py:94 users/forms/admin.py:125 users/forms/admin.py:153
 msgid "Staff message"
 msgid "Staff message"
 msgstr "Message du staff"
 msgstr "Message du staff"
 
 
-#: users/forms/admin.py:94
+#: users/forms/admin.py:96
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user's account has "
 "Optional message for forum team members explaining why user's account has "
 "been disabled."
 "been disabled."
@@ -5550,15 +5873,15 @@ msgstr ""
 "Message optionnel destiné aux membres de l'équipe du forum afin d'expliquer "
 "Message optionnel destiné aux membres de l'équipe du forum afin d'expliquer "
 "pourquoi le compte d'un utilisateur a été désactivé."
 "pourquoi le compte d'un utilisateur a été désactivé."
 
 
-#: users/forms/admin.py:99
+#: users/forms/admin.py:101
 msgid "Change password to"
 msgid "Change password to"
 msgstr "Changer le mot de passe par"
 msgstr "Changer le mot de passe par"
 
 
-#: users/forms/admin.py:106
+#: users/forms/admin.py:108
 msgid "Lock avatar"
 msgid "Lock avatar"
 msgstr "Verrouiller l'avatar"
 msgstr "Verrouiller l'avatar"
 
 
-#: users/forms/admin.py:108
+#: users/forms/admin.py:110
 msgid ""
 msgid ""
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "reset his/her avatar to procedurally generated one."
 "reset his/her avatar to procedurally generated one."
@@ -5566,12 +5889,12 @@ msgstr ""
 "Activer cette option empêchera l'utilisateur de changer son avatar et va "
 "Activer cette option empêchera l'utilisateur de changer son avatar et va "
 "générer un nouvel avatar selon la procédure"
 "générer un nouvel avatar selon la procédure"
 
 
-#: users/forms/admin.py:114 users/forms/admin.py:145 users/forms/admin.py:473
-#: users/forms/admin.py:526
+#: users/forms/admin.py:116 users/forms/admin.py:147 users/forms/admin.py:468
+#: users/forms/admin.py:540
 msgid "User message"
 msgid "User message"
 msgstr "Message de l'utilisateur"
 msgstr "Message de l'utilisateur"
 
 
-#: users/forms/admin.py:116
+#: users/forms/admin.py:118
 msgid ""
 msgid ""
 "Optional message for user explaining why he/she is banned form changing "
 "Optional message for user explaining why he/she is banned form changing "
 "avatar."
 "avatar."
@@ -5579,7 +5902,7 @@ msgstr ""
 "Message optionnel à l'attention d'un utilisateur pour lui expliquer pourquoi"
 "Message optionnel à l'attention d'un utilisateur pour lui expliquer pourquoi"
 " il ou elle a été empêche de changer d'avatar"
 " il ou elle a été empêche de changer d'avatar"
 
 
-#: users/forms/admin.py:125
+#: users/forms/admin.py:127
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user is banned form "
 "Optional message for forum team members explaining why user is banned form "
 "changing avatar."
 "changing avatar."
@@ -5587,56 +5910,56 @@ msgstr ""
 "Message optionnel destiné aux membres de l'équipe du forum afin d'expliquer "
 "Message optionnel destiné aux membres de l'équipe du forum afin d'expliquer "
 "pourquoi il a été interdit à un utilisateur de modifier son avatar."
 "pourquoi il a été interdit à un utilisateur de modifier son avatar."
 
 
-#: users/forms/admin.py:133
+#: users/forms/admin.py:135
 msgid "Signature contents"
 msgid "Signature contents"
 msgstr ""
 msgstr ""
 "Indique si cet utilisateur doit être considéré comme actif. Désactiver cette"
 "Indique si cet utilisateur doit être considéré comme actif. Désactiver cette"
 " option est un moyen non destructif de supprimer les comptes utilisateurs."
 " option est un moyen non destructif de supprimer les comptes utilisateurs."
 
 
-#: users/forms/admin.py:138
+#: users/forms/admin.py:140
 msgid "Lock signature"
 msgid "Lock signature"
 msgstr "Verrouiller la signature"
 msgstr "Verrouiller la signature"
 
 
-#: users/forms/admin.py:140
+#: users/forms/admin.py:142
 msgid ""
 msgid ""
 "Setting this to yes will stop user from making changes to his/her signature."
 "Setting this to yes will stop user from making changes to his/her signature."
 msgstr ""
 msgstr ""
 "Attribuer la valeur oui à ce paramètre empêchera un utilisateur de modifier "
 "Attribuer la valeur oui à ce paramètre empêchera un utilisateur de modifier "
 "son identifiant. "
 "son identifiant. "
 
 
-#: users/forms/admin.py:146
+#: users/forms/admin.py:148
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgstr ""
 msgstr ""
 "Message optionnel destiné à l'utilisateur pour lui expliquer pourquoi son "
 "Message optionnel destiné à l'utilisateur pour lui expliquer pourquoi son "
 "identifiant est verrouillé."
 "identifiant est verrouillé."
 
 
-#: users/forms/admin.py:152
+#: users/forms/admin.py:154
 msgid ""
 msgid ""
 "Optional message to team members explaining why user signature is locked."
 "Optional message to team members explaining why user signature is locked."
 msgstr ""
 msgstr ""
 "Message optionnel à l'attention des membres de l'équipe afin d'expliquer à "
 "Message optionnel à l'attention des membres de l'équipe afin d'expliquer à "
 "l'utilisateur pourquoi son identifiant est verrouillé."
 "l'utilisateur pourquoi son identifiant est verrouillé."
 
 
-#: users/forms/admin.py:157
+#: users/forms/admin.py:159
 msgid "Hides presence"
 msgid "Hides presence"
 msgstr "Cache la présence"
 msgstr "Cache la présence"
 
 
-#: users/forms/admin.py:160
+#: users/forms/admin.py:162
 msgid "Who can add user to private threads"
 msgid "Who can add user to private threads"
 msgstr "Qui peut ajouter des utilisateurs à des fils de discussion privés"
 msgstr "Qui peut ajouter des utilisateurs à des fils de discussion privés"
 
 
-#: users/forms/admin.py:169
+#: users/forms/admin.py:171
 msgid "Replid threads"
 msgid "Replid threads"
 msgstr "Fils de discussion pour lesquels il existe des réponses"
 msgstr "Fils de discussion pour lesquels il existe des réponses"
 
 
-#: users/forms/admin.py:219 users/serializers/moderation.py:42
+#: users/forms/admin.py:221 users/serializers/moderation.py:42
 #, python-format
 #, python-format
 msgid "Signature can't be longer than %(limit)s character."
 msgid "Signature can't be longer than %(limit)s character."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgstr[0] "La signature peut comporter au plus %(limit)s caractère."
 msgstr[0] "La signature peut comporter au plus %(limit)s caractère."
 msgstr[1] "La signature peut comporter au plus %(limit)s caractères."
 msgstr[1] "La signature peut comporter au plus %(limit)s caractères."
 
 
-#: users/forms/admin.py:238
+#: users/forms/admin.py:240
 msgid ""
 msgid ""
 "Ranks are used to group and distinguish users. They are also used to add "
 "Ranks are used to group and distinguish users. They are also used to add "
 "permissions to groups of users."
 "permissions to groups of users."
@@ -5645,61 +5968,61 @@ msgstr ""
 "utilisateurs. Ils sont également utilisés pour donner des droits à des "
 "utilisateurs. Ils sont également utilisés pour donner des droits à des "
 "groupes d'utilisateurs."
 "groupes d'utilisateurs."
 
 
-#: users/forms/admin.py:248
+#: users/forms/admin.py:250
 msgid "Roles"
 msgid "Roles"
 msgstr "Rôles"
 msgstr "Rôles"
 
 
-#: users/forms/admin.py:249
+#: users/forms/admin.py:251
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgstr ""
 msgstr ""
 "Les rôles individuels de cet utilisateur. Tous les utilisateurs doivent "
 "Les rôles individuels de cet utilisateur. Tous les utilisateurs doivent "
 "avoir un rôle de « membre »."
 "avoir un rôle de « membre »."
 
 
-#: users/forms/admin.py:307
+#: users/forms/admin.py:309
 msgid "Username starts with"
 msgid "Username starts with"
 msgstr "Nom d'utilisateur commençant par"
 msgstr "Nom d'utilisateur commençant par"
 
 
-#: users/forms/admin.py:308
+#: users/forms/admin.py:310
 msgid "E-mail starts with"
 msgid "E-mail starts with"
 msgstr "Courriel commençant par"
 msgstr "Courriel commençant par"
 
 
-#: users/forms/admin.py:309
+#: users/forms/admin.py:311
 msgid "Profile fields contain"
 msgid "Profile fields contain"
 msgstr "Les champs de profil contiennent"
 msgstr "Les champs de profil contiennent"
 
 
-#: users/forms/admin.py:310
+#: users/forms/admin.py:312
 msgid "Inactive only"
 msgid "Inactive only"
 msgstr "Inactifs uniquement"
 msgstr "Inactifs uniquement"
 
 
-#: users/forms/admin.py:311
+#: users/forms/admin.py:313
 msgid "Disabled only"
 msgid "Disabled only"
 msgstr "Désactivés uniquement"
 msgstr "Désactivés uniquement"
 
 
-#: users/forms/admin.py:312
+#: users/forms/admin.py:314
 msgid "Admins only"
 msgid "Admins only"
 msgstr "Administrateurs uniquement"
 msgstr "Administrateurs uniquement"
 
 
-#: users/forms/admin.py:313
+#: users/forms/admin.py:315
 msgid "Deleting their accounts"
 msgid "Deleting their accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:355
+#: users/forms/admin.py:357
 msgid "All ranks"
 msgid "All ranks"
 msgstr "Tous les rangs"
 msgstr "Tous les rangs"
 
 
-#: users/forms/admin.py:362
+#: users/forms/admin.py:364
 msgid "All roles"
 msgid "All roles"
 msgstr "Tous les rôles"
 msgstr "Tous les rôles"
 
 
-#: users/forms/admin.py:369
+#: users/forms/admin.py:371
 msgid "Has rank"
 msgid "Has rank"
 msgstr "A un rang"
 msgstr "A un rang"
 
 
-#: users/forms/admin.py:375
+#: users/forms/admin.py:377
 msgid "Has role"
 msgid "Has role"
 msgstr "A un rôle"
 msgstr "A un rôle"
 
 
-#: users/forms/admin.py:391
+#: users/forms/admin.py:393
 msgid ""
 msgid ""
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "\"Game Masters\" are good examples."
 "\"Game Masters\" are good examples."
@@ -5707,11 +6030,11 @@ msgstr ""
 "Nom court et descriptif de tous les utilisateurs avec ce rang. « L'équipe » "
 "Nom court et descriptif de tous les utilisateurs avec ce rang. « L'équipe » "
 "ou  « les maîtres du jeux » sont de bons exemples."
 "ou  « les maîtres du jeux » sont de bons exemples."
 
 
-#: users/forms/admin.py:396
+#: users/forms/admin.py:398
 msgid "User title"
 msgid "User title"
 msgstr "Titre d'un utilisateur"
 msgstr "Titre d'un utilisateur"
 
 
-#: users/forms/admin.py:399
+#: users/forms/admin.py:401
 msgid ""
 msgid ""
 "Optional, singular version of rank name displayed by user names. For example"
 "Optional, singular version of rank name displayed by user names. For example"
 " \"GM\" or \"Dev\"."
 " \"GM\" or \"Dev\"."
@@ -5719,7 +6042,7 @@ msgstr ""
 "Version unique et optionnelle du rang affiché par les noms utilisateurs. Par"
 "Version unique et optionnelle du rang affiché par les noms utilisateurs. Par"
 " exemple « GM » OU « Dev »."
 " exemple « GM » OU « Dev »."
 
 
-#: users/forms/admin.py:409
+#: users/forms/admin.py:411
 msgid ""
 msgid ""
 "Optional description explaining function or status of members distincted "
 "Optional description explaining function or status of members distincted "
 "with this rank."
 "with this rank."
@@ -5727,22 +6050,22 @@ msgstr ""
 "Description optionnelle expliquant la fonction ou le statut des membres "
 "Description optionnelle expliquant la fonction ou le statut des membres "
 "distingués par ce rang."
 "distingués par ce rang."
 
 
-#: users/forms/admin.py:418
+#: users/forms/admin.py:420
 msgid "Rank can give additional roles to users with it."
 msgid "Rank can give additional roles to users with it."
 msgstr ""
 msgstr ""
 "Les rangs peuvent conférer des rôles supplémentaires aux utilisateurs."
 "Les rangs peuvent conférer des rôles supplémentaires aux utilisateurs."
 
 
-#: users/forms/admin.py:423
+#: users/forms/admin.py:425
 msgid "Optional css class added to content belonging to this rank owner."
 msgid "Optional css class added to content belonging to this rank owner."
 msgstr ""
 msgstr ""
 "La classe CSS optionnelle est ajoutée au contenu possédé par le propriétaire"
 "La classe CSS optionnelle est ajoutée au contenu possédé par le propriétaire"
 " de ce rang."
 " de ce rang."
 
 
-#: users/forms/admin.py:426
+#: users/forms/admin.py:428
 msgid "Give rank dedicated tab on users list"
 msgid "Give rank dedicated tab on users list"
 msgstr "Attribuer un onglet dédié aux rangs à la liste des utilisateurs"
 msgstr "Attribuer un onglet dédié aux rangs à la liste des utilisateurs"
 
 
-#: users/forms/admin.py:429
+#: users/forms/admin.py:431
 msgid ""
 msgid ""
 "Selecting this option will make users with this rank easily discoverable by "
 "Selecting this option will make users with this rank easily discoverable by "
 "others through dedicated page on forum users list."
 "others through dedicated page on forum users list."
@@ -5751,73 +6074,73 @@ msgstr ""
 "plus facilement détectable par les autres via une page dédiée sur le forum à"
 "plus facilement détectable par les autres via une page dédiée sur le forum à"
 " la liste des utilisateurs."
 " la liste des utilisateurs."
 
 
-#: users/forms/admin.py:454
+#: users/forms/admin.py:456
 msgid "This name collides with other rank."
 msgid "This name collides with other rank."
 msgstr "Ce nom est redondant avec un autre rang."
 msgstr "Ce nom est redondant avec un autre rang."
 
 
-#: users/forms/admin.py:461
+#: users/forms/admin.py:463
 msgid "Values to ban"
 msgid "Values to ban"
 msgstr "Valeurs à bannir."
 msgstr "Valeurs à bannir."
 
 
-#: users/forms/admin.py:464 users/forms/admin.py:579
-msgid "Usernames"
-msgstr "Noms d'utilisateurs"
-
-#: users/forms/admin.py:465 users/forms/admin.py:580
-msgid "E-mails"
-msgstr "Courriels"
-
-#: users/forms/admin.py:466
-msgid "E-mail domains"
-msgstr "Domaines des courriels"
-
-#: users/forms/admin.py:467
-msgid "IP addresses"
-msgstr "Adresses IP"
-
-#: users/forms/admin.py:468
-msgid "First segment of IP addresses"
-msgstr "Le premier segment des adresses IP"
-
-#: users/forms/admin.py:469
-msgid "First two segments of IP addresses"
-msgstr "Les deux premiers segments des adresses IP"
-
-#: users/forms/admin.py:476
+#: users/forms/admin.py:471
 msgid "Optional message displayed to users instead of default one."
 msgid "Optional message displayed to users instead of default one."
 msgstr ""
 msgstr ""
 "Message optionnel adressé aux utilisateurs à la place d'un message par "
 "Message optionnel adressé aux utilisateurs à la place d'un message par "
 "défaut."
 "défaut."
 
 
-#: users/forms/admin.py:479 users/forms/admin.py:489 users/forms/admin.py:532
-#: users/forms/admin.py:542
+#: users/forms/admin.py:474 users/forms/admin.py:484 users/forms/admin.py:546
+#: users/forms/admin.py:556
 msgid "Message can't be longer than 1000 characters."
 msgid "Message can't be longer than 1000 characters."
 msgstr "La longueur du message ne doit pas excéder 1000 caractères."
 msgstr "La longueur du message ne doit pas excéder 1000 caractères."
 
 
-#: users/forms/admin.py:483 users/forms/admin.py:536
+#: users/forms/admin.py:478 users/forms/admin.py:550
 msgid "Team message"
 msgid "Team message"
 msgstr "Message de l'équipe"
 msgstr "Message de l'équipe"
 
 
-#: users/forms/admin.py:486 users/forms/admin.py:539
+#: users/forms/admin.py:481 users/forms/admin.py:553
 msgid "Optional ban message for moderators and administrators."
 msgid "Optional ban message for moderators and administrators."
 msgstr ""
 msgstr ""
 "Message optionnel d'interdiction pour les modérateurs et administrateurs."
 "Message optionnel d'interdiction pour les modérateurs et administrateurs."
 
 
-#: users/forms/admin.py:495
+#: users/forms/admin.py:490
 msgid "Leave this field empty for set bans to never expire."
 msgid "Leave this field empty for set bans to never expire."
 msgstr ""
 msgstr ""
 "Laisser ce champ vide pour établir des interdictions qui n'expireront "
 "Laisser ce champ vide pour établir des interdictions qui n'expireront "
 "jamais."
 "jamais."
 
 
+#: users/forms/admin.py:499 users/forms/admin.py:593
+msgid "Usernames"
+msgstr "Noms d'utilisateurs"
+
+#: users/forms/admin.py:500 users/forms/admin.py:594
+msgid "E-mails"
+msgstr "Courriels"
+
 #: users/forms/admin.py:501
 #: users/forms/admin.py:501
+msgid "E-mail domains"
+msgstr "Domaines des courriels"
+
+#: users/forms/admin.py:507
+msgid "IP addresses"
+msgstr "Adresses IP"
+
+#: users/forms/admin.py:508
+msgid "First segment of IP addresses"
+msgstr "Le premier segment des adresses IP"
+
+#: users/forms/admin.py:509
+msgid "First two segments of IP addresses"
+msgstr "Les deux premiers segments des adresses IP"
+
+#: users/forms/admin.py:515
 msgid "Check type"
 msgid "Check type"
 msgstr "Vérifier le type"
 msgstr "Vérifier le type"
 
 
-#: users/forms/admin.py:506
+#: users/forms/admin.py:520
 msgid "Restrict this ban to registrations"
 msgid "Restrict this ban to registrations"
 msgstr "Restreindre cette interdiction aux enregistrements"
 msgstr "Restreindre cette interdiction aux enregistrements"
 
 
-#: users/forms/admin.py:508
+#: users/forms/admin.py:522
 msgid ""
 msgid ""
 "Changing this to yes will make this ban check be only performed on "
 "Changing this to yes will make this ban check be only performed on "
 "registration step. This is good if you want to block certain registrations "
 "registration step. This is good if you want to block certain registrations "
@@ -5829,11 +6152,11 @@ msgstr ""
 "bloquer certains enregistrements en particulier ceux provenant de courriels "
 "bloquer certains enregistrements en particulier ceux provenant de courriels "
 "récemment compromis,  sans nuire aux utilisateurs existants. "
 "récemment compromis,  sans nuire aux utilisateurs existants. "
 
 
-#: users/forms/admin.py:514
+#: users/forms/admin.py:528
 msgid "Banned value"
 msgid "Banned value"
 msgstr "Valeur interdite"
 msgstr "Valeur interdite"
 
 
-#: users/forms/admin.py:517
+#: users/forms/admin.py:531
 msgid ""
 msgid ""
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
@@ -5843,55 +6166,78 @@ msgstr ""
 "résultats bruts. Par exemple, interdire IP pour la valeur « 83.* » interdira"
 "résultats bruts. Par exemple, interdire IP pour la valeur « 83.* » interdira"
 " toutes les adresses IP commençant par « 83. »."
 " toutes les adresses IP commençant par « 83. »."
 
 
-#: users/forms/admin.py:522
+#: users/forms/admin.py:536
 msgid "Banned value can't be longer than 250 characters."
 msgid "Banned value can't be longer than 250 characters."
 msgstr ""
 msgstr ""
 "Une valeur interdite ne peut être de taille supérieure à 250 caractères."
 "Une valeur interdite ne peut être de taille supérieure à 250 caractères."
 
 
-#: users/forms/admin.py:529
+#: users/forms/admin.py:543
 msgid "Optional message displayed to user instead of default one."
 msgid "Optional message displayed to user instead of default one."
 msgstr ""
 msgstr ""
 "Message optionnel adressé aux utilisateurs à la place d'un message par "
 "Message optionnel adressé aux utilisateurs à la place d'un message par "
 "défaut."
 "défaut."
 
 
-#: users/forms/admin.py:548
+#: users/forms/admin.py:562
 msgid "Leave this field empty for this ban to never expire."
 msgid "Leave this field empty for this ban to never expire."
 msgstr ""
 msgstr ""
 "Laisser ce champ vide de façon à ce que cette interdiction ne se termine "
 "Laisser ce champ vide de façon à ce que cette interdiction ne se termine "
 "jamais."
 "jamais."
 
 
-#: users/forms/admin.py:568
+#: users/forms/admin.py:582
 msgid "Banned value is too vague."
 msgid "Banned value is too vague."
 msgstr "La valeur interdite est trop imprécise."
 msgstr "La valeur interdite est trop imprécise."
 
 
-#: users/forms/admin.py:578
+#: users/forms/admin.py:592
 msgid "All bans"
 msgid "All bans"
 msgstr "Toutes les interdictions."
 msgstr "Toutes les interdictions."
 
 
-#: users/forms/admin.py:581
+#: users/forms/admin.py:595
 msgid "IPs"
 msgid "IPs"
 msgstr "Les IPs"
 msgstr "Les IPs"
 
 
-#: users/forms/admin.py:584
+#: users/forms/admin.py:598
 msgid "Banned value begins with"
 msgid "Banned value begins with"
 msgstr "Une valeur interdite commence par "
 msgstr "Une valeur interdite commence par "
 
 
-#: users/forms/admin.py:586
+#: users/forms/admin.py:600
 msgid "Registration only"
 msgid "Registration only"
 msgstr "Enregistrement uniquement"
 msgstr "Enregistrement uniquement"
 
 
-#: users/forms/admin.py:589 users/forms/admin.py:598
+#: users/forms/admin.py:603 users/forms/admin.py:612
 msgid "Any"
 msgid "Any"
 msgstr "N'importe lequel"
 msgstr "N'importe lequel"
 
 
-#: users/forms/admin.py:599
+#: users/forms/admin.py:613
 msgid "Active"
 msgid "Active"
 msgstr "Actif"
 msgstr "Actif"
 
 
-#: users/forms/admin.py:600
+#: users/forms/admin.py:614 users/models/datadownload.py:26
 msgid "Expired"
 msgid "Expired"
 msgstr "Expiré"
 msgstr "Expiré"
 
 
+#: users/forms/admin.py:649
+msgid "Usernames or emails"
+msgstr ""
+
+#: users/forms/admin.py:651
+msgid ""
+"Enter every item in new line. Duplicates will be ignored. This field is case"
+" insensitive. Depending on site configuration and amount of data to archive "
+"it may take up to few days for requests to complete. E-mail will "
+"notification will be sent to every user once their download is ready."
+msgstr ""
+
+#: users/forms/admin.py:667
+#, python-format
+msgid ""
+"You may not enter more than 20 items at single time (You have entered "
+"%(show_value)s)."
+msgstr ""
+
+#: users/forms/admin.py:684
+msgid "One or more specified users could not be found."
+msgstr ""
+
 #: users/forms/auth.py:16
 #: users/forms/auth.py:16
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Remplissez les deux champs."
 msgstr "Remplissez les deux champs."
@@ -5952,20 +6298,29 @@ msgstr ""
 "Un administrateur doit d'abord activer votre compte pour que vous puissiez "
 "Un administrateur doit d'abord activer votre compte pour que vous puissiez "
 "demander un nouveau mot de passe"
 "demander un nouveau mot de passe"
 
 
-#: users/forms/register.py:27
+#: users/forms/register.py:34
 msgid "This usernane is not allowed."
 msgid "This usernane is not allowed."
 msgstr "Ce nom d'utilisateur n'est pas autorisé."
 msgstr "Ce nom d'utilisateur n'est pas autorisé."
 
 
-#: users/forms/register.py:38 users/validators.py:41
+#: users/forms/register.py:45 users/validators.py:41
 msgid "This e-mail address is not allowed."
 msgid "This e-mail address is not allowed."
 msgstr "Ce courriel n'est pas autorisé."
 msgstr "Ce courriel n'est pas autorisé."
 
 
-#: users/forms/register.py:47
+#: users/forms/register.py:51
+msgid "This agreement is required."
+msgstr ""
+
+#: users/forms/register.py:60
 msgid "New registrations from this IP address are not allowed."
 msgid "New registrations from this IP address are not allowed."
 msgstr ""
 msgstr ""
 "De nouveaux enregistrements provenant de cette adresse IP ne sont pas "
 "De nouveaux enregistrements provenant de cette adresse IP ne sont pas "
 "autorisés."
 "autorisés."
 
 
+#: users/management/commands/prepareuserdatadownloads.py:34
+#, python-format
+msgid "%(user)s, your data download is ready"
+msgstr ""
+
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0006_update_settings.py:19
 #: users/migrations/0006_update_settings.py:19
 msgid ""
 msgid ""
@@ -6203,7 +6558,7 @@ msgstr ""
 "affectées par la casse."
 "affectées par la casse."
 
 
 #: users/migrations/0004_default_ranks.py:17
 #: users/migrations/0004_default_ranks.py:17
-#: users/migrations/0004_default_ranks.py:18 users/models/user.py:111
+#: users/migrations/0004_default_ranks.py:18 users/models/user.py:113
 msgid "Forum team"
 msgid "Forum team"
 msgstr "Équipe du forum"
 msgstr "Équipe du forum"
 
 
@@ -6216,48 +6571,60 @@ msgstr "Équipe "
 msgid "Members"
 msgid "Members"
 msgstr "Membres"
 msgstr "Membres"
 
 
-#: users/models/user.py:37
+#: users/models/datadownload.py:23
+msgid "Pending"
+msgstr ""
+
+#: users/models/datadownload.py:24
+msgid "Processing"
+msgstr ""
+
+#: users/models/datadownload.py:25
+msgid "Ready"
+msgstr ""
+
+#: users/models/user.py:38
 msgid "User must have an email address."
 msgid "User must have an email address."
 msgstr "L'utilisateur doit avoir un courriel."
 msgstr "L'utilisateur doit avoir un courriel."
 
 
-#: users/models/user.py:146
+#: users/models/user.py:148
 msgid "Notify"
 msgid "Notify"
 msgstr "Notifier"
 msgstr "Notifier"
 
 
-#: users/models/user.py:147
+#: users/models/user.py:149
 msgid "Notify with e-mail"
 msgid "Notify with e-mail"
 msgstr "Notifier par courriel"
 msgstr "Notifier par courriel"
 
 
-#: users/models/user.py:155
+#: users/models/user.py:157
 msgid "Everybody"
 msgid "Everybody"
 msgstr "Tout le monde"
 msgstr "Tout le monde"
 
 
-#: users/models/user.py:156
+#: users/models/user.py:158
 msgid "Users I follow"
 msgid "Users I follow"
 msgstr "Utilisateurs que je suis"
 msgstr "Utilisateurs que je suis"
 
 
-#: users/models/user.py:157
+#: users/models/user.py:159
 msgid "Nobody"
 msgid "Nobody"
 msgstr "Personne"
 msgstr "Personne"
 
 
-#: users/models/user.py:175
+#: users/models/user.py:177
 msgid "joined on"
 msgid "joined on"
 msgstr "inscrit le"
 msgstr "inscrit le"
 
 
-#: users/models/user.py:190
+#: users/models/user.py:191
 msgid "staff status"
 msgid "staff status"
 msgstr "Statut du staff"
 msgstr "Statut du staff"
 
 
-#: users/models/user.py:192
+#: users/models/user.py:193
 msgid "Designates whether the user can log into admin sites."
 msgid "Designates whether the user can log into admin sites."
 msgstr ""
 msgstr ""
 "Indique si l'utilisateur peut se connecter sur les sites d'administration."
 "Indique si l'utilisateur peut se connecter sur les sites d'administration."
 
 
-#: users/models/user.py:199
+#: users/models/user.py:200
 msgid "active"
 msgid "active"
 msgstr "Actif"
 msgstr "Actif"
 
 
-#: users/models/user.py:203
+#: users/models/user.py:204
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Unselect this "
 "Designates whether this user should be treated as active. Unselect this "
 "instead of deleting accounts."
 "instead of deleting accounts."
@@ -6646,11 +7013,7 @@ msgstr "Ceci n'est pas un pseudo twitter valide."
 msgid "Join IP"
 msgid "Join IP"
 msgstr "IP d'inscription"
 msgstr "IP d'inscription"
 
 
-#: users/profilefields/default.py:99
-msgid "Last IP"
-msgstr "Dernière IP"
-
-#: users/registration.py:9
+#: users/registration.py:11
 #, python-format
 #, python-format
 msgid "Welcome on %(forum_name)s forums!"
 msgid "Welcome on %(forum_name)s forums!"
 msgstr "Bienvenue sur le forum %(forum_name)s !"
 msgstr "Bienvenue sur le forum %(forum_name)s !"
@@ -6692,14 +7055,30 @@ msgstr "Vous devez entrer un nouveau courriel."
 msgid "New e-mail is same as current one."
 msgid "New e-mail is same as current one."
 msgstr "La nouveau courriel est le même que l'actuel."
 msgstr "La nouveau courriel est le même que l'actuel."
 
 
-#: users/social/pipeline.py:74
+#: users/signals.py:31
+msgid "Joined on"
+msgstr ""
+
+#: users/signals.py:32
+msgid "Joined from ip"
+msgstr ""
+
+#: users/signals.py:72
+msgid "New username"
+msgstr ""
+
+#: users/signals.py:73
+msgid "Old username"
+msgstr ""
+
+#: users/social/pipeline.py:77
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "The e-mail address associated with your %(backend)s account is not available"
 "The e-mail address associated with your %(backend)s account is not available"
 " for use on this site."
 " for use on this site."
 msgstr ""
 msgstr ""
 
 
-#: users/social/pipeline.py:83
+#: users/social/pipeline.py:86
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "Your account has to be activated by site administrator before you will be "
 "Your account has to be activated by site administrator before you will be "
@@ -6805,6 +7184,42 @@ msgstr "Le bannissement « %(name)s » a été modifié."
 msgid "Ban \"%(name)s\" has been removed."
 msgid "Ban \"%(name)s\" has been removed."
 msgstr "L'interdiction \"%(name)s\" a été levée."
 msgstr "L'interdiction \"%(name)s\" a été levée."
 
 
+#: users/views/admin/datadownloads.py:23
+msgid "With data downloads: 0"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:24
+msgid "Select data downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:28
+msgid "Expire downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:30
+msgid "Are you sure you want to set selected data downloads as expired?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:34
+msgid "Delete downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:36
+msgid "Are you sure you want to delete selected data downloads?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:51
+msgid "Selected data downloads have been set as expired."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:57
+msgid "Selected data downloads have been deleted."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:68
+msgid "Data downloads have been requested for specified users."
+msgstr ""
+
 #: users/views/admin/ranks.py:16
 #: users/views/admin/ranks.py:16
 msgid "Requested rank does not exist."
 msgid "Requested rank does not exist."
 msgstr "Le rang demandé n'existe pas."
 msgstr "Le rang demandé n'existe pas."
@@ -6856,39 +7271,43 @@ msgstr "Le rang « %(name)s » est déjà le rang par défaut."
 msgid "Rank \"%(name)s\" has been made default."
 msgid "Rank \"%(name)s\" has been made default."
 msgstr "Le rang « %(name)s » a été défini comme rang par défaut."
 msgstr "Le rang « %(name)s » a été défini comme rang par défaut."
 
 
-#: users/views/admin/users.py:59
+#: users/views/admin/users.py:60
 msgid "Biggest posters"
 msgid "Biggest posters"
 msgstr "Intervenants les plus actifs"
 msgstr "Intervenants les plus actifs"
 
 
-#: users/views/admin/users.py:60
+#: users/views/admin/users.py:61
 msgid "Smallest posters"
 msgid "Smallest posters"
 msgstr "intervenants les moins actifs"
 msgstr "intervenants les moins actifs"
 
 
-#: users/views/admin/users.py:62
+#: users/views/admin/users.py:63
 msgid "With users: 0"
 msgid "With users: 0"
 msgstr "Avec des utilisateurs : 0"
 msgstr "Avec des utilisateurs : 0"
 
 
-#: users/views/admin/users.py:63
+#: users/views/admin/users.py:64
 msgid "Select users"
 msgid "Select users"
 msgstr "Sélectionner des utilisateurs "
 msgstr "Sélectionner des utilisateurs "
 
 
-#: users/views/admin/users.py:67
+#: users/views/admin/users.py:68
 msgid "Activate accounts"
 msgid "Activate accounts"
 msgstr "Activer des comptes"
 msgstr "Activer des comptes"
 
 
-#: users/views/admin/users.py:77
+#: users/views/admin/users.py:78
+msgid "Request data download"
+msgstr ""
+
+#: users/views/admin/users.py:83
 msgid "Delete accounts"
 msgid "Delete accounts"
 msgstr "Supprimer des comptes"
 msgstr "Supprimer des comptes"
 
 
-#: users/views/admin/users.py:79
+#: users/views/admin/users.py:85
 msgid "Are you sure you want to delete selected users?"
 msgid "Are you sure you want to delete selected users?"
 msgstr "Etes vous certain de supprimer les utilisateurs sélectionnés ?"
 msgstr "Etes vous certain de supprimer les utilisateurs sélectionnés ?"
 
 
-#: users/views/admin/users.py:83
+#: users/views/admin/users.py:89
 msgid "Delete all"
 msgid "Delete all"
 msgstr "Supprimer tout"
 msgstr "Supprimer tout"
 
 
-#: users/views/admin/users.py:86
+#: users/views/admin/users.py:92
 msgid ""
 msgid ""
 "Are you sure you want to delete selected users? This will also delete all "
 "Are you sure you want to delete selected users? This will also delete all "
 "content associated with their accounts."
 "content associated with their accounts."
@@ -6896,54 +7315,58 @@ msgstr ""
 "Etes vous certain de vouloir supprimer les utilisateurs sélectionnés ? Cela "
 "Etes vous certain de vouloir supprimer les utilisateurs sélectionnés ? Cela "
 "supprimera également tous les contenus associés à leurs comptes."
 "supprimera également tous les contenus associés à leurs comptes."
 
 
-#: users/views/admin/users.py:107
+#: users/views/admin/users.py:113
 msgid "You have to select inactive users."
 msgid "You have to select inactive users."
 msgstr "Vous devez sélectionner des utilisateurs inactifs."
 msgstr "Vous devez sélectionner des utilisateurs inactifs."
 
 
-#: users/views/admin/users.py:114
+#: users/views/admin/users.py:120
 #, python-format
 #, python-format
 msgid "Your account on %(forum_name)s forums has been activated"
 msgid "Your account on %(forum_name)s forums has been activated"
 msgstr "Votre compte sur le forum %(forum_name)s a été activé."
 msgstr "Votre compte sur le forum %(forum_name)s a été activé."
 
 
-#: users/views/admin/users.py:119
+#: users/views/admin/users.py:125
 msgid "Selected users accounts have been activated."
 msgid "Selected users accounts have been activated."
 msgstr "Les comptes des utilisateurs sélectionnés ont été activés."
 msgstr "Les comptes des utilisateurs sélectionnés ont été activés."
 
 
-#: users/views/admin/users.py:125
+#: users/views/admin/users.py:131
 #, python-format
 #, python-format
 msgid "%(user)s is super admin and can't be banned."
 msgid "%(user)s is super admin and can't be banned."
 msgstr "%(user)s est un super administrateur et ne peut être banni."
 msgstr "%(user)s est un super administrateur et ne peut être banni."
 
 
-#: users/views/admin/users.py:186
+#: users/views/admin/users.py:194
 msgid "Selected users have been banned."
 msgid "Selected users have been banned."
 msgstr "Les utilisateurs sélectionnés ont été bannis."
 msgstr "Les utilisateurs sélectionnés ont été bannis."
 
 
-#: users/views/admin/users.py:201 users/views/admin/users.py:215
-#: users/views/admin/users.py:331
+#: users/views/admin/users.py:212
+msgid "Data download requests have been placed for selected users."
+msgstr ""
+
+#: users/views/admin/users.py:217 users/views/admin/users.py:230
+#: users/views/admin/users.py:346
 msgid "You can't delete yourself."
 msgid "You can't delete yourself."
 msgstr "Vous ne pouvez supprimer votre compte."
 msgstr "Vous ne pouvez supprimer votre compte."
 
 
-#: users/views/admin/users.py:203 users/views/admin/users.py:217
-#: users/views/admin/users.py:334
+#: users/views/admin/users.py:219 users/views/admin/users.py:232
+#: users/views/admin/users.py:349
 #, python-format
 #, python-format
 msgid "%(user)s is admin and can't be deleted."
 msgid "%(user)s is admin and can't be deleted."
 msgstr "%(user)s est administrateur et ne peut être supprimé."
 msgstr "%(user)s est administrateur et ne peut être supprimé."
 
 
-#: users/views/admin/users.py:209
+#: users/views/admin/users.py:225
 msgid "Selected users have been deleted."
 msgid "Selected users have been deleted."
 msgstr "Les utilisateurs sélectionnés ont été supprimés."
 msgstr "Les utilisateurs sélectionnés ont été supprimés."
 
 
-#: users/views/admin/users.py:232
+#: users/views/admin/users.py:247
 #, python-format
 #, python-format
 msgid "New user \"%(user)s\" has been registered."
 msgid "New user \"%(user)s\" has been registered."
 msgstr "Le nouvel utilisateur « %(user)s » a été enregistré."
 msgstr "Le nouvel utilisateur « %(user)s » a été enregistré."
 
 
-#: users/views/admin/users.py:261
+#: users/views/admin/users.py:276
 #, python-format
 #, python-format
 msgid "User \"%(user)s\" has been edited."
 msgid "User \"%(user)s\" has been edited."
 msgstr "L'utilisateur « %(user)s » a été modifié."
 msgstr "L'utilisateur « %(user)s » a été modifié."
 
 
-#: users/views/admin/users.py:328
+#: users/views/admin/users.py:343
 msgid "This action can't be accessed directly."
 msgid "This action can't be accessed directly."
 msgstr "Il n'est pas possible de réaliser cette action directement."
 msgstr "Il n'est pas possible de réaliser cette action directement."
 
 

BIN
misago/locale/fr/LC_MESSAGES/djangojs.mo


+ 285 - 207
misago/locale/fr/LC_MESSAGES/djangojs.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-20 21:20+0200\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Amandine G <amandyfriendly@msn.com>, 2017\n"
 "Last-Translator: Amandine G <amandyfriendly@msn.com>, 2017\n"
 "Language-Team: French (https://www.transifex.com/misago/teams/65369/fr/)\n"
 "Language-Team: French (https://www.transifex.com/misago/teams/65369/fr/)\n"
@@ -39,8 +39,30 @@ msgid "Promise can't be resolved itself"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:1
 #: static/misago/js/misago.js:1
-msgid "By registering you agree to site's terms and conditions."
-msgstr "En vous enregistrant, vous acceptez les termes et conditions du site."
+msgid "the terms of service"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "the privacy policy"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "I have read and accept %(agreement)s."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid ""
+"Declining will result in immediate deactivation and deletion of your "
+"account. This action is not reversible."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Decline"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Accept and continue"
+msgstr ""
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
@@ -48,11 +70,12 @@ msgstr "En vous enregistrant, vous acceptez les termes et conditions du site."
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Close"
 msgid "Close"
 msgstr "Fermer"
 msgstr "Fermer"
 
 
-#: static/misago/js/misago.js:1 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:1 static/misago/js/misago.js:6
 msgid "Add participant"
 msgid "Add participant"
 msgstr "Ajouter un participant"
 msgstr "Ajouter un participant"
 
 
@@ -70,9 +93,10 @@ msgstr "Utilisateur à ajouter"
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:6 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:6 static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Cancel"
 msgid "Cancel"
 msgstr "Annuler"
 msgstr "Annuler"
 
 
@@ -204,8 +228,8 @@ msgid "Generate my individual avatar"
 msgstr "Générer mon avatar personnel"
 msgstr "Générer mon avatar personnel"
 
 
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "Ok"
 msgid "Ok"
 msgstr "Ok"
 msgstr "Ok"
 
 
@@ -274,40 +298,40 @@ msgstr "Déposer le code"
 msgid "Emphase selection"
 msgid "Emphase selection"
 msgstr "Accentuer la selection"
 msgstr "Accentuer la selection"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert horizontal ruler"
 msgid "Insert horizontal ruler"
 msgstr "Insérer une barre horizontale"
 msgstr "Insérer une barre horizontale"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link to image"
 msgid "Enter link to image"
 msgstr "Lien vers une image"
 msgstr "Lien vers une image"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter image label (optional)"
 msgid "Enter image label (optional)"
 msgstr "Donnez un nom à l'image (facultatif)"
 msgstr "Donnez un nom à l'image (facultatif)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert image"
 msgid "Insert image"
 msgstr "Insérer une image"
 msgstr "Insérer une image"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link address"
 msgid "Enter link address"
 msgstr "Adresse du lien"
 msgstr "Adresse du lien"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link label (optional)"
 msgid "Enter link label (optional)"
 msgstr "Étiquette pour le lien (facultatif)"
 msgstr "Étiquette pour le lien (facultatif)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert link"
 msgid "Insert link"
 msgstr "Insérer un lien"
 msgstr "Insérer un lien"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter quote autor, prefix usernames with @"
 msgid "Enter quote autor, prefix usernames with @"
 msgstr ""
 msgstr ""
 "Pour citer un utilisateur, précéder son nom d'utilisateur du caractère @"
 "Pour citer un utilisateur, précéder son nom d'utilisateur du caractère @"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert quote"
 msgid "Insert quote"
 msgstr "Insérer une citation"
 msgstr "Insérer une citation"
 
 
@@ -339,7 +363,7 @@ msgstr "Annuler la suppression"
 msgid "Error uploading %(filename)s"
 msgid "Error uploading %(filename)s"
 msgstr "Erreur pendant le télédépôt de %(filename)s"
 msgstr "Erreur pendant le télédépôt de %(filename)s"
 
 
-#: static/misago/js/misago.js:3 static/misago/js/misago.js:8
+#: static/misago/js/misago.js:3 static/misago/js/misago.js:9
 msgid "Dismiss"
 msgid "Dismiss"
 msgstr "Rejeter"
 msgstr "Rejeter"
 
 
@@ -356,7 +380,7 @@ msgid "Protected"
 msgstr "Protégé"
 msgstr "Protégé"
 
 
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Protect"
 msgid "Protect"
 msgstr "Protéger"
 msgstr "Protéger"
 
 
@@ -391,7 +415,7 @@ msgid ""
 " deleted during the merge."
 " deleted during the merge."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:18
 msgid "Poll"
 msgid "Poll"
 msgstr "Sondage"
 msgstr "Sondage"
 
 
@@ -406,6 +430,7 @@ msgid "Are you sure you want to delete all polls?"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Merge threads"
 msgid "Merge threads"
 msgstr "Fusionner les fils"
 msgstr "Fusionner les fils"
 
 
@@ -431,8 +456,7 @@ msgstr "Posté par %(poster)s le %(posted_on)s dans %(category)s."
 msgid "%(title)s, joined on %(joined_on)s"
 msgid "%(title)s, joined on %(joined_on)s"
 msgstr "%(title)s, membre depuis le %(joined_on)s"
 msgstr "%(title)s, membre depuis le %(joined_on)s"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "Change username"
 msgid "Change username"
 msgstr "Changer de nom d'utilisateur"
 msgstr "Changer de nom d'utilisateur"
 
 
@@ -474,7 +498,7 @@ msgstr[1] ""
 msgid "Your new username is same as current one."
 msgid "Your new username is same as current one."
 msgstr "Votre nouveau nom d'utilisateur est identique a l'actuel."
 msgstr "Votre nouveau nom d'utilisateur est identique a l'actuel."
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "New username"
 msgid "New username"
 msgstr "Nouveau nom d'utilisateur"
 msgstr "Nouveau nom d'utilisateur"
 
 
@@ -483,15 +507,15 @@ msgid "Your username has been changed successfully."
 msgstr "Votre nom d'utilisateur a bien été changé."
 msgstr "Votre nom d'utilisateur a bien été changé."
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change your options"
 msgid "Change your options"
 msgstr "Changer vos options"
 msgstr "Changer vos options"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5
 msgid "Enter your password to confirm account deletion."
 msgid "Enter your password to confirm account deletion."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:13
 msgid "Delete account"
 msgid "Delete account"
 msgstr "Supprimer le compte"
 msgstr "Supprimer le compte"
 
 
@@ -527,7 +551,54 @@ msgstr ""
 msgid "Delete my account"
 msgid "Delete my account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:5
+msgid "Your request for data download has been registered."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download your data"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"To download your data from the site, click the \"Request data download\" "
+"button. Depending on amount of data to be archived and number of users "
+"wanting to download their data at same time it may take up to few days for "
+"your download to be prepared. An e-mail with notification will be sent to "
+"you when your data is ready to be downloaded."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"The download will only be available for limited amount of time, after which "
+"it will be deleted from the site and marked as expired."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Requested on"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "You have no data downloads."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Request data download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is being prepared"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is expired"
+msgstr ""
+
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:12
 msgid "Your details have been updated."
 msgid "Your details have been updated."
 msgstr "Vos informations ont été mises à jour."
 msgstr "Vos informations ont été mises à jour."
 
 
@@ -612,7 +683,7 @@ msgstr "Fils que je démarre"
 msgid "Threads I reply to"
 msgid "Threads I reply to"
 msgstr "Fils auxquels je réponds"
 msgstr "Fils auxquels je réponds"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:6
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "Changer l'email ou le mot de passe"
 msgstr "Changer l'email ou le mot de passe"
 
 
@@ -662,7 +733,7 @@ msgstr "Nouveau mot de passe"
 msgid "Repeat password"
 msgid "Repeat password"
 msgstr "Répéter le mot de passe"
 msgstr "Répéter le mot de passe"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change forgotten password"
 msgid "Change forgotten password"
 msgstr "Changer le mot de passe oublié"
 msgstr "Changer le mot de passe oublié"
 
 
@@ -851,21 +922,21 @@ msgid_plural "%(votes)s votes."
 msgstr[0] "%(votes)s vote."
 msgstr[0] "%(votes)s vote."
 msgstr[1] "%(votes)s votes."
 msgstr[1] "%(votes)s votes."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Votes are public."
 msgid "Votes are public."
 msgstr "Les votes sont publics."
 msgstr "Les votes sont publics."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgstr[0] "%(votes)s vote, %(proc)s% du total."
 msgstr[0] "%(votes)s vote, %(proc)s% du total."
 msgstr[1] "%(votes)s votes, %(proc)s% du total."
 msgstr[1] "%(votes)s votes, %(proc)s% du total."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Your choice."
 msgid "Your choice."
 msgstr "Votre choix."
 msgstr "Votre choix."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s user has voted for this choice."
 msgid "%(votes)s user has voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgstr[0] "%(votes)s utilisateur a voté pour ce choix."
 msgstr[0] "%(votes)s utilisateur a voté pour ce choix."
@@ -883,9 +954,8 @@ msgstr "Vote"
 msgid "See votes"
 msgid "See votes"
 msgstr "Voir les votes"
 msgstr "Voir les votes"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:15
 msgid "Edit"
 msgid "Edit"
 msgstr "Éditer"
 msgstr "Éditer"
 
 
@@ -897,8 +967,7 @@ msgstr ""
 "irréversible !"
 "irréversible !"
 
 
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Delete"
 msgid "Delete"
 msgstr "Supprimer"
 msgstr "Supprimer"
 
 
@@ -964,29 +1033,29 @@ msgstr "La version précédente de la publication a été rétablie."
 msgid "See previous change"
 msgid "See previous change"
 msgstr "Voir le changement précédent"
 msgstr "Voir le changement précédent"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "By %(edited_by)s %(edited_on)s."
 msgid "By %(edited_by)s %(edited_on)s."
 msgstr "Par %(edited_by)s le %(edited_on)s."
 msgstr "Par %(edited_by)s le %(edited_on)s."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This post's contents cannot be displayed."
 msgid "This post's contents cannot be displayed."
 msgstr "Le contenu de cette publication ne peut être affiché."
 msgstr "Le contenu de cette publication ne peut être affiché."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This error is caused by invalid post content manipulation."
 msgid "This error is caused by invalid post content manipulation."
 msgstr ""
 msgstr ""
 "Cette erreur est causée par une mauvaise manipulation du contenu de la "
 "Cette erreur est causée par une mauvaise manipulation du contenu de la "
 "publication."
 "publication."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "posted %(posted_on)s"
 msgid "posted %(posted_on)s"
 msgstr "publié le %(posted_on)s"
 msgstr "publié le %(posted_on)s"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "Removed user"
 msgid "Removed user"
 msgstr "Utilisateur supprimé"
 msgstr "Utilisateur supprimé"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "See post"
 msgid "See post"
 msgstr "Voir la publication"
 msgstr "Voir la publication"
 
 
@@ -1008,7 +1077,7 @@ msgstr "Aucun utilisateur n'a aimé cette publication."
 msgid "Are you sure you want to discard changes?"
 msgid "Are you sure you want to discard changes?"
 msgstr "Êtes-vous sûr de vouloir rejeter les modifications ?"
 msgstr "Êtes-vous sûr de vouloir rejeter les modifications ?"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Vous devez rédiger un message."
 msgstr "Vous devez rédiger un message."
 
 
@@ -1040,11 +1109,12 @@ msgstr "Êtes-vous sûr de vouloir supprimer votre fil de discussion privé ?"
 msgid "You have to enter at least one recipient."
 msgid "You have to enter at least one recipient."
 msgstr "Vous devez renseigner au moins un destinataire."
 msgstr "Vous devez renseigner au moins un destinataire."
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:15
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Vous devez renseigner un titre pour le fil de discussion."
 msgstr "Vous devez renseigner un titre pour le fil de discussion."
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Your thread has been posted."
 msgid "Your thread has been posted."
 msgstr "Votre fil de discussion a bien été publié."
 msgstr "Votre fil de discussion a bien été publié."
 
 
@@ -1052,12 +1122,13 @@ msgstr "Votre fil de discussion a bien été publié."
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgstr "Séparer les noms d'utilisateur par une virgule, p. ex. Danny, Lisa"
 msgstr "Séparer les noms d'utilisateur par une virgule, p. ex. Danny, Lisa"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:19
 msgid "Thread title"
 msgid "Thread title"
 msgstr "Titre du fil"
 msgstr "Titre du fil"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Post thread"
 msgid "Post thread"
 msgstr "Publier le fil"
 msgstr "Publier le fil"
 
 
@@ -1065,35 +1136,35 @@ msgstr "Publier le fil"
 msgid "Are you sure you want to discard thread?"
 msgid "Are you sure you want to discard thread?"
 msgstr "Êtes-vous sûr de vouloir supprimer le fil de discussion ?"
 msgstr "Êtes-vous sûr de vouloir supprimer le fil de discussion ?"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18
 msgid "Closed"
 msgid "Closed"
 msgstr "Fermée"
 msgstr "Fermée"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:16
 msgid "Open"
 msgid "Open"
 msgstr "Ouvert"
 msgstr "Ouvert"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:21
 msgid "Hidden"
 msgid "Hidden"
 msgstr "Caché"
 msgstr "Caché"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Not hidden"
 msgid "Not hidden"
 msgstr "Non caché"
 msgstr "Non caché"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Unpinned"
 msgid "Unpinned"
 msgstr "Non épinglé"
 msgstr "Non épinglé"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned locally"
 msgid "Pinned locally"
 msgstr "Épinglé localement"
 msgstr "Épinglé localement"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned globally"
 msgid "Pinned globally"
@@ -1156,12 +1227,12 @@ msgstr[1] ""
 "(actuellement %(show_value)s)."
 "(actuellement %(show_value)s)."
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Hide"
 msgid "Hide"
 msgstr "Cacher"
 msgstr "Cacher"
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Unhide"
 msgid "Unhide"
 msgstr "Afficher"
 msgstr "Afficher"
 
 
@@ -1185,10 +1256,6 @@ msgid "By %(event_by)s %(event_on)s."
 msgstr "Par %(event_by)s %(event_on)s."
 msgstr "Par %(event_by)s %(event_on)s."
 
 
 #: static/misago/js/misago.js:9
 #: static/misago/js/misago.js:9
-msgid "IP recorded"
-msgstr "IP enregistrée"
-
-#: static/misago/js/misago.js:9
 msgid "Thread title has been changed from %(old_title)s."
 msgid "Thread title has been changed from %(old_title)s."
 msgstr "Le titre du fil %(old_title)s a été modifié."
 msgstr "Le titre du fil %(old_title)s a été modifié."
 
 
@@ -1280,23 +1347,23 @@ msgstr ""
 msgid "Post has been deleted."
 msgid "Post has been deleted."
 msgstr "La publication a été supprimée."
 msgstr "La publication a été supprimée."
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link to this post:"
 msgid "Permament link to this post:"
 msgstr "Lien permanent vers cette publication :"
 msgstr "Lien permanent vers cette publication :"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link"
 msgid "Permament link"
 msgstr "Lien permanent"
 msgstr "Lien permanent"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Mark as best answer"
 msgid "Mark as best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Unmark best answer"
 msgid "Unmark best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
 msgid "This post was edited %(edits)s time."
 msgid "This post was edited %(edits)s time."
 msgid_plural "This post was edited %(edits)s times."
 msgid_plural "This post was edited %(edits)s times."
 msgstr[0] "Cette publication a été modifiée %(edits)s fois."
 msgstr[0] "Cette publication a été modifiée %(edits)s fois."
@@ -1306,17 +1373,15 @@ msgstr[1] "Cette publication a été modifiée %(edits)s fois."
 msgid "Changes history"
 msgid "Changes history"
 msgstr "Historique des modifications"
 msgstr "Historique des modifications"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Approve"
 msgid "Approve"
 msgstr "Approuver"
 msgstr "Approuver"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Move"
 msgid "Move"
 msgstr "Déplacer"
 msgstr "Déplacer"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Split"
 msgid "Split"
 msgstr "Détacher"
 msgstr "Détacher"
 
 
@@ -1329,6 +1394,7 @@ msgid "Move post"
 msgstr "Déplacer la publication"
 msgstr "Déplacer la publication"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You have to enter link to the other thread."
 msgid "You have to enter link to the other thread."
 msgstr "Vous devez entrer le lien vers l'autre fil."
 msgstr "Vous devez entrer le lien vers l'autre fil."
 
 
@@ -1379,7 +1445,7 @@ msgid "Close thread"
 msgstr "Fermer le fil"
 msgstr "Fermer le fil"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19
 msgid "Category"
 msgid "Category"
 msgstr "Catégorie"
 msgstr "Catégorie"
 
 
@@ -1432,32 +1498,32 @@ msgid_plural "%(users)s and %(likes)s other users like this."
 msgstr[0] "%(users)s et %(likes)s autre utilisateur aime cela."
 msgstr[0] "%(users)s et %(likes)s autre utilisateur aime cela."
 msgstr[1] "%(users)s et %(likes)s autre utilisateurs aiment ça."
 msgstr[1] "%(users)s et %(likes)s autre utilisateurs aiment ça."
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Liked"
 msgid "Liked"
 msgstr "J'aime"
 msgstr "J'aime"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Like"
 msgid "Like"
 msgstr "J'aime"
 msgstr "J'aime"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
 msgid "Reply"
 msgid "Reply"
 msgstr "Citer et répondre"
 msgstr "Citer et répondre"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "New post"
 msgid "New post"
 msgstr "Nouvelle publication"
 msgstr "Nouvelle publication"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:20
 msgid "New"
 msgid "New"
 msgstr "Nouveau"
 msgstr "Nouveau"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "This post is protected and may not be edited."
 msgid "This post is protected and may not be edited."
 msgstr "Cette publication est protégée et ne peut être modifiée."
 msgstr "Cette publication est protégée et ne peut être modifiée."
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "protected"
 msgid "protected"
 msgstr "protégé"
 msgstr "protégé"
 
 
@@ -1505,69 +1571,68 @@ msgstr "Vous ne partagez aucune information avec les autres."
 msgid "%(username)s is not sharing any details with others."
 msgid "%(username)s is not sharing any details with others."
 msgstr "%(username)s ne partage aucune information avec les autres"
 msgstr "%(username)s ne partage aucune information avec les autres"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
 msgid "Details"
 msgid "Details"
 msgstr "Détails "
 msgstr "Détails "
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s's details have been updated."
 msgid "%(username)s's details have been updated."
 msgstr "Les informations de %(username)s ont été mises à jour."
 msgstr "Les informations de %(username)s ont été mises à jour."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have no started threads."
 msgid "You have no started threads."
 msgstr "Vous n'avez démarré aucun fil de discussion."
 msgstr "Vous n'avez démarré aucun fil de discussion."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s started no threads."
 msgid "%(username)s started no threads."
 msgstr "%(username)s n'a démarré aucun fil de discussion."
 msgstr "%(username)s n'a démarré aucun fil de discussion."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have started %(threads)s thread."
 msgid "You have started %(threads)s thread."
 msgid_plural "You have started %(threads)s threads."
 msgid_plural "You have started %(threads)s threads."
 msgstr[0] "Vous avez démarré %(threads)s fil de discussion."
 msgstr[0] "Vous avez démarré %(threads)s fil de discussion."
 msgstr[1] "Vous avez démarré %(threads)s fils de discussion."
 msgstr[1] "Vous avez démarré %(threads)s fils de discussion."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has started %(threads)s thread."
 msgid "%(username)s has started %(threads)s thread."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgstr[0] "%(username)s a démarré %(threads)s fil de discussion."
 msgstr[0] "%(username)s a démarré %(threads)s fil de discussion."
 msgstr[1] "%(username)s a démarré %(threads)s fils de discussion."
 msgstr[1] "%(username)s a démarré %(threads)s fils de discussion."
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:13
 msgid "Loading..."
 msgid "Loading..."
 msgstr "Chargement…"
 msgstr "Chargement…"
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:20
 #: static/misago/js/misago.js:20
 msgid "Threads"
 msgid "Threads"
 msgstr "Fils de discussion"
 msgstr "Fils de discussion"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted no messages."
 msgid "You have posted no messages."
 msgstr "Vous n'avez posté aucun message."
 msgstr "Vous n'avez posté aucun message."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s posted no messages."
 msgid "%(username)s posted no messages."
 msgstr "%(username)s n'a posté aucuns messages."
 msgstr "%(username)s n'a posté aucuns messages."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted %(posts)s message."
 msgid "You have posted %(posts)s message."
 msgid_plural "You have posted %(posts)s messages."
 msgid_plural "You have posted %(posts)s messages."
 msgstr[0] "Vous avez posté %(posts)s message."
 msgstr[0] "Vous avez posté %(posts)s message."
 msgstr[1] "Vous avez posté %(posts)s messages."
 msgstr[1] "Vous avez posté %(posts)s messages."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has posted %(posts)s message."
 msgid "%(username)s has posted %(posts)s message."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgstr[0] "%(username)s a posté %(posts)s message."
 msgstr[0] "%(username)s a posté %(posts)s message."
 msgstr[1] "%(username)s a posté %(posts)s messages."
 msgstr[1] "%(username)s a posté %(posts)s messages."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "Posts"
 msgid "Posts"
 msgstr "Publications"
 msgstr "Publications"
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:12
 msgid "Show more (%(more)s)"
 msgid "Show more (%(more)s)"
 msgstr "Montrer davantage (%(more)s)"
 msgstr "Montrer davantage (%(more)s)"
 
 
@@ -1660,6 +1725,7 @@ msgid "Joined %(joined_on)s"
 msgstr "Membre depuis %(joined_on)s"
 msgstr "Membre depuis %(joined_on)s"
 
 
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Moderation"
 msgid "Moderation"
 msgstr "Modération"
 msgstr "Modération"
 
 
@@ -1719,45 +1785,45 @@ msgstr ""
 msgid "Avatar controls"
 msgid "Avatar controls"
 msgstr "Paramètres avatar"
 msgstr "Paramètres avatar"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Username has been changed."
 msgid "Username has been changed."
 msgstr "L’identifiant a été modifié."
 msgstr "L’identifiant a été modifié."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account, threads, posts and other content has been deleted."
 "%(username)s's account, threads, posts and other content has been deleted."
 msgstr ""
 msgstr ""
 "Le compte de %(username)s, ses fils de discussions, ses publications et "
 "Le compte de %(username)s, ses fils de discussions, ses publications et "
 "autres contenus ont été supprimés."
 "autres contenus ont été supprimés."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account has been deleted and other content has been hidden."
 "%(username)s's account has been deleted and other content has been hidden."
 msgstr ""
 msgstr ""
 "Le compte utilisateur de %(username)s a été supprimé. Le contenu associé a "
 "Le compte utilisateur de %(username)s a été supprimé. Le contenu associé a "
 "été caché."
 "été caché."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete %(username)s"
 msgid "Delete %(username)s"
 msgstr "Supprimer %(username)s"
 msgstr "Supprimer %(username)s"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Please wait... (%(countdown)ss)"
 msgid "Please wait... (%(countdown)ss)"
 msgstr "Merci d'attendre… (%(countdown)ss)"
 msgstr "Merci d'attendre… (%(countdown)ss)"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "User content"
 msgid "User content"
 msgstr "Contenu de l'utilisateur"
 msgstr "Contenu de l'utilisateur"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete together with user's account"
 msgid "Delete together with user's account"
 msgstr "Supprimer avec le compte de l'utilisateur"
 msgstr "Supprimer avec le compte de l'utilisateur"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Hide after deleting user's account"
 msgid "Hide after deleting user's account"
 msgstr "Cacher après suppression du compte utilisateur"
 msgstr "Cacher après suppression du compte utilisateur"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Return to users list"
 msgid "Return to users list"
 msgstr "Revenir à la liste utilisateur"
 msgstr "Revenir à la liste utilisateur"
 
 
@@ -1827,32 +1893,32 @@ msgstr ""
 msgid "Register"
 msgid "Register"
 msgstr "S'enregistrer"
 msgstr "S'enregistrer"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Join with %(site)s"
 msgid "Join with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Or create forum account:"
 msgid "Or create forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Username"
 msgid "Username"
 msgstr "Nom d'utilisateur"
 msgstr "Nom d'utilisateur"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "E-mail"
 msgid "E-mail"
 msgstr "E-mail"
 msgstr "E-mail"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Password"
 msgid "Password"
 msgstr "Password"
 msgstr "Password"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Register account"
 msgid "Register account"
 msgstr "Créer un compte"
 msgstr "Créer un compte"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but you need to activate it "
 "%(username)s, your account has been created but you need to activate it "
 "before you will be able to sign in."
 "before you will be able to sign in."
@@ -1860,7 +1926,7 @@ msgstr ""
 "%(username)s, votre compte a été crée mais vous devez l'activer avant de "
 "%(username)s, votre compte a été crée mais vous devez l'activer avant de "
 "pouvoir vous authentifier."
 "pouvoir vous authentifier."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but board administrator will "
 "%(username)s, your account has been created but board administrator will "
 "have to activate it before you will be able to sign in."
 "have to activate it before you will be able to sign in."
@@ -1868,7 +1934,7 @@ msgstr ""
 "%(username)s, votre compte a été crée mais un administrateur doit l'activer "
 "%(username)s, votre compte a été crée mais un administrateur doit l'activer "
 "avant que vous puissiez vous authentifier."
 "avant que vous puissiez vous authentifier."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid ""
 msgid ""
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "activate your account."
 "activate your account."
@@ -1876,32 +1942,31 @@ msgstr ""
 "Nous avons envoyé un e-mail à l'adresse %(email)s contenant un lien "
 "Nous avons envoyé un e-mail à l'adresse %(email)s contenant un lien "
 "d'activation."
 "d'activation."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgstr "Nous enverrons un e-mail à %(email)s lorsque cela se produit."
 msgstr "Nous enverrons un e-mail à %(email)s lorsque cela se produit."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Registration complete"
 msgid "Registration complete"
 msgstr "Inscription terminée"
 msgstr "Inscription terminée"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:25
 msgid "Enter a valid email address."
 msgid "Enter a valid email address."
 msgstr "Entrez une adresse email valide."
 msgstr "Entrez une adresse email valide."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Your e-mail address"
 msgid "Your e-mail address"
 msgstr "Votre adresse e-mail"
 msgstr "Votre adresse e-mail"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Send link"
 msgid "Send link"
 msgstr "Envoyer le lien"
 msgstr "Envoyer le lien"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Activation link was sent to %(email)s"
 msgid "Activation link was sent to %(email)s"
 msgstr "Un lien d'activation a été envoyé à %(email)s"
 msgstr "Un lien d'activation a été envoyé à %(email)s"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Request another link"
 msgid "Request another link"
 msgstr "Demander un autre lien"
 msgstr "Demander un autre lien"
 
 
@@ -1968,41 +2033,41 @@ msgstr "Aucun utilisateur correspondant à la recherche n'a été trouvé."
 msgid "Enter at least two characters to search users."
 msgid "Enter at least two characters to search users."
 msgstr "Entrez au moins deux caractères pour effectuer une recherche."
 msgstr "Entrez au moins deux caractères pour effectuer une recherche."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Renseigner les deux champs."
 msgstr "Renseigner les deux champs."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Activate account"
 msgid "Activate account"
 msgstr "Activer le compte"
 msgstr "Activer le compte"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Sign in with %(site)s"
 msgid "Sign in with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Or use your forum account:"
 msgid "Or use your forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Nom d'utilisateur ou e-mail"
 msgstr "Nom d'utilisateur ou e-mail"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Forgot password?"
 msgid "Forgot password?"
 msgstr "Mot de passe oublié ?"
 msgstr "Mot de passe oublié ?"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid ""
 msgid ""
-"%(username)s, your account has been created and you has been signed in to "
+"%(username)s, your account has been created and you have been signed in to "
 "it."
 "it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Registration completed!"
 msgid "Registration completed!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Return to forum index"
 msgid "Return to forum index"
 msgstr ""
 msgstr ""
 
 
@@ -2011,6 +2076,10 @@ msgid "Sign in with %(backend)s"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
+msgid "You need to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:15
 msgid "Your e-mail address has been verified by %(backend)s."
 msgid "Your e-mail address has been verified by %(backend)s."
 msgstr ""
 msgstr ""
 
 
@@ -2031,7 +2100,7 @@ msgid "Edit title"
 msgstr "Editer le titre"
 msgstr "Editer le titre"
 
 
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:20
 msgid "Unapproved"
 msgid "Unapproved"
 msgstr "Non approuvé"
 msgstr "Non approuvé"
 
 
@@ -2039,7 +2108,7 @@ msgstr "Non approuvé"
 msgid "Unapproved posts"
 msgid "Unapproved posts"
 msgstr "Message non approuvés"
 msgstr "Message non approuvés"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:15 static/misago/js/misago.js:18
 msgid "%(replies)s reply"
 msgid "%(replies)s reply"
 msgid_plural "%(replies)s replies"
 msgid_plural "%(replies)s replies"
 msgstr[0] "%(replies)s réponse"
 msgstr[0] "%(replies)s réponse"
@@ -2065,19 +2134,19 @@ msgstr ""
 "Êtes-vous sûr de vouloir supprimer les publications sélectionnées ? Cette "
 "Êtes-vous sûr de vouloir supprimer les publications sélectionnées ? Cette "
 "action est irréversible !"
 "action est irréversible !"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Merge"
 msgid "Merge"
 msgstr "Fusionner"
 msgstr "Fusionner"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Unprotect"
 msgid "Unprotect"
 msgstr "Non protégé"
 msgstr "Non protégé"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "%(username)s on %(posted_on)s"
 msgid "%(username)s on %(posted_on)s"
 msgstr "%(username)s le %(posted_on)s"
 msgstr "%(username)s le %(posted_on)s"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "One or more posts could not be changed:"
 msgid "One or more posts could not be changed:"
 msgstr "Un ou plusieurs messages n'ont pas pu être modifiés :"
 msgstr "Un ou plusieurs messages n'ont pas pu être modifiés :"
 
 
@@ -2139,19 +2208,19 @@ msgstr "Épingler localement"
 msgid "Unpin"
 msgid "Unpin"
 msgstr "Détacher"
 msgstr "Détacher"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Merge thread"
 msgid "Merge thread"
 msgstr "Fusionner le fil"
 msgstr "Fusionner le fil"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been merged with other one."
 msgid "Thread has been merged with other one."
 msgstr "Le thread a été fusionné avec un autre."
 msgstr "Le thread a été fusionné avec un autre."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Link to thread you want to merge with"
 msgid "Link to thread you want to merge with"
 msgstr "Lien vers le fil que vous souhaitez fusionner"
 msgstr "Lien vers le fil que vous souhaitez fusionner"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid ""
 msgid ""
 "Merge will delete current thread and move its contents to the thread "
 "Merge will delete current thread and move its contents to the thread "
 "specified here."
 "specified here."
@@ -2159,19 +2228,19 @@ msgstr ""
 "La fusion supprimera le fil actuel et son contenu sera déplacé vers le fil "
 "La fusion supprimera le fil actuel et son contenu sera déplacé vers le fil "
 "spécifié ici."
 "spécifié ici."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Move thread"
 msgid "Move thread"
 msgstr "Déplacer le fil"
 msgstr "Déplacer le fil"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You can't move this thread at the moment."
 msgid "You can't move this thread at the moment."
 msgstr "Vous ne pouvez pas déplacer ce fil pour le moment."
 msgstr "Vous ne pouvez pas déplacer ce fil pour le moment."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been moved."
 msgid "Thread has been moved."
 msgstr "Le fil a été déplacé."
 msgstr "Le fil a été déplacé."
 
 
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "New category"
 msgid "New category"
 msgstr "Nouvelle catégorie"
 msgstr "Nouvelle catégorie"
 
 
@@ -2209,15 +2278,15 @@ msgstr "Activée"
 msgid "Disabled"
 msgid "Disabled"
 msgstr "Désactivé"
 msgstr "Désactivé"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Unsubscribe"
 msgid "Unsubscribe"
 msgstr "Se désabonner"
 msgstr "Se désabonner"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe"
 msgid "Subscribe"
 msgstr "S'abonner"
 msgstr "S'abonner"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe with e-mail"
 msgid "Subscribe with e-mail"
 msgstr "S'abonner avec e-mail"
 msgstr "S'abonner avec e-mail"
 
 
@@ -2249,11 +2318,11 @@ msgstr "Dernier message"
 msgid "Options"
 msgid "Options"
 msgstr "Options"
 msgstr "Options"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid "Add poll"
 msgid "Add poll"
 msgstr "Ajouter un sondage"
 msgstr "Ajouter un sondage"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid ""
 msgid ""
 "There is %(threads)s new or updated thread. Click this message to show it."
 "There is %(threads)s new or updated thread. Click this message to show it."
 msgid_plural ""
 msgid_plural ""
@@ -2278,7 +2347,7 @@ msgstr ""
 msgid "Change subscription"
 msgid "Change subscription"
 msgstr "Changer l'abonnement"
 msgstr "Changer l'abonnement"
 
 
-#: static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19
 msgid "Start thread"
 msgid "Start thread"
 msgstr "Démarrer une discussion"
 msgstr "Démarrer une discussion"
 
 
@@ -2358,7 +2427,7 @@ msgstr "Épingler localement "
 msgid "Unpin threads"
 msgid "Unpin threads"
 msgstr "Détacher les fils"
 msgstr "Détacher les fils"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Move threads"
 msgid "Move threads"
 msgstr "Déplacer les fils"
 msgstr "Déplacer les fils"
 
 
@@ -2394,7 +2463,7 @@ msgstr "Modération des fils"
 msgid "One or more threads could not be deleted:"
 msgid "One or more threads could not be deleted:"
 msgstr "Un ou plusieurs fils n'ont pas pu être supprimés:"
 msgstr "Un ou plusieurs fils n'ont pas pu être supprimés:"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You can't move threads because there are no categories you are allowed to "
 "You can't move threads because there are no categories you are allowed to "
 "move them to."
 "move them to."
@@ -2410,11 +2479,11 @@ msgstr ""
 "Vous devez disposer des droits de création de fils dans cette catégorie afin"
 "Vous devez disposer des droits de création de fils dans cette catégorie afin"
 " de pouvoir les fusionner."
 " de pouvoir les fusionner."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Selected threads were moved."
 msgid "Selected threads were moved."
 msgstr "Les fils sélectionnés ont été déplacés."
 msgstr "Les fils sélectionnés ont été déplacés."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You need permission to start threads in category to be able to move threads "
 "You need permission to start threads in category to be able to move threads "
 "to it."
 "to it."
@@ -2422,51 +2491,51 @@ msgstr ""
 "Vous devez disposer des droits de création de fils dans cette catégorie afin"
 "Vous devez disposer des droits de création de fils dans cette catégorie afin"
 " de pouvoir les déplacer."
 " de pouvoir les déplacer."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select all"
 msgid "Select all"
 msgstr "Tout sélectionner"
 msgstr "Tout sélectionner"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select none"
 msgid "Select none"
 msgstr "Tout désélectionner"
 msgstr "Tout désélectionner"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All"
 msgid "All"
 msgstr "Tout"
 msgstr "Tout"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All threads"
 msgid "All threads"
 msgstr "Toutes les discussions"
 msgstr "Toutes les discussions"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My"
 msgid "My"
 msgstr "Mes fils"
 msgstr "Mes fils"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My threads"
 msgid "My threads"
 msgstr "Mes fils"
 msgstr "Mes fils"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "New threads"
 msgid "New threads"
 msgstr "Nouveaux fils"
 msgstr "Nouveaux fils"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread"
 msgid "Unread"
 msgstr "Non lu"
 msgstr "Non lu"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread threads"
 msgid "Unread threads"
 msgstr "Fils non lus"
 msgstr "Fils non lus"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed"
 msgid "Subscribed"
 msgstr "Souscrit"
 msgstr "Souscrit"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed threads"
 msgid "Subscribed threads"
 msgstr "Fils souscrits"
 msgstr "Fils souscrits"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unapproved content"
 msgid "Unapproved content"
 msgstr "Contenu non approuvé"
 msgstr "Contenu non approuvé"
 
 
@@ -2484,7 +2553,8 @@ msgstr ""
 msgid "You have unread private threads!"
 msgid "You have unread private threads!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20 static/misago/js/misago.js:22
+#: static/misago/js/misago.js:20 static/misago/js/misago.js:21
+#: static/misago/js/misago.js:23
 msgid "Private threads"
 msgid "Private threads"
 msgstr "Fils de discussion privés"
 msgstr "Fils de discussion privés"
 
 
@@ -2492,68 +2562,68 @@ msgstr "Fils de discussion privés"
 msgid "Are you sure you want to sign out?"
 msgid "Are you sure you want to sign out?"
 msgstr "Êtes-vous certain⋅e de vouloir vous déconnecter ?"
 msgstr "Êtes-vous certain⋅e de vouloir vous déconnecter ?"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "See your profile"
 msgid "See your profile"
 msgstr "Voir votre profil"
 msgstr "Voir votre profil"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change options"
 msgid "Change options"
 msgstr "Changer les options"
 msgstr "Changer les options"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change avatar"
 msgid "Change avatar"
 msgstr "Changer l'avatar"
 msgstr "Changer l'avatar"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Log out"
 msgid "Log out"
 msgstr "Se déconnecter"
 msgstr "Se déconnecter"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned until %(ban_expires)s"
 msgid "%(username)s is banned until %(ban_expires)s"
 msgstr "%(username)s est banni⋅e jusqu’à %(ban_expires)s"
 msgstr "%(username)s est banni⋅e jusqu’à %(ban_expires)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned"
 msgid "%(username)s is banned"
 msgstr "%(username)s est banni⋅e"
 msgstr "%(username)s est banni⋅e"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is hiding presence"
 msgid "%(username)s is hiding presence"
 msgstr "%(username)s cache sa présence "
 msgstr "%(username)s cache sa présence "
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online (hidden)"
 msgid "%(username)s is online (hidden)"
 msgstr "%(username)s est en ligne (caché⋅e)"
 msgstr "%(username)s est en ligne (caché⋅e)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgstr ""
 msgstr ""
 "%(username)s a été vu pour la dernière fois le %(last_click)s (caché⋅e)"
 "%(username)s a été vu pour la dernière fois le %(last_click)s (caché⋅e)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online"
 msgid "%(username)s is online"
 msgstr "%(username)s est en ligne"
 msgstr "%(username)s est en ligne"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s"
 msgid "%(username)s was last seen %(last_click)s"
 msgstr "%(username)sa été vu pour la dernière fois le %(last_click)s"
 msgstr "%(username)sa été vu pour la dernière fois le %(last_click)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Banned"
 msgid "Banned"
 msgstr "Banni⋅e"
 msgstr "Banni⋅e"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online (hidden)"
 msgid "Online (hidden)"
 msgstr "En ligne (caché⋅e)"
 msgstr "En ligne (caché⋅e)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline (hidden)"
 msgid "Offline (hidden)"
 msgstr "Hors ligne (caché⋅e)"
 msgstr "Hors ligne (caché⋅e)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online"
 msgid "Online"
 msgstr "En ligne"
 msgstr "En ligne"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline"
 msgid "Offline"
 msgstr "Hors ligne"
 msgstr "Hors ligne"
 
 
@@ -2567,19 +2637,19 @@ msgstr[1] "%(followers)s suiveurs"
 msgid "No users have posted any new messages during last %(days)s days."
 msgid "No users have posted any new messages during last %(days)s days."
 msgstr "Aucun utilisateur n'a posté de message depuis %(days)s jours"
 msgstr "Aucun utilisateur n'a posté de message depuis %(days)s jours"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Rank"
 msgid "Rank"
 msgstr "Rang"
 msgstr "Rang"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Ranked posts"
 msgid "Ranked posts"
 msgstr "Messages classés"
 msgstr "Messages classés"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "Total posts"
 msgid "Total posts"
 msgstr "Nombre total de messages"
 msgstr "Nombre total de messages"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgstr[0] "%(posters)s a été l'utilisateur le plus actif depuis%(days)sjours"
 msgstr[0] "%(posters)s a été l'utilisateur le plus actif depuis%(days)sjours"
@@ -2611,7 +2681,7 @@ msgstr "oui"
 msgid "no"
 msgid "no"
 msgstr "non"
 msgstr "non"
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid ""
 msgid ""
 "Private threads are threads which only those that started them and those "
 "Private threads are threads which only those that started them and those "
 "they have invited may see and participate in."
 "they have invited may see and participate in."
@@ -2619,19 +2689,19 @@ msgstr ""
 "Les fils privés sont des fils auxquels seuls leurs créateurs et les "
 "Les fils privés sont des fils auxquels seuls leurs créateurs et les "
 "personnes invitées peuvent avoir accès et y participer."
 "personnes invitées peuvent avoir accès et y participer."
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid "You aren't participating in any private threads."
 msgid "You aren't participating in any private threads."
 msgstr "Vous ne participez à aucune discussion privée."
 msgstr "Vous ne participez à aucune discussion privée."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Lost connection with application."
 msgid "Lost connection with application."
 msgstr "Connexion à l'application perdue."
 msgstr "Connexion à l'application perdue."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Action link is invalid."
 msgid "Action link is invalid."
 msgstr "Le lien n'est pas valide."
 msgstr "Le lien n'est pas valide."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Unknown error has occured."
 msgid "Unknown error has occured."
 msgstr "Une erreur inconnue s'est produite."
 msgstr "Une erreur inconnue s'est produite."
 
 
@@ -2670,15 +2740,23 @@ msgstr "Vous travaillez déjà sur un sondage. Voulez-vous l'abandonner ?"
 msgid "You don't have permission to perform this action."
 msgid "You don't have permission to perform this action."
 msgstr "Vous n'avez pas la permission d'effectuer cette action."
 msgstr "Vous n'avez pas la permission d'effectuer cette action."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "You are banned"
 msgid "You are banned"
 msgstr "Vous êtes banni⋅e"
 msgstr "Vous êtes banni⋅e"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "This field is required."
 msgid "This field is required."
 msgstr "Ce champ est requis."
 msgstr "Ce champ est requis."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
+msgid "You have to accept the terms of service."
+msgstr ""
+
+#: static/misago/js/misago.js:25
+msgid "You have to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at least %(limit_value)s character (it has "
 "Ensure this value has at least %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2692,7 +2770,7 @@ msgstr[1] ""
 "Assurez-vous que cette valeur comporte au moins  %(limit_value)s caractères "
 "Assurez-vous que cette valeur comporte au moins  %(limit_value)s caractères "
 "(actuellement %(show_value)s)."
 "(actuellement %(show_value)s)."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at most %(limit_value)s character (it has "
 "Ensure this value has at most %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2706,7 +2784,7 @@ msgstr[1] ""
 "Assurez-vous que cette valeur comporte au plus  %(limit_value)s caractères "
 "Assurez-vous que cette valeur comporte au plus  %(limit_value)s caractères "
 "(actuellement %(show_value)s)."
 "(actuellement %(show_value)s)."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username must be at least %(limit_value)s character long."
 msgid "Username must be at least %(limit_value)s character long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgstr[0] ""
 msgstr[0] ""
@@ -2714,7 +2792,7 @@ msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 "Le nom d'utilisateur doit comporter au moins %(limit_value)s caractères."
 "Le nom d'utilisateur doit comporter au moins %(limit_value)s caractères."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgstr[0] ""
 msgstr[0] ""
@@ -2722,13 +2800,13 @@ msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 "Le nom d'utilisateur peut comporter au plus %(limit_value)s caractères."
 "Le nom d'utilisateur peut comporter au plus %(limit_value)s caractères."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username can only contain latin alphabet letters and digits."
 msgid "Username can only contain latin alphabet letters and digits."
 msgstr ""
 msgstr ""
 "Le nom d'utilisateur ne peut contenir que des lettres et des chiffres de "
 "Le nom d'utilisateur ne peut contenir que des lettres et des chiffres de "
 "l'alphabet latin."
 "l'alphabet latin."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid_plural ""
 msgid_plural ""
 "Valid password must be at least %(limit_value)s characters long."
 "Valid password must be at least %(limit_value)s characters long."

BIN
misago/locale/ru/LC_MESSAGES/django.mo


+ 728 - 303
misago/locale/ru/LC_MESSAGES/django.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-31 23:36+0000\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: alff0x1f <alff3one@gmail.com>, 2018\n"
 "Last-Translator: alff0x1f <alff3one@gmail.com>, 2018\n"
 "Language-Team: Russian (https://www.transifex.com/misago/teams/65369/ru/)\n"
 "Language-Team: Russian (https://www.transifex.com/misago/teams/65369/ru/)\n"
@@ -25,7 +25,7 @@ msgstr ""
 msgid "Permissions"
 msgid "Permissions"
 msgstr "Права доступа"
 msgstr "Права доступа"
 
 
-#: acl/admin.py:33 users/forms/admin.py:414
+#: acl/admin.py:33 users/forms/admin.py:416
 msgid "User roles"
 msgid "User roles"
 msgstr "Роли пользователей"
 msgstr "Роли пользователей"
 
 
@@ -142,17 +142,17 @@ msgstr "Нужно выбрать один или более элементов.
 msgid "Action is not allowed."
 msgid "Action is not allowed."
 msgstr "Действие запрещено."
 msgstr "Действие запрещено."
 
 
-#: admin/views/index.py:70
+#: admin/views/index.py:83
 #, python-format
 #, python-format
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgstr "Устаревшая: %(current)s! (свежая: %(latest)s)"
 msgstr "Устаревшая: %(current)s! (свежая: %(latest)s)"
 
 
-#: admin/views/index.py:78
+#: admin/views/index.py:91
 #, python-format
 #, python-format
 msgid "Up to date! (%(current)s)"
 msgid "Up to date! (%(current)s)"
 msgstr "Самая свежая! (%(current)s)"
 msgstr "Самая свежая! (%(current)s)"
 
 
-#: admin/views/index.py:87
+#: admin/views/index.py:100
 msgid "Failed to connect to GitHub API. Try again later."
 msgid "Failed to connect to GitHub API. Try again later."
 msgstr "Не удалось соединиться с GitHub API. Попробуйте позднее."
 msgstr "Не удалось соединиться с GitHub API. Попробуйте позднее."
 
 
@@ -171,11 +171,11 @@ msgstr "Иерархия категорий"
 msgid "Category roles"
 msgid "Category roles"
 msgstr "Роли категорий"
 msgstr "Роли категорий"
 
 
-#: categories/forms.py:47 users/forms/admin.py:388
+#: categories/forms.py:47 users/forms/admin.py:390
 msgid "Name"
 msgid "Name"
 msgstr "Имя"
 msgstr "Имя"
 
 
-#: categories/forms.py:49 users/forms/admin.py:404
+#: categories/forms.py:49 users/forms/admin.py:406
 msgid "Description"
 msgid "Description"
 msgstr "Описание"
 msgstr "Описание"
 
 
@@ -183,7 +183,7 @@ msgstr "Описание"
 msgid "Optional description explaining category intented purpose."
 msgid "Optional description explaining category intented purpose."
 msgstr "Необязательное описание, объясняющее назначение категории."
 msgstr "Необязательное описание, объясняющее назначение категории."
 
 
-#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:421
+#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:423
 msgid "CSS class"
 msgid "CSS class"
 msgstr "CSS класс"
 msgstr "CSS класс"
 
 
@@ -205,7 +205,7 @@ msgstr ""
 "Только пользователи с соответствующими правами могут оставлять сообщения в "
 "Только пользователи с соответствующими правами могут оставлять сообщения в "
 "закрытых категориях."
 "закрытых категориях."
 
 
-#: categories/forms.py:75 templates/misago/admin/index.html:83
+#: categories/forms.py:75 templates/misago/admin/index.html:110
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/profile/threads.html:8
 #: templates/misago/profile/threads.html:8
@@ -218,7 +218,7 @@ msgstr ""
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
-#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:89
+#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:97
 msgid "Threads"
 msgid "Threads"
 msgstr "Темы"
 msgstr "Темы"
 
 
@@ -533,7 +533,7 @@ msgstr "Неправильный запрос на аутентификацию.
 
 
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: templates/misago/admin/users/edit.html:78
 #: templates/misago/admin/users/edit.html:78
-#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:590
+#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:604
 msgid "Yes"
 msgid "Yes"
 msgstr "Да"
 msgstr "Да"
 
 
@@ -547,7 +547,7 @@ msgstr "Да"
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
-#: users/forms/admin.py:591 users/models/user.py:145
+#: users/forms/admin.py:605 users/models/user.py:147
 msgid "No"
 msgid "No"
 msgstr "Нет"
 msgstr "Нет"
 
 
@@ -651,7 +651,72 @@ msgstr "Значение должно содержать буквы и цифр
 msgid "Value is too long."
 msgid "Value is too long."
 msgstr "Значение слишком длинное."
 msgstr "Значение слишком длинное."
 
 
+#: legal/admin.py:25 templates/misago/admin/users/edit.html:216
+msgid "Agreements"
+msgstr ""
+
+#: legal/api.py:18
+msgid "You have already accepted this agreement."
+msgstr ""
+
+#: legal/api.py:27
+msgid "You need to submit a valid choice."
+msgstr ""
+
+#: legal/forms.py:10 legal/forms.py:60
+#: templates/misago/admin/agreements/list.html:18
+#: templates/misago/admin/attachmenttypes/list.html:16
+#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:589
+msgid "Type"
+msgstr "Тип"
+
+#: legal/forms.py:12 templates/misago/admin/agreements/list.html:16
+#: templates/misago/admin/ranks/list.html:17
+msgid "Title"
+msgstr "Заголовок"
+
+#: legal/forms.py:13
+msgid "Optional, leave empty for agreement to be named after its type."
+msgstr ""
+
+#: legal/forms.py:17
+msgid "Set as active for its type"
+msgstr ""
+
+#: legal/forms.py:19
+msgid ""
+"If other agreement is already active for this type, it will be unset and "
+"replaced with this one. Misago will ask users who didn't accept this "
+"agreement to do so before allowing them to continue using the site's "
+"features."
+msgstr ""
+
+#: legal/forms.py:27
+msgid "Link"
+msgstr ""
+
+#: legal/forms.py:28
+msgid "If your agreement is located on other page, enter here a link to it."
+msgstr ""
+
+#: legal/forms.py:32
+msgid "Text"
+msgstr ""
+
+#: legal/forms.py:33
+msgid "You can use Markdown syntax for rich text elements."
+msgstr ""
+
+#: legal/forms.py:46
+msgid "Please fill in agreement link or text."
+msgstr ""
+
+#: legal/forms.py:65
+msgid "Content"
+msgstr ""
+
 #: legal/migrations/0001_initial.py:16
 #: legal/migrations/0001_initial.py:16
+#: legal/migrations/0003_create_agreements_from_settings.py:57
 msgid "Legal information"
 msgid "Legal information"
 msgstr "Правовая информация"
 msgstr "Правовая информация"
 
 
@@ -700,7 +765,7 @@ msgstr ""
 msgid "Policy title"
 msgid "Policy title"
 msgstr "Заголовок политики"
 msgstr "Заголовок политики"
 
 
-#: legal/migrations/0001_initial.py:64 legal/views.py:46
+#: legal/migrations/0001_initial.py:64 legal/models.py:43
 #: templates/misago/footer.html:27
 #: templates/misago/footer.html:27
 msgid "Privacy policy"
 msgid "Privacy policy"
 msgstr "Политика конфиденциальности"
 msgstr "Политика конфиденциальности"
@@ -729,21 +794,85 @@ msgstr ""
 "доступна для форматирования."
 "доступна для форматирования."
 
 
 #: legal/migrations/0001_initial.py:105
 #: legal/migrations/0001_initial.py:105
+#: legal/migrations/0003_create_agreements_from_settings.py:62
 msgid "Footnote"
 msgid "Footnote"
 msgstr "Сноска"
 msgstr "Сноска"
 
 
 #: legal/migrations/0001_initial.py:106
 #: legal/migrations/0001_initial.py:106
+#: legal/migrations/0003_create_agreements_from_settings.py:63
 msgid "Short message displayed in forum footer."
 msgid "Short message displayed in forum footer."
 msgstr "Короткое сообщение, отображаемое в нижней части форума."
 msgstr "Короткое сообщение, отображаемое в нижней части форума."
 
 
 #: legal/migrations/0001_initial.py:107
 #: legal/migrations/0001_initial.py:107
+#: legal/migrations/0003_create_agreements_from_settings.py:64
 msgid "Forum footer"
 msgid "Forum footer"
 msgstr "Нижняя часть форума."
 msgstr "Нижняя часть форума."
 
 
-#: legal/views.py:65 templates/misago/footer.html:22
+#: legal/migrations/0003_create_agreements_from_settings.py:58
+msgid ""
+"Those settings allow you to set additional legal information for your forum."
+msgstr ""
+
+#: legal/models.py:42 templates/misago/footer.html:22
 msgid "Terms of service"
 msgid "Terms of service"
 msgstr "Условия использования"
 msgstr "Условия использования"
 
 
+#: legal/views/admin.py:17
+msgid "Requested agreement does not exist."
+msgstr ""
+
+#: legal/views/admin.py:29 threads/views/admin/attachments.py:24
+#: users/views/admin/bans.py:24 users/views/admin/datadownloads.py:20
+#: users/views/admin/users.py:56
+msgid "From newest"
+msgstr "От новейшего"
+
+#: legal/views/admin.py:30 threads/views/admin/attachments.py:25
+#: users/views/admin/bans.py:25 users/views/admin/datadownloads.py:21
+#: users/views/admin/users.py:57
+msgid "From oldest"
+msgstr "От старого"
+
+#: legal/views/admin.py:33
+msgid "With agreements: 0"
+msgstr ""
+
+#: legal/views/admin.py:34
+msgid "Select agreements"
+msgstr ""
+
+#: legal/views/admin.py:38
+msgid "Delete agreements"
+msgstr ""
+
+#: legal/views/admin.py:39
+msgid "Are you sure you want to delete those agreements?"
+msgstr ""
+
+#: legal/views/admin.py:49
+msgid "Selected agreements have been deleted."
+msgstr ""
+
+#: legal/views/admin.py:53
+#, python-format
+msgid "New agreement \"%(title)s\" has been saved."
+msgstr ""
+
+#: legal/views/admin.py:63
+#, python-format
+msgid "Agreement \"%(title)s\" has been edited."
+msgstr ""
+
+#: legal/views/admin.py:77
+#, python-format
+msgid "Agreement \"%(title)s\" has been deleted."
+msgstr ""
+
+#: legal/views/admin.py:85
+#, python-format
+msgid "Agreement \"%(title)s\" has been set as active for type \"%(type)s\"."
+msgstr ""
+
 #: markup/finalise.py:22
 #: markup/finalise.py:22
 #, python-format
 #, python-format
 msgid "%(title)s has written:"
 msgid "%(title)s has written:"
@@ -753,15 +882,15 @@ msgstr "%(title)s написал:"
 msgid "Quoted message:"
 msgid "Quoted message:"
 msgstr "Цитата:"
 msgstr "Цитата:"
 
 
-#: project_template/project_name/settings.py:388
+#: project_template/project_name/settings.py:424
 msgid "Personal"
 msgid "Personal"
 msgstr "Личные данные"
 msgstr "Личные данные"
 
 
-#: project_template/project_name/settings.py:397
+#: project_template/project_name/settings.py:433
 msgid "Contact"
 msgid "Contact"
 msgstr "Контакты"
 msgstr "Контакты"
 
 
-#: project_template/project_name/settings.py:405 users/models/ban.py:76
+#: project_template/project_name/settings.py:441 users/models/ban.py:76
 msgid "IP address"
 msgid "IP address"
 msgstr "IP адрес"
 msgstr "IP адрес"
 
 
@@ -869,6 +998,98 @@ msgstr "Активация не удалась"
 msgid "Your account can't be activated at this time."
 msgid "Your account can't be activated at this time."
 msgstr "Ваш аккаунт не может быть активирован сейчас."
 msgstr "Ваш аккаунт не может быть активирован сейчас."
 
 
+#: templates/misago/admin/agreements/form.html:9
+#: templates/misago/admin/agreements/form.html:18
+#: templates/misago/admin/agreements/form.html:28
+#: templates/misago/admin/agreements/list.html:9
+msgid "New agreement"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:43
+#: templates/misago/admin/categoryroles/form.html:43
+#: templates/misago/admin/roles/form.html:43
+msgid "Basic settings"
+msgstr "Базовые настройки"
+
+#: templates/misago/admin/agreements/form.html:51
+msgid "Agreement contents"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:54
+msgid "Fill in one of the fields."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:19
+msgid "Created"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:20
+msgid "Modified"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:33
+#, python-format
+msgid "Active %(type)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:52
+#, python-format
+msgid "%(created_on)s by %(created_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:68
+#, python-format
+msgid "%(last_modified_on)s by %(last_modified_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:72
+msgid "never"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:78
+msgid "Set as active"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:88
+#: templates/misago/admin/attachmenttypes/list.html:54
+#: templates/misago/admin/bans/list.html:55
+#: templates/misago/admin/categories/list.html:66
+#: templates/misago/admin/categoryroles/list.html:27
+#: templates/misago/admin/ranks/list.html:99
+#: templates/misago/admin/roles/list.html:43
+#: templates/misago/admin/warnings/list.html:109
+#: templates/misago/poll/results.html:69
+#: templates/misago/profile/details.html:24
+#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
+msgid "Edit"
+msgstr "Редактировать"
+
+#: templates/misago/admin/agreements/list.html:94
+#: templates/misago/admin/bans/list.html:61
+msgid "Remove"
+msgstr "Удалить"
+
+#: templates/misago/admin/agreements/list.html:106
+msgid "No agreements matching search criteria have been found"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:108
+msgid "No agreements are currently set."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:119
+msgid "Are you sure you want to set this agreement as active for its type?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:124
+msgid "Are you sure you want to delete this agreement?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:133
+#: templates/misago/admin/bans/list.html:95
+msgid "Search bans"
+msgstr "Поиск блокировок"
+
 #: templates/misago/admin/attachments/list.html:7
 #: templates/misago/admin/attachments/list.html:7
 msgid "Attachment"
 msgid "Attachment"
 msgstr "Прикреплённый файл"
 msgstr "Прикреплённый файл"
@@ -879,12 +1100,8 @@ msgstr "Тема"
 
 
 #: templates/misago/admin/attachments/list.html:42
 #: templates/misago/admin/attachments/list.html:42
 #, python-format
 #, python-format
-msgid ""
-"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s from "
-"%(uploader_ip)s."
+msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s."
 msgstr ""
 msgstr ""
-"%(filetype)s, %(size)s, загружено %(uploader)s %(uploaded_on)s с "
-"%(uploader_ip)s."
 
 
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachmenttypes/list.html:47
 #: templates/misago/admin/attachmenttypes/list.html:47
@@ -934,11 +1151,6 @@ msgstr "Базовые опции"
 msgid "Availability"
 msgid "Availability"
 msgstr "Доступность"
 msgstr "Доступность"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:16
-#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:575
-msgid "Type"
-msgstr "Тип"
-
 #: templates/misago/admin/attachmenttypes/list.html:17
 #: templates/misago/admin/attachmenttypes/list.html:17
 msgid "Extensions"
 msgid "Extensions"
 msgstr "Расширения"
 msgstr "Расширения"
@@ -951,19 +1163,6 @@ msgstr "Mime-типы"
 msgid "Files"
 msgid "Files"
 msgstr "Файлы"
 msgstr "Файлы"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:54
-#: templates/misago/admin/bans/list.html:55
-#: templates/misago/admin/categories/list.html:66
-#: templates/misago/admin/categoryroles/list.html:27
-#: templates/misago/admin/ranks/list.html:99
-#: templates/misago/admin/roles/list.html:43
-#: templates/misago/admin/warnings/list.html:109
-#: templates/misago/poll/results.html:69
-#: templates/misago/profile/details.html:24
-#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
-msgid "Edit"
-msgstr "Редактировать"
-
 #: templates/misago/admin/attachmenttypes/list.html:71
 #: templates/misago/admin/attachmenttypes/list.html:71
 msgid "No attachment types are currently defined."
 msgid "No attachment types are currently defined."
 msgstr "Сейчас нет определённых типов вложения."
 msgstr "Сейчас нет определённых типов вложения."
@@ -980,12 +1179,12 @@ msgid "New ban"
 msgstr "Новая блокировка"
 msgstr "Новая блокировка"
 
 
 #: templates/misago/admin/bans/form.html:43
 #: templates/misago/admin/bans/form.html:43
-#: templates/misago/admin/users/ban.html:53
+#: templates/misago/admin/users/ban.html:57
 msgid "Ban settings"
 msgid "Ban settings"
 msgstr "Настройка блокировки"
 msgstr "Настройка блокировки"
 
 
 #: templates/misago/admin/bans/form.html:52
 #: templates/misago/admin/bans/form.html:52
-#: templates/misago/admin/users/ban.html:60
+#: templates/misago/admin/users/ban.html:64
 msgid "Messages"
 msgid "Messages"
 msgstr "Сообщения"
 msgstr "Сообщения"
 
 
@@ -993,8 +1192,8 @@ msgstr "Сообщения"
 msgid "Ban"
 msgid "Ban"
 msgstr "Блокировка"
 msgstr "Блокировка"
 
 
-#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:493
-#: users/forms/admin.py:546
+#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:488
+#: users/forms/admin.py:560
 msgid "Expires on"
 msgid "Expires on"
 msgstr "Истечёт в "
 msgstr "Истечёт в "
 
 
@@ -1007,10 +1206,6 @@ msgstr "%(check_type)s, только для регистрации"
 msgid "Never"
 msgid "Never"
 msgstr "Никогда"
 msgstr "Никогда"
 
 
-#: templates/misago/admin/bans/list.html:61
-msgid "Remove"
-msgstr "Удалить"
-
 #: templates/misago/admin/bans/list.html:73
 #: templates/misago/admin/bans/list.html:73
 msgid "No bans matching search criteria have been found"
 msgid "No bans matching search criteria have been found"
 msgstr "Запрошенные блокировки по заданным критериям поиска не были найдены"
 msgstr "Запрошенные блокировки по заданным критериям поиска не были найдены"
@@ -1023,10 +1218,6 @@ msgstr "В данный момент нет установленных блок
 msgid "Are you sure you want to remove this ban?"
 msgid "Are you sure you want to remove this ban?"
 msgstr "Вы уверены, что хотите удалить эту блокировку?"
 msgstr "Вы уверены, что хотите удалить эту блокировку?"
 
 
-#: templates/misago/admin/bans/list.html:95
-msgid "Search bans"
-msgstr "Поиск блокировок"
-
 #: templates/misago/admin/base_thin.html:8
 #: templates/misago/admin/base_thin.html:8
 msgid "Misago Administration"
 msgid "Misago Administration"
 msgstr "Администрирование Misago"
 msgstr "Администрирование Misago"
@@ -1158,11 +1349,6 @@ msgstr "Вы уверены, что хотите отказаться от из
 msgid "New role"
 msgid "New role"
 msgstr "Новая роль"
 msgstr "Новая роль"
 
 
-#: templates/misago/admin/categoryroles/form.html:43
-#: templates/misago/admin/roles/form.html:43
-msgid "Basic settings"
-msgstr "Базовые настройки"
-
 #: templates/misago/admin/categoryroles/list.html:16
 #: templates/misago/admin/categoryroles/list.html:16
 msgid "Category role"
 msgid "Category role"
 msgstr "Роль категории"
 msgstr "Роль категории"
@@ -1199,6 +1385,61 @@ msgstr ""
 msgid "Change settings"
 msgid "Change settings"
 msgstr "Изменить настройки"
 msgstr "Изменить настройки"
 
 
+#: templates/misago/admin/datadownloads/form.html:6
+#: templates/misago/admin/datadownloads/form.html:11
+#: templates/misago/admin/datadownloads/form.html:17
+msgid "Request new data downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:9
+msgid "Request new downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:17
+#: templates/misago/admin/users/list.html:17 users/forms/admin.py:696
+msgid "User"
+msgstr "Пользователь"
+
+#: templates/misago/admin/datadownloads/list.html:18 threads/forms.py:56
+#: users/forms/admin.py:691
+msgid "Status"
+msgstr "Статус"
+
+#: templates/misago/admin/datadownloads/list.html:19
+msgid "Requested on"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:21 users/forms/admin.py:700
+msgid "Requested by"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:32
+#: templates/misago/admin/datadownloads/list.html:49
+#: templates/misago/admin/datadownloads/list.html:52
+#: templates/misago/admin/users/ban.html:35
+#: templates/misago/admin/users/edit.html:113
+#: templates/misago/admin/users/list.html:35
+#: templates/misago/userslists/active_posters.html:66
+msgid "Avatar"
+msgstr "Аватар"
+
+#: templates/misago/admin/datadownloads/list.html:73
+#: templates/misago/emails/data_download.html:11 users/apps.py:50
+msgid "Download data"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:84
+msgid "No data downloads matching search criteria have been found."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:86
+msgid "No data downloads exist at the moment."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:93
+msgid "Search data downloads"
+msgstr ""
+
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 msgid "Page not available"
 msgid "Page not available"
@@ -1355,44 +1596,73 @@ msgstr "Последняя"
 msgid "Administration Home"
 msgid "Administration Home"
 msgstr "Главная панели администрирования"
 msgstr "Главная панели администрирования"
 
 
-#: templates/misago/admin/index.html:33
+#: templates/misago/admin/index.html:22
+msgid "System checks"
+msgstr ""
+
+#: templates/misago/admin/index.html:26
+msgid "MISAGO_ADDRESS setting appears to be correct."
+msgstr ""
+
+#: templates/misago/admin/index.html:30
+msgid "The settings.py value for MISAGO_ADDRESS appears to be incorrect."
+msgstr ""
+
+#: templates/misago/admin/index.html:38
+#, python-format
+msgid ""
+"Your MISAGO_ADDRESS is set to %(configured_address)s while correct value "
+"appears to be %(correct_address)s."
+msgstr ""
+
+#: templates/misago/admin/index.html:42 templates/misago/admin/index.html:47
+msgid ""
+"Misago uses this setting to build correct links in e-mails sent to site "
+"users."
+msgstr ""
+
+#: templates/misago/admin/index.html:46
+msgid "The settings.py is missing MISAGO_ADDRESS value."
+msgstr ""
+
+#: templates/misago/admin/index.html:60
 msgid "Misago version"
 msgid "Misago version"
 msgstr "Версия Misago"
 msgstr "Версия Misago"
 
 
-#: templates/misago/admin/index.html:56
+#: templates/misago/admin/index.html:83
 msgid "Check version"
 msgid "Check version"
 msgstr "Проверить версию"
 msgstr "Проверить версию"
 
 
-#: templates/misago/admin/index.html:62
+#: templates/misago/admin/index.html:89
 msgid "This feature requires \"packaging\" python module."
 msgid "This feature requires \"packaging\" python module."
 msgstr "Эта функция требует python модуль \"packaging\"."
 msgstr "Эта функция требует python модуль \"packaging\"."
 
 
-#: templates/misago/admin/index.html:76
+#: templates/misago/admin/index.html:103
 msgid "DB Contents"
 msgid "DB Contents"
 msgstr "Содержимое базы данных"
 msgstr "Содержимое базы данных"
 
 
-#: templates/misago/admin/index.html:87
+#: templates/misago/admin/index.html:114
 #: templates/misago/admin/users/delete.html:36
 #: templates/misago/admin/users/delete.html:36
-#: templates/misago/admin/users/list.html:23
+#: templates/misago/admin/users/list.html:24
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: threads/migrations/0002_threads_settings.py:48
 #: threads/migrations/0002_threads_settings.py:48
-#: threads/migrations/0004_update_settings.py:48 users/apps.py:83
+#: threads/migrations/0004_update_settings.py:48 users/apps.py:91
 msgid "Posts"
 msgid "Posts"
 msgstr "Сообщения"
 msgstr "Сообщения"
 
 
-#: templates/misago/admin/index.html:91 templates/misago/navbar.html:40
+#: templates/misago/admin/index.html:118 templates/misago/navbar.html:40
 #: templates/misago/userslists/base.html:5
 #: templates/misago/userslists/base.html:5
-#: templates/misago/userslists/base.html:14 users/admin.py:70
+#: templates/misago/userslists/base.html:14 users/admin.py:80
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 msgid "Users"
 msgid "Users"
 msgstr "Пользователи"
 msgstr "Пользователи"
 
 
-#: templates/misago/admin/index.html:96
+#: templates/misago/admin/index.html:123
 msgid "Inactive users"
 msgid "Inactive users"
 msgstr "Деактивированные пользователи"
 msgstr "Деактивированные пользователи"
 
 
-#: templates/misago/admin/index.html:122
+#: templates/misago/admin/index.html:149
 msgid "Checking..."
 msgid "Checking..."
 msgstr "Проверка..."
 msgstr "Проверка..."
 
 
@@ -1420,7 +1690,7 @@ msgstr "Пожалуйста попробуйте снова."
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Имя пользователя или e-mail"
 msgstr "Имя пользователя или e-mail"
 
 
-#: templates/misago/admin/login.html:62 users/forms/admin.py:60
+#: templates/misago/admin/login.html:62 users/forms/admin.py:62
 #: users/forms/auth.py:59
 #: users/forms/auth.py:59
 msgid "Password"
 msgid "Password"
 msgstr "Пароль"
 msgstr "Пароль"
@@ -1465,17 +1735,13 @@ msgid "Display and visibility"
 msgstr "Отображение и видимость"
 msgstr "Отображение и видимость"
 
 
 #: templates/misago/admin/ranks/list.html:16
 #: templates/misago/admin/ranks/list.html:16
-#: templates/misago/admin/users/list.html:21
+#: templates/misago/admin/users/list.html:22
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:106
 #: templates/misago/userslists/active_posters.html:106
-#: users/forms/admin.py:236
+#: users/forms/admin.py:238
 msgid "Rank"
 msgid "Rank"
 msgstr "Ранг"
 msgstr "Ранг"
 
 
-#: templates/misago/admin/ranks/list.html:17
-msgid "Title"
-msgstr "Заголовок"
-
 #: templates/misago/admin/ranks/list.html:18
 #: templates/misago/admin/ranks/list.html:18
 msgid "Special"
 msgid "Special"
 msgstr "Специальное"
 msgstr "Специальное"
@@ -1517,7 +1783,7 @@ msgid "No user roles are currently defined."
 msgstr "Сейчас нет определённых ролей пользователя."
 msgstr "Сейчас нет определённых ролей пользователя."
 
 
 #: templates/misago/admin/users/ban.html:6
 #: templates/misago/admin/users/ban.html:6
-#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:72
+#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:73
 msgid "Ban users"
 msgid "Ban users"
 msgstr "Блокировать пользователей"
 msgstr "Блокировать пользователей"
 
 
@@ -1525,14 +1791,11 @@ msgstr "Блокировать пользователей"
 msgid "Ban selected users:"
 msgid "Ban selected users:"
 msgstr "Блокировать выбранных пользователей:"
 msgstr "Блокировать выбранных пользователей:"
 
 
-#: templates/misago/admin/users/ban.html:35
-#: templates/misago/admin/users/edit.html:113
-#: templates/misago/admin/users/list.html:34
-#: templates/misago/userslists/active_posters.html:66
-msgid "Avatar"
-msgstr "Аватар"
+#: templates/misago/admin/users/ban.html:48
+msgid "IP not available"
+msgstr ""
 
 
-#: templates/misago/admin/users/ban.html:72
+#: templates/misago/admin/users/ban.html:76
 msgid "Set bans"
 msgid "Set bans"
 msgstr "Установить блокировки"
 msgstr "Установить блокировки"
 
 
@@ -1629,6 +1892,18 @@ msgstr ""
 msgid "No staff message is available."
 msgid "No staff message is available."
 msgstr "Нет доступного сообщения администраторов."
 msgstr "Нет доступного сообщения администраторов."
 
 
+#: templates/misago/admin/users/edit.html:220
+msgid "Agreement"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:221
+msgid "Accepted on"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:239
+msgid "This user didn't accept any agreements."
+msgstr ""
+
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:11
 #: templates/misago/admin/users/new.html:11
@@ -1636,51 +1911,55 @@ msgstr "Нет доступного сообщения администрато
 msgid "New user"
 msgid "New user"
 msgstr "Новый пользователь"
 msgstr "Новый пользователь"
 
 
-#: templates/misago/admin/users/list.html:17
-msgid "User"
-msgstr "Пользователь"
-
-#: templates/misago/admin/users/list.html:20
+#: templates/misago/admin/users/list.html:20 users/signals.py:30
 msgid "E-mail"
 msgid "E-mail"
 msgstr "E-mail"
 msgstr "E-mail"
 
 
-#: templates/misago/admin/users/list.html:22
+#: templates/misago/admin/users/list.html:21
+msgid "IP Address"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:23
 msgid "Joined"
 msgid "Joined"
 msgstr "Присоединился"
 msgstr "Присоединился"
 
 
-#: templates/misago/admin/users/list.html:39
+#: templates/misago/admin/users/list.html:40
 msgid "Is deleting their account"
 msgid "Is deleting their account"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:43
+#: templates/misago/admin/users/list.html:44
 msgid "Is disabled by administrator"
 msgid "Is disabled by administrator"
 msgstr "Деактивирован администратором"
 msgstr "Деактивирован администратором"
 
 
-#: templates/misago/admin/users/list.html:54
+#: templates/misago/admin/users/list.html:55
 msgid "Requires activation by administrator"
 msgid "Requires activation by administrator"
 msgstr "Требует активации администратором"
 msgstr "Требует активации администратором"
 
 
-#: templates/misago/admin/users/list.html:56
+#: templates/misago/admin/users/list.html:57
 msgid "Has to activate account"
 msgid "Has to activate account"
 msgstr "Должен активировать аккаунт"
 msgstr "Должен активировать аккаунт"
 
 
-#: templates/misago/admin/users/list.html:63
+#: templates/misago/admin/users/list.html:64
 msgid "Super administrator"
 msgid "Super administrator"
 msgstr "Супер администратор"
 msgstr "Супер администратор"
 
 
-#: templates/misago/admin/users/list.html:65
+#: templates/misago/admin/users/list.html:66
 msgid "Administrator"
 msgid "Administrator"
 msgstr "Администратор"
 msgstr "Администратор"
 
 
-#: templates/misago/admin/users/list.html:90
+#: templates/misago/admin/users/list.html:78
+msgid "IP removed"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:98
 msgid "Edit user"
 msgid "Edit user"
 msgstr "Редактировать пользователя"
 msgstr "Редактировать пользователя"
 
 
-#: templates/misago/admin/users/list.html:99
+#: templates/misago/admin/users/list.html:107
 msgid "No users matching search criteria have been found."
 msgid "No users matching search criteria have been found."
 msgstr "Пользователи по заданным критериям поиска не были найдены."
 msgstr "Пользователи по заданным критериям поиска не были найдены."
 
 
-#: templates/misago/admin/users/list.html:105
+#: templates/misago/admin/users/list.html:113
 msgid "Search users"
 msgid "Search users"
 msgstr "Искать пользователей"
 msgstr "Искать пользователей"
 
 
@@ -1898,6 +2177,32 @@ msgstr "Для изменения пароля от аккаунта, кликн
 msgid "Set new password"
 msgid "Set new password"
 msgstr "Установить новый пароль"
 msgstr "Установить новый пароль"
 
 
+#: templates/misago/emails/data_download.html:6
+#: templates/misago/emails/data_download.txt:6
+#, python-format
+msgid ""
+"%(user)s, you are receiving this message because your data is ready for "
+"download."
+msgstr ""
+
+#: templates/misago/emails/data_download.html:14
+#: templates/misago/emails/data_download.txt:15
+#, python-format
+msgid ""
+"This link will remain active for %(expires_in)s hour from the time this "
+"message has been sent."
+msgid_plural ""
+"This link will remain active for %(expires_in)s hours from the time this "
+"message has been sent."
+msgstr[0] ""
+msgstr[1] ""
+msgstr[2] ""
+msgstr[3] ""
+
+#: templates/misago/emails/data_download.txt:10
+msgid "To download your data, click the following link:"
+msgstr ""
+
 #: templates/misago/emails/privatethread/added.html:9
 #: templates/misago/emails/privatethread/added.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
@@ -2000,11 +2305,9 @@ msgstr ""
 #: templates/misago/emails/thread/reply.html:9
 #: templates/misago/emails/thread/reply.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread %(thread)s that you are subscribed to."
 "the thread %(thread)s that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s, вы получили это сообщение, потому что %(poster)s ответил в теме "
-"%(thread)s, на которую вы подписаны."
 
 
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.txt:10
 #: templates/misago/emails/thread/reply.txt:10
@@ -2018,11 +2321,9 @@ msgstr "Перейти к ответу"
 #: templates/misago/emails/thread/reply.txt:6
 #: templates/misago/emails/thread/reply.txt:6
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread \"%(thread)s\" that you are subscribed to."
 "the thread \"%(thread)s\" that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s, вы получили это сообщение, потому что %(poster)s ответил в теме "
-"\"%(thread)s\" , на которую вы подписаны."
 
 
 #: templates/misago/errorpages/403.html:40
 #: templates/misago/errorpages/403.html:40
 msgid "This page is not available."
 msgid "This page is not available."
@@ -2280,7 +2581,7 @@ msgstr "Смотреть результаты"
 
 
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:8
 #: templates/misago/profile/ban_details.html:8
-#: templates/misago/profile/ban_details.html:15 users/apps.py:120
+#: templates/misago/profile/ban_details.html:15 users/apps.py:128
 msgid "Ban details"
 msgid "Ban details"
 msgstr "Детали блокировки"
 msgstr "Детали блокировки"
 
 
@@ -2331,7 +2632,7 @@ msgstr[3] "Начал %(threads)s тем."
 
 
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:8
 #: templates/misago/profile/details.html:8
-#: templates/misago/profile/details.html:18 users/apps.py:107
+#: templates/misago/profile/details.html:18 users/apps.py:115
 msgid "Details"
 msgid "Details"
 msgstr "Детали"
 msgstr "Детали"
 
 
@@ -2360,7 +2661,7 @@ msgstr ""
 "Эта ошибка случилось из-за неправильной манипуляции содержимым сообщения."
 "Эта ошибка случилось из-за неправильной манипуляции содержимым сообщения."
 
 
 #: templates/misago/profile/followers.html:5
 #: templates/misago/profile/followers.html:5
-#: templates/misago/profile/followers.html:8 users/apps.py:95
+#: templates/misago/profile/followers.html:8 users/apps.py:103
 msgid "Followers"
 msgid "Followers"
 msgstr "Последователи"
 msgstr "Последователи"
 
 
@@ -2392,7 +2693,7 @@ msgid "%(username)s has no followers."
 msgstr "У %(username)s нет последователей."
 msgstr "У %(username)s нет последователей."
 
 
 #: templates/misago/profile/follows.html:5
 #: templates/misago/profile/follows.html:5
-#: templates/misago/profile/follows.html:8 users/apps.py:101
+#: templates/misago/profile/follows.html:8 users/apps.py:109
 msgid "Follows"
 msgid "Follows"
 msgstr "Следить"
 msgstr "Следить"
 
 
@@ -2491,7 +2792,7 @@ msgid "%(username)s started no threads."
 msgstr "У %(username)s нет начатых тем."
 msgstr "У %(username)s нет начатых тем."
 
 
 #: templates/misago/profile/username_history.html:5
 #: templates/misago/profile/username_history.html:5
-#: templates/misago/profile/username_history.html:8 users/apps.py:113
+#: templates/misago/profile/username_history.html:8 users/apps.py:121
 msgid "Username history"
 msgid "Username history"
 msgstr "История имени пользователя"
 msgstr "История имени пользователя"
 
 
@@ -2522,6 +2823,20 @@ msgstr "Ваше имя пользователя никогда не измен
 msgid "%(username)s's username was never changed."
 msgid "%(username)s's username was never changed."
 msgstr "Имя пользователя %(username)s никогда не изменялось."
 msgstr "Имя пользователя %(username)s никогда не изменялось."
 
 
+#: templates/misago/required_agreement.html:9
+#, python-format
+msgid "Please review the updated %(agreement)s:"
+msgstr ""
+
+#: templates/misago/required_agreement.html:19
+msgid "here"
+msgstr ""
+
+#: templates/misago/required_agreement.html:21
+#, python-format
+msgid "Please review the updated %(agreement)s available %(link)s."
+msgstr ""
+
 #: templates/misago/search.html:5 templates/misago/search.html:8
 #: templates/misago/search.html:5 templates/misago/search.html:8
 msgid "Search site"
 msgid "Search site"
 msgstr "Поиск по сайту"
 msgstr "Поиск по сайту"
@@ -2640,10 +2955,6 @@ msgstr "Скрыто %(hidden_by)s %(hidden_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgstr "%(event_by)s %(event_on)s."
 msgstr "%(event_by)s %(event_on)s."
 
 
-#: templates/misago/thread/posts/event/info.html:34
-msgid "IP recorded"
-msgstr "IP записан"
-
 #: templates/misago/thread/posts/post/attachments.html:33
 #: templates/misago/thread/posts/post/attachments.html:33
 #, python-format
 #, python-format
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
@@ -2940,11 +3251,11 @@ msgstr "Вложения"
 msgid "Attachment types"
 msgid "Attachment types"
 msgstr "Типы вложений"
 msgstr "Типы вложений"
 
 
-#: threads/api/attachments.py:19
+#: threads/api/attachments.py:20
 msgid "You don't have permission to upload new files."
 msgid "You don't have permission to upload new files."
 msgstr "У вас нет разрешения загружать новые файлы."
 msgstr "У вас нет разрешения загружать новые файлы."
 
 
-#: threads/api/attachments.py:29
+#: threads/api/attachments.py:30
 msgid "No file has been uploaded."
 msgid "No file has been uploaded."
 msgstr "Нет обновлённых файлов."
 msgstr "Нет обновлённых файлов."
 
 
@@ -2952,11 +3263,11 @@ msgstr "Нет обновлённых файлов."
 msgid "Uploaded image was corrupted or invalid."
 msgid "Uploaded image was corrupted or invalid."
 msgstr "Обновлённое изображение испорчено или неправильно."
 msgstr "Обновлённое изображение испорчено или неправильно."
 
 
-#: threads/api/attachments.py:81
+#: threads/api/attachments.py:83
 msgid "You can't upload files of this type."
 msgid "You can't upload files of this type."
 msgstr "Вы не можете загрузить файлы этого типа."
 msgstr "Вы не можете загрузить файлы этого типа."
 
 
-#: threads/api/attachments.py:86
+#: threads/api/attachments.py:88
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
@@ -2964,7 +3275,7 @@ msgstr ""
 "Вы не можете загрузить файлы больше чем %(limit)s (У вашего файл есть "
 "Вы не можете загрузить файлы больше чем %(limit)s (У вашего файл есть "
 "%(upload)s)"
 "%(upload)s)"
 
 
-#: threads/api/attachments.py:96
+#: threads/api/attachments.py:98
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files of this type larger than %(limit)s (your file has "
 "You can't upload files of this type larger than %(limit)s (your file has "
@@ -2973,7 +3284,7 @@ msgstr ""
 "Вы не можете загрузить файлы этого типа, больше чем %(limit)s (Ваш файл "
 "Вы не можете загрузить файлы этого типа, больше чем %(limit)s (Ваш файл "
 "имеет %(upload)s)."
 "имеет %(upload)s)."
 
 
-#: threads/api/postendpoints/edits.py:89
+#: threads/api/postendpoints/edits.py:88
 msgid "Edits record is unavailable for this post."
 msgid "Edits record is unavailable for this post."
 msgstr "Правки записи недоступны для этой публикации."
 msgstr "Правки записи недоступны для этой публикации."
 
 
@@ -2989,12 +3300,12 @@ msgstr "Вы не можете перемещать публикации в эт
 msgid "You can't like posts in this category."
 msgid "You can't like posts in this category."
 msgstr "Вам не может нравится публикации в этой категории."
 msgstr "Вам не может нравится публикации в этой категории."
 
 
-#: threads/api/postendpoints/patch_post.py:108
+#: threads/api/postendpoints/patch_post.py:107
 #: threads/api/threadendpoints/patch.py:130
 #: threads/api/threadendpoints/patch.py:130
 msgid "Content approval can't be reversed."
 msgid "Content approval can't be reversed."
 msgstr "Одобрение содержимого не может быть отменено."
 msgstr "Одобрение содержимого не может быть отменено."
 
 
-#: threads/api/postendpoints/patch_post.py:186
+#: threads/api/postendpoints/patch_post.py:185
 msgid "One or more posts to update could not be found."
 msgid "One or more posts to update could not be found."
 msgstr "Одна или больше публикаций для обновления, не могут быть найдены."
 msgstr "Одна или больше публикаций для обновления, не могут быть найдены."
 
 
@@ -3007,7 +3318,7 @@ msgstr "Вы не можете разделить публикации в это
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgstr "У вас нет разрешения удалять вложение \"%(attachment)s\"."
 msgstr "У вас нет разрешения удалять вложение \"%(attachment)s\"."
 
 
-#: threads/api/postingendpoint/attachments.py:128
+#: threads/api/postingendpoint/attachments.py:127
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't attach more than %(limit_value)s file to single post (added "
 "You can't attach more than %(limit_value)s file to single post (added "
@@ -3102,11 +3413,11 @@ msgstr[3] ""
 msgid "One or more users could not be found: %(usernames)s"
 msgid "One or more users could not be found: %(usernames)s"
 msgstr "Один или более пользователей не найдены: %(usernames)s"
 msgstr "Один или более пользователей не найдены: %(usernames)s"
 
 
-#: threads/api/postingendpoint/reply.py:81 threads/validators.py:80
+#: threads/api/postingendpoint/reply.py:83 threads/validators.py:80
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Вы должны ввести сообщение."
 msgstr "Вы должны ввести сообщение."
 
 
-#: threads/api/postingendpoint/reply.py:103 threads/validators.py:41
+#: threads/api/postingendpoint/reply.py:105 threads/validators.py:41
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Вы должны ввести заголовок темы."
 msgstr "Вы должны ввести заголовок темы."
 
 
@@ -3188,7 +3499,7 @@ msgstr "Этот пользователь уже владелец темы."
 msgid "One or more threads to update could not be found."
 msgid "One or more threads to update could not be found."
 msgstr "Одна или больше тем для обновления не могут быть найдены."
 msgstr "Одна или больше тем для обновления не могут быть найдены."
 
 
-#: threads/api/threadpoll.py:53
+#: threads/api/threadpoll.py:54
 msgid "There's already a poll in this thread."
 msgid "There's already a poll in this thread."
 msgstr "В этой теме уже есть опрос."
 msgstr "В этой теме уже есть опрос."
 
 
@@ -3224,7 +3535,7 @@ msgstr "Имя файла содержит"
 msgid "File type"
 msgid "File type"
 msgstr "Тип файла"
 msgstr "Тип файла"
 
 
-#: threads/forms.py:24 users/forms/admin.py:595
+#: threads/forms.py:24 users/forms/admin.py:609
 msgid "State"
 msgid "State"
 msgstr "Состояние"
 msgstr "Состояние"
 
 
@@ -3248,10 +3559,6 @@ msgstr "Расширения файла"
 msgid "Maximum allowed uploaded file size"
 msgid "Maximum allowed uploaded file size"
 msgstr "Максимально позволенная загрузка размера файла"
 msgstr "Максимально позволенная загрузка размера файла"
 
 
-#: threads/forms.py:56
-msgid "Status"
-msgstr "Статус"
-
 #: threads/forms.py:57
 #: threads/forms.py:57
 msgid "Limit uploads to"
 msgid "Limit uploads to"
 msgstr "Ограничение загрузок в"
 msgstr "Ограничение загрузок в"
@@ -3907,7 +4214,7 @@ msgstr ""
 msgid "Can see threads"
 msgid "Can see threads"
 msgstr "Можно смотреть темы"
 msgstr "Можно смотреть темы"
 
 
-#: threads/permissions/threads.py:110 users/forms/admin.py:166
+#: threads/permissions/threads.py:110 users/forms/admin.py:168
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0006_update_settings.py:130
 #: users/migrations/0006_update_settings.py:130
 msgid "Started threads"
 msgid "Started threads"
@@ -4884,6 +5191,14 @@ msgstr "Один или больше выборов опроса неправи
 msgid "You have to make a choice."
 msgid "You have to make a choice."
 msgstr "Вы должны сделать выбор."
 msgstr "Вы должны сделать выбор."
 
 
+#: threads/signals.py:177
+msgid "Question"
+msgstr ""
+
+#: threads/signals.py:178
+msgid "Choices"
+msgstr ""
+
 #: threads/templatetags/misago_poststags.py:20
 #: threads/templatetags/misago_poststags.py:20
 #, python-format
 #, python-format
 msgid "%(user)s likes this."
 msgid "%(user)s likes this."
@@ -5065,23 +5380,13 @@ msgstr "У вас нет разрешения видеть не одобренн
 msgid "Requested attachment could not be found."
 msgid "Requested attachment could not be found."
 msgstr "Запрошенное вложение не может быть найдено."
 msgstr "Запрошенное вложение не может быть найдено."
 
 
-#: threads/views/admin/attachments.py:24 users/views/admin/bans.py:24
-#: users/views/admin/users.py:55
-msgid "From newest"
-msgstr "От новейшего"
-
-#: threads/views/admin/attachments.py:25 users/views/admin/bans.py:25
-#: users/views/admin/users.py:56
-msgid "From oldest"
-msgstr "От старого"
-
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
-#: users/views/admin/users.py:57
+#: users/views/admin/users.py:58
 msgid "A to z"
 msgid "A to z"
 msgstr "От А до я"
 msgstr "От А до я"
 
 
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
-#: users/views/admin/users.py:58
+#: users/views/admin/users.py:59
 msgid "Z to a"
 msgid "Z to a"
 msgstr "От Я до а"
 msgstr "От Я до а"
 
 
@@ -5154,33 +5459,37 @@ msgstr ""
 "Вам нужно разрешение одобрять содержимое, чтобы быть способным перейти к "
 "Вам нужно разрешение одобрять содержимое, чтобы быть способным перейти к "
 "первой не одобренной публикации."
 "первой не одобренной публикации."
 
 
-#: users/admin.py:79
+#: users/admin.py:89
 msgid "User Accounts"
 msgid "User Accounts"
 msgstr "Аккаунты пользователя"
 msgstr "Аккаунты пользователя"
 
 
-#: users/admin.py:87
+#: users/admin.py:97
 msgid "Ranks"
 msgid "Ranks"
 msgstr "Ранги"
 msgstr "Ранги"
 
 
-#: users/admin.py:96
+#: users/admin.py:106
 msgid "Bans"
 msgid "Bans"
 msgstr "Запреты"
 msgstr "Запреты"
 
 
+#: users/admin.py:115
+msgid "Data downloads"
+msgstr ""
+
 #: users/api/auth.py:100
 #: users/api/auth.py:100
 #, python-format
 #, python-format
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgstr "Активировать аккаунт %(user)s на %(forum_name)s форумах."
 msgstr "Активировать аккаунт %(user)s на %(forum_name)s форумах."
 
 
-#: users/api/auth.py:139
+#: users/api/auth.py:138
 #, python-format
 #, python-format
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgstr "Изменить пароль %(user)s на %(forum_name)s форумах"
 msgstr "Изменить пароль %(user)s на %(forum_name)s форумах"
 
 
-#: users/api/auth.py:180
+#: users/api/auth.py:178
 msgid "Form link is invalid. Please try again."
 msgid "Form link is invalid. Please try again."
 msgstr "Ссылка формы неправильна. Пожалуйста, попробуйте заново."
 msgstr "Ссылка формы неправильна. Пожалуйста, попробуйте заново."
 
 
-#: users/api/auth.py:181
+#: users/api/auth.py:179
 msgid "Your link has expired. Please request new one."
 msgid "Your link has expired. Please request new one."
 msgstr "Ваша ссылка истекла. Пожалуйста, запросите новую."
 msgstr "Ваша ссылка истекла. Пожалуйста, запросите новую."
 
 
@@ -5250,15 +5559,15 @@ msgstr "Ссылка подтверждения изменения e-mail-а б
 msgid "Confirm password change on %(forum_name)s forums"
 msgid "Confirm password change on %(forum_name)s forums"
 msgstr "Подтвердите изменение пароля на %(forum_name)s форумах."
 msgstr "Подтвердите изменение пароля на %(forum_name)s форумах."
 
 
-#: users/api/userendpoints/changepassword.py:31
+#: users/api/userendpoints/changepassword.py:32
 msgid "Password change confirmation link was sent to your address."
 msgid "Password change confirmation link was sent to your address."
 msgstr "Ссылка подтверждения изменения пароля было выслано на новый адрес."
 msgstr "Ссылка подтверждения изменения пароля было выслано на новый адрес."
 
 
-#: users/api/userendpoints/create.py:22
+#: users/api/userendpoints/create.py:25
 msgid "New users registrations are currently closed."
 msgid "New users registrations are currently closed."
 msgstr "Новые регистрации пользователи сейчас закрыты."
 msgstr "Новые регистрации пользователи сейчас закрыты."
 
 
-#: users/api/userendpoints/create.py:53 users/social/pipeline.py:205
+#: users/api/userendpoints/create.py:61 users/social/pipeline.py:215
 msgid "Please try resubmitting the form."
 msgid "Please try resubmitting the form."
 msgstr "Пожалуйста, попробуйте повторно отправить эту форму."
 msgstr "Пожалуйста, попробуйте повторно отправить эту форму."
 
 
@@ -5283,38 +5592,54 @@ msgstr "Ошибка изменения имени пользователя. П
 msgid "You don't have permission to see other users name history."
 msgid "You don't have permission to see other users name history."
 msgstr "У вас нет разрешения просматривать историю имён других пользователей."
 msgstr "У вас нет разрешения просматривать историю имён других пользователей."
 
 
-#: users/api/users.py:54
+#: users/api/users.py:57
 msgid "You have to sign in to perform this action."
 msgid "You have to sign in to perform this action."
 msgstr "Вы должны войти, чтобы выполнить это действие."
 msgstr "Вы должны войти, чтобы выполнить это действие."
 
 
-#: users/api/users.py:100
+#: users/api/users.py:103
 msgid "You can't change other users avatars."
 msgid "You can't change other users avatars."
 msgstr "Вы не можете изменять аватары других пользователей."
 msgstr "Вы не можете изменять аватары других пользователей."
 
 
-#: users/api/users.py:107
+#: users/api/users.py:110
 msgid "You can't change other users options."
 msgid "You can't change other users options."
 msgstr "Вы не можете изменять настройки других пользователей."
 msgstr "Вы не можете изменять настройки других пользователей."
 
 
-#: users/api/users.py:112
+#: users/api/users.py:115
 msgid "Your forum options have been changed."
 msgid "Your forum options have been changed."
 msgstr "Ваши настройки форума были изменены."
 msgstr "Ваши настройки форума были изменены."
 
 
-#: users/api/users.py:119
+#: users/api/users.py:122
 msgid "You can't change other users names."
 msgid "You can't change other users names."
 msgstr "Вы не можете менять имена других пользователей."
 msgstr "Вы не можете менять имена других пользователей."
 
 
-#: users/api/users.py:126
+#: users/api/users.py:129
 msgid "You can't change other users signatures."
 msgid "You can't change other users signatures."
 msgstr "Вы не можете менять подписи других пользователей."
 msgstr "Вы не можете менять подписи других пользователей."
 
 
-#: users/api/users.py:133
+#: users/api/users.py:136
 msgid "You can't change other users passwords."
 msgid "You can't change other users passwords."
 msgstr "Вы не можете менять пароли других пользователей."
 msgstr "Вы не можете менять пароли других пользователей."
 
 
-#: users/api/users.py:140
+#: users/api/users.py:143
 msgid "You can't change other users e-mail addresses."
 msgid "You can't change other users e-mail addresses."
 msgstr "Вы не можете менять e-mail адреса других пользователей."
 msgstr "Вы не можете менять e-mail адреса других пользователей."
 
 
+#: users/api/users.py:225
+msgid "You can't request data downloads for other users."
+msgstr ""
+
+#: users/api/users.py:228
+msgid "You can't download your data."
+msgstr ""
+
+#: users/api/users.py:232
+msgid "You can't have more than one data download request at single time."
+msgstr ""
+
+#: users/api/users.py:278
+msgid "You can't see other users data downloads."
+msgstr ""
+
 #: users/apps.py:30
 #: users/apps.py:30
 msgid "Edit details"
 msgid "Edit details"
 msgstr "Редактировать детали"
 msgstr "Редактировать детали"
@@ -5327,11 +5652,11 @@ msgstr "Изменить имя пользователя"
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "Изменить email или пароль"
 msgstr "Изменить email или пароль"
 
 
-#: users/apps.py:50
+#: users/apps.py:58
 msgid "Delete account"
 msgid "Delete account"
 msgstr ""
 msgstr ""
 
 
-#: users/apps.py:59
+#: users/apps.py:67
 msgid "Active poster"
 msgid "Active poster"
 msgstr ""
 msgstr ""
 
 
@@ -5390,27 +5715,27 @@ msgstr "Редактировать разрешения и группы"
 msgid "Edit the user from Misago admin panel"
 msgid "Edit the user from Misago admin panel"
 msgstr "Редактировать пользователя из панели администрирования Misago"
 msgstr "Редактировать пользователя из панели администрирования Misago"
 
 
-#: users/forms/admin.py:21 users/models/ban.py:74
+#: users/forms/admin.py:23 users/models/ban.py:74 users/signals.py:29
 msgid "Username"
 msgid "Username"
 msgstr "Имя пользователя"
 msgstr "Имя пользователя"
 
 
-#: users/forms/admin.py:22
+#: users/forms/admin.py:24
 msgid "Custom title"
 msgid "Custom title"
 msgstr "Пользовательский заголовок"
 msgstr "Пользовательский заголовок"
 
 
-#: users/forms/admin.py:23 users/models/ban.py:75
+#: users/forms/admin.py:25 users/models/ban.py:75
 msgid "E-mail address"
 msgid "E-mail address"
 msgstr "E-mail адрес"
 msgstr "E-mail адрес"
 
 
-#: users/forms/admin.py:52
+#: users/forms/admin.py:54
 msgid "All registered members must have \"Member\" role."
 msgid "All registered members must have \"Member\" role."
 msgstr "Все зарегистрированные участники должны иметь роль — \"Участник\"."
 msgstr "Все зарегистрированные участники должны иметь роль — \"Участник\"."
 
 
-#: users/forms/admin.py:71
+#: users/forms/admin.py:73
 msgid "Is administrator"
 msgid "Is administrator"
 msgstr "Является администратором"
 msgstr "Является администратором"
 
 
-#: users/forms/admin.py:73
+#: users/forms/admin.py:75
 msgid ""
 msgid ""
 "Designates whether the user can log into admin sites. If Django admin site "
 "Designates whether the user can log into admin sites. If Django admin site "
 "is enabled, this user will need additional permissions assigned within it to"
 "is enabled, this user will need additional permissions assigned within it to"
@@ -5421,11 +5746,11 @@ msgstr ""
 "дополнительные разрешения назначенные внутри, чтобы администрировать модули "
 "дополнительные разрешения назначенные внутри, чтобы администрировать модули "
 "Django."
 "Django."
 
 
-#: users/forms/admin.py:79
+#: users/forms/admin.py:81
 msgid "Is superuser"
 msgid "Is superuser"
 msgstr "Является суперпользователем"
 msgstr "Является суперпользователем"
 
 
-#: users/forms/admin.py:81
+#: users/forms/admin.py:83
 msgid ""
 msgid ""
 "Only administrators can access admin sites. In addition to admin site "
 "Only administrators can access admin sites. In addition to admin site "
 "access, superadmins can also change other members admin levels."
 "access, superadmins can also change other members admin levels."
@@ -5434,11 +5759,11 @@ msgstr ""
 "дополнение доступу к административному сайту, супер администратор также "
 "дополнение доступу к административному сайту, супер администратор также "
 "может менять административные уровни других участников."
 "может менять административные уровни других участников."
 
 
-#: users/forms/admin.py:86
+#: users/forms/admin.py:88
 msgid "Is active"
 msgid "Is active"
 msgstr "Является активным"
 msgstr "Является активным"
 
 
-#: users/forms/admin.py:88
+#: users/forms/admin.py:90
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Turning this off "
 "Designates whether this user should be treated as active. Turning this off "
 "is non-destructible way to remove user accounts."
 "is non-destructible way to remove user accounts."
@@ -5446,11 +5771,11 @@ msgstr ""
 "Определяет, должен ли пользователь считаться активным. Выключить это — "
 "Определяет, должен ли пользователь считаться активным. Выключить это — "
 "означает удалить аккаунты пользователя неразрушимым способом."
 "означает удалить аккаунты пользователя неразрушимым способом."
 
 
-#: users/forms/admin.py:92 users/forms/admin.py:123 users/forms/admin.py:151
+#: users/forms/admin.py:94 users/forms/admin.py:125 users/forms/admin.py:153
 msgid "Staff message"
 msgid "Staff message"
 msgstr "Сообщение персонала"
 msgstr "Сообщение персонала"
 
 
-#: users/forms/admin.py:94
+#: users/forms/admin.py:96
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user's account has "
 "Optional message for forum team members explaining why user's account has "
 "been disabled."
 "been disabled."
@@ -5458,15 +5783,15 @@ msgstr ""
 "Дополнительное сообщение для участников команды форума, объясняющее почему "
 "Дополнительное сообщение для участников команды форума, объясняющее почему "
 "аккаунт пользователя был отключён."
 "аккаунт пользователя был отключён."
 
 
-#: users/forms/admin.py:99
+#: users/forms/admin.py:101
 msgid "Change password to"
 msgid "Change password to"
 msgstr "Изменить пароль на"
 msgstr "Изменить пароль на"
 
 
-#: users/forms/admin.py:106
+#: users/forms/admin.py:108
 msgid "Lock avatar"
 msgid "Lock avatar"
 msgstr "Блокировка аватара"
 msgstr "Блокировка аватара"
 
 
-#: users/forms/admin.py:108
+#: users/forms/admin.py:110
 msgid ""
 msgid ""
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "reset his/her avatar to procedurally generated one."
 "reset his/her avatar to procedurally generated one."
@@ -5474,12 +5799,12 @@ msgstr ""
 "Настройте это как \"да\", чтобы остановить пользователя изменять его/её "
 "Настройте это как \"да\", чтобы остановить пользователя изменять его/её "
 "аватар, и сбросить его/её аватар для процедурной генерации."
 "аватар, и сбросить его/её аватар для процедурной генерации."
 
 
-#: users/forms/admin.py:114 users/forms/admin.py:145 users/forms/admin.py:473
-#: users/forms/admin.py:526
+#: users/forms/admin.py:116 users/forms/admin.py:147 users/forms/admin.py:468
+#: users/forms/admin.py:540
 msgid "User message"
 msgid "User message"
 msgstr "Сообщение пользователя"
 msgstr "Сообщение пользователя"
 
 
-#: users/forms/admin.py:116
+#: users/forms/admin.py:118
 msgid ""
 msgid ""
 "Optional message for user explaining why he/she is banned form changing "
 "Optional message for user explaining why he/she is banned form changing "
 "avatar."
 "avatar."
@@ -5487,7 +5812,7 @@ msgstr ""
 "Дополнительное сообщение для пользователя, объясняющее почему ему запрещено "
 "Дополнительное сообщение для пользователя, объясняющее почему ему запрещено "
 "менять аватар."
 "менять аватар."
 
 
-#: users/forms/admin.py:125
+#: users/forms/admin.py:127
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user is banned form "
 "Optional message for forum team members explaining why user is banned form "
 "changing avatar."
 "changing avatar."
@@ -5495,47 +5820,47 @@ msgstr ""
 "Дополнительное сообщение для членов команды форума, объясняющее почему "
 "Дополнительное сообщение для членов команды форума, объясняющее почему "
 "пользователь был заблокирован за форму изменения аватара."
 "пользователь был заблокирован за форму изменения аватара."
 
 
-#: users/forms/admin.py:133
+#: users/forms/admin.py:135
 msgid "Signature contents"
 msgid "Signature contents"
 msgstr "Подпись содержимого"
 msgstr "Подпись содержимого"
 
 
-#: users/forms/admin.py:138
+#: users/forms/admin.py:140
 msgid "Lock signature"
 msgid "Lock signature"
 msgstr "Блокировка подписи"
 msgstr "Блокировка подписи"
 
 
-#: users/forms/admin.py:140
+#: users/forms/admin.py:142
 msgid ""
 msgid ""
 "Setting this to yes will stop user from making changes to his/her signature."
 "Setting this to yes will stop user from making changes to his/her signature."
 msgstr ""
 msgstr ""
 "Настройте это как \"да\", чтобы остановить пользователя изменять его /её "
 "Настройте это как \"да\", чтобы остановить пользователя изменять его /её "
 "подпись."
 "подпись."
 
 
-#: users/forms/admin.py:146
+#: users/forms/admin.py:148
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgstr ""
 msgstr ""
 "Дополнительное сообщение для пользователя, объясняющее почему его/ее подпись"
 "Дополнительное сообщение для пользователя, объясняющее почему его/ее подпись"
 " заблокирована."
 " заблокирована."
 
 
-#: users/forms/admin.py:152
+#: users/forms/admin.py:154
 msgid ""
 msgid ""
 "Optional message to team members explaining why user signature is locked."
 "Optional message to team members explaining why user signature is locked."
 msgstr ""
 msgstr ""
 "Дополнительное сообщение для участников команды, объясняющее почему подпись "
 "Дополнительное сообщение для участников команды, объясняющее почему подпись "
 "пользователя заблокирована."
 "пользователя заблокирована."
 
 
-#: users/forms/admin.py:157
+#: users/forms/admin.py:159
 msgid "Hides presence"
 msgid "Hides presence"
 msgstr "Скрывает присутствие"
 msgstr "Скрывает присутствие"
 
 
-#: users/forms/admin.py:160
+#: users/forms/admin.py:162
 msgid "Who can add user to private threads"
 msgid "Who can add user to private threads"
 msgstr "Кто может добавлять пользователей в приватные темы."
 msgstr "Кто может добавлять пользователей в приватные темы."
 
 
-#: users/forms/admin.py:169
+#: users/forms/admin.py:171
 msgid "Replid threads"
 msgid "Replid threads"
 msgstr "Отвеченные темы"
 msgstr "Отвеченные темы"
 
 
-#: users/forms/admin.py:219 users/serializers/moderation.py:42
+#: users/forms/admin.py:221 users/serializers/moderation.py:42
 #, python-format
 #, python-format
 msgid "Signature can't be longer than %(limit)s character."
 msgid "Signature can't be longer than %(limit)s character."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgid_plural "Signature can't be longer than %(limit)s characters."
@@ -5544,7 +5869,7 @@ msgstr[1] "Подпись не может быть длиннее %(limit)s си
 msgstr[2] "Подпись не может быть длиннее %(limit)s символов."
 msgstr[2] "Подпись не может быть длиннее %(limit)s символов."
 msgstr[3] "Подпись не может быть длиннее %(limit)s символов."
 msgstr[3] "Подпись не может быть длиннее %(limit)s символов."
 
 
-#: users/forms/admin.py:238
+#: users/forms/admin.py:240
 msgid ""
 msgid ""
 "Ranks are used to group and distinguish users. They are also used to add "
 "Ranks are used to group and distinguish users. They are also used to add "
 "permissions to groups of users."
 "permissions to groups of users."
@@ -5552,61 +5877,61 @@ msgstr ""
 "Ранги используются для группировки и разпознавания пользователей. Они также "
 "Ранги используются для группировки и разпознавания пользователей. Они также "
 "используются для добавления разрешений для групп пользователей."
 "используются для добавления разрешений для групп пользователей."
 
 
-#: users/forms/admin.py:248
+#: users/forms/admin.py:250
 msgid "Roles"
 msgid "Roles"
 msgstr "Роли"
 msgstr "Роли"
 
 
-#: users/forms/admin.py:249
+#: users/forms/admin.py:251
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgstr ""
 msgstr ""
 "Индивидуальная роль для этого пользователя. Все пользователи должны иметь "
 "Индивидуальная роль для этого пользователя. Все пользователи должны иметь "
 "роли \"участников\"."
 "роли \"участников\"."
 
 
-#: users/forms/admin.py:307
+#: users/forms/admin.py:309
 msgid "Username starts with"
 msgid "Username starts with"
 msgstr "Имя пользователя начинается с"
 msgstr "Имя пользователя начинается с"
 
 
-#: users/forms/admin.py:308
+#: users/forms/admin.py:310
 msgid "E-mail starts with"
 msgid "E-mail starts with"
 msgstr "E-mail начинается с"
 msgstr "E-mail начинается с"
 
 
-#: users/forms/admin.py:309
+#: users/forms/admin.py:311
 msgid "Profile fields contain"
 msgid "Profile fields contain"
 msgstr "Поля профиля содержат"
 msgstr "Поля профиля содержат"
 
 
-#: users/forms/admin.py:310
+#: users/forms/admin.py:312
 msgid "Inactive only"
 msgid "Inactive only"
 msgstr "Только неактивные"
 msgstr "Только неактивные"
 
 
-#: users/forms/admin.py:311
+#: users/forms/admin.py:313
 msgid "Disabled only"
 msgid "Disabled only"
 msgstr "Только деактивированные"
 msgstr "Только деактивированные"
 
 
-#: users/forms/admin.py:312
+#: users/forms/admin.py:314
 msgid "Admins only"
 msgid "Admins only"
 msgstr "Только администраторы"
 msgstr "Только администраторы"
 
 
-#: users/forms/admin.py:313
+#: users/forms/admin.py:315
 msgid "Deleting their accounts"
 msgid "Deleting their accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:355
+#: users/forms/admin.py:357
 msgid "All ranks"
 msgid "All ranks"
 msgstr "Все ранги"
 msgstr "Все ранги"
 
 
-#: users/forms/admin.py:362
+#: users/forms/admin.py:364
 msgid "All roles"
 msgid "All roles"
 msgstr "Все роли"
 msgstr "Все роли"
 
 
-#: users/forms/admin.py:369
+#: users/forms/admin.py:371
 msgid "Has rank"
 msgid "Has rank"
 msgstr "Имеет ранг"
 msgstr "Имеет ранг"
 
 
-#: users/forms/admin.py:375
+#: users/forms/admin.py:377
 msgid "Has role"
 msgid "Has role"
 msgstr "Имеет роль"
 msgstr "Имеет роль"
 
 
-#: users/forms/admin.py:391
+#: users/forms/admin.py:393
 msgid ""
 msgid ""
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "\"Game Masters\" are good examples."
 "\"Game Masters\" are good examples."
@@ -5614,11 +5939,11 @@ msgstr ""
 "Короткое и наглядное имя пользователей с этим рангом. \"Команда\" или "
 "Короткое и наглядное имя пользователей с этим рангом. \"Команда\" или "
 "\"Мастера\" являются хорошим примером."
 "\"Мастера\" являются хорошим примером."
 
 
-#: users/forms/admin.py:396
+#: users/forms/admin.py:398
 msgid "User title"
 msgid "User title"
 msgstr "Пользовательский заголовок"
 msgstr "Пользовательский заголовок"
 
 
-#: users/forms/admin.py:399
+#: users/forms/admin.py:401
 msgid ""
 msgid ""
 "Optional, singular version of rank name displayed by user names. For example"
 "Optional, singular version of rank name displayed by user names. For example"
 " \"GM\" or \"Dev\"."
 " \"GM\" or \"Dev\"."
@@ -5626,7 +5951,7 @@ msgstr ""
 "Дополнительная, единичная версия имени ранга, которая показывается именами "
 "Дополнительная, единичная версия имени ранга, которая показывается именами "
 "пользователей. Например, \"GM\" или \"Dev\"."
 "пользователей. Например, \"GM\" или \"Dev\"."
 
 
-#: users/forms/admin.py:409
+#: users/forms/admin.py:411
 msgid ""
 msgid ""
 "Optional description explaining function or status of members distincted "
 "Optional description explaining function or status of members distincted "
 "with this rank."
 "with this rank."
@@ -5634,21 +5959,21 @@ msgstr ""
 "Необязательное описание, объясняющее функцию или статус членов, связанных с "
 "Необязательное описание, объясняющее функцию или статус членов, связанных с "
 "этим рангом."
 "этим рангом."
 
 
-#: users/forms/admin.py:418
+#: users/forms/admin.py:420
 msgid "Rank can give additional roles to users with it."
 msgid "Rank can give additional roles to users with it."
 msgstr "Ранг может давать дополнительные роли пользователям."
 msgstr "Ранг может давать дополнительные роли пользователям."
 
 
-#: users/forms/admin.py:423
+#: users/forms/admin.py:425
 msgid "Optional css class added to content belonging to this rank owner."
 msgid "Optional css class added to content belonging to this rank owner."
 msgstr ""
 msgstr ""
 "Дополнительный класс CSS, добавленный к контенту, принадлежащий владельцу "
 "Дополнительный класс CSS, добавленный к контенту, принадлежащий владельцу "
 "этого ранга."
 "этого ранга."
 
 
-#: users/forms/admin.py:426
+#: users/forms/admin.py:428
 msgid "Give rank dedicated tab on users list"
 msgid "Give rank dedicated tab on users list"
 msgstr "Дайте вкладку  рангу в списке пользователей"
 msgstr "Дайте вкладку  рангу в списке пользователей"
 
 
-#: users/forms/admin.py:429
+#: users/forms/admin.py:431
 msgid ""
 msgid ""
 "Selecting this option will make users with this rank easily discoverable by "
 "Selecting this option will make users with this rank easily discoverable by "
 "others through dedicated page on forum users list."
 "others through dedicated page on forum users list."
@@ -5656,70 +5981,70 @@ msgstr ""
 "Выбор данной опции сделает пользователей данного ранга легко распознаваемыми"
 "Выбор данной опции сделает пользователей данного ранга легко распознаваемыми"
 " для других через соответствующий список пользователей на странице форума."
 " для других через соответствующий список пользователей на странице форума."
 
 
-#: users/forms/admin.py:454
+#: users/forms/admin.py:456
 msgid "This name collides with other rank."
 msgid "This name collides with other rank."
 msgstr "Это имя совпадает с именем другого ранга."
 msgstr "Это имя совпадает с именем другого ранга."
 
 
-#: users/forms/admin.py:461
+#: users/forms/admin.py:463
 msgid "Values to ban"
 msgid "Values to ban"
 msgstr "Значения для блокировки"
 msgstr "Значения для блокировки"
 
 
-#: users/forms/admin.py:464 users/forms/admin.py:579
-msgid "Usernames"
-msgstr "Имена пользователя"
-
-#: users/forms/admin.py:465 users/forms/admin.py:580
-msgid "E-mails"
-msgstr "E-mail'ы"
-
-#: users/forms/admin.py:466
-msgid "E-mail domains"
-msgstr "E-mail домены"
-
-#: users/forms/admin.py:467
-msgid "IP addresses"
-msgstr "IP адреса"
-
-#: users/forms/admin.py:468
-msgid "First segment of IP addresses"
-msgstr "Первый сегмент IP адресов"
-
-#: users/forms/admin.py:469
-msgid "First two segments of IP addresses"
-msgstr "Первые два сегмента IP адресов"
-
-#: users/forms/admin.py:476
+#: users/forms/admin.py:471
 msgid "Optional message displayed to users instead of default one."
 msgid "Optional message displayed to users instead of default one."
 msgstr ""
 msgstr ""
 "Не обязательное сообщение, отображаемое пользователям вместо стандартного."
 "Не обязательное сообщение, отображаемое пользователям вместо стандартного."
 
 
-#: users/forms/admin.py:479 users/forms/admin.py:489 users/forms/admin.py:532
-#: users/forms/admin.py:542
+#: users/forms/admin.py:474 users/forms/admin.py:484 users/forms/admin.py:546
+#: users/forms/admin.py:556
 msgid "Message can't be longer than 1000 characters."
 msgid "Message can't be longer than 1000 characters."
 msgstr "Сообщение не может быть длиннее 1000 символов."
 msgstr "Сообщение не может быть длиннее 1000 символов."
 
 
-#: users/forms/admin.py:483 users/forms/admin.py:536
+#: users/forms/admin.py:478 users/forms/admin.py:550
 msgid "Team message"
 msgid "Team message"
 msgstr "Сообщение команды"
 msgstr "Сообщение команды"
 
 
-#: users/forms/admin.py:486 users/forms/admin.py:539
+#: users/forms/admin.py:481 users/forms/admin.py:553
 msgid "Optional ban message for moderators and administrators."
 msgid "Optional ban message for moderators and administrators."
 msgstr ""
 msgstr ""
 "Не обязательное сообщение при блокировке для модераторов и администраторов."
 "Не обязательное сообщение при блокировке для модераторов и администраторов."
 
 
-#: users/forms/admin.py:495
+#: users/forms/admin.py:490
 msgid "Leave this field empty for set bans to never expire."
 msgid "Leave this field empty for set bans to never expire."
 msgstr "Оставьте это поле пустым, чтобы блокировки никогда не заканчивались."
 msgstr "Оставьте это поле пустым, чтобы блокировки никогда не заканчивались."
 
 
+#: users/forms/admin.py:499 users/forms/admin.py:593
+msgid "Usernames"
+msgstr "Имена пользователя"
+
+#: users/forms/admin.py:500 users/forms/admin.py:594
+msgid "E-mails"
+msgstr "E-mail'ы"
+
 #: users/forms/admin.py:501
 #: users/forms/admin.py:501
+msgid "E-mail domains"
+msgstr "E-mail домены"
+
+#: users/forms/admin.py:507
+msgid "IP addresses"
+msgstr "IP адреса"
+
+#: users/forms/admin.py:508
+msgid "First segment of IP addresses"
+msgstr "Первый сегмент IP адресов"
+
+#: users/forms/admin.py:509
+msgid "First two segments of IP addresses"
+msgstr "Первые два сегмента IP адресов"
+
+#: users/forms/admin.py:515
 msgid "Check type"
 msgid "Check type"
 msgstr "Проверить тип"
 msgstr "Проверить тип"
 
 
-#: users/forms/admin.py:506
+#: users/forms/admin.py:520
 msgid "Restrict this ban to registrations"
 msgid "Restrict this ban to registrations"
 msgstr "Ограничить действие этой блокировки только на регистрацию."
 msgstr "Ограничить действие этой блокировки только на регистрацию."
 
 
-#: users/forms/admin.py:508
+#: users/forms/admin.py:522
 msgid ""
 msgid ""
 "Changing this to yes will make this ban check be only performed on "
 "Changing this to yes will make this ban check be only performed on "
 "registration step. This is good if you want to block certain registrations "
 "registration step. This is good if you want to block certain registrations "
@@ -5731,11 +6056,11 @@ msgstr ""
 "определенные регистрации, отклоненные недавно Email провайдерами, без ущерба"
 "определенные регистрации, отклоненные недавно Email провайдерами, без ущерба"
 " существующих пользователей."
 " существующих пользователей."
 
 
-#: users/forms/admin.py:514
+#: users/forms/admin.py:528
 msgid "Banned value"
 msgid "Banned value"
 msgstr "Заблокированное значение"
 msgstr "Заблокированное значение"
 
 
-#: users/forms/admin.py:517
+#: users/forms/admin.py:531
 msgid ""
 msgid ""
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
@@ -5745,51 +6070,74 @@ msgstr ""
 "совпадения. К примеру, установив блокировку по IP со значением \"83.*\", "
 "совпадения. К примеру, установив блокировку по IP со значением \"83.*\", "
 "будут заблокированы все IP адреса, начинающиеся с \"83.\"."
 "будут заблокированы все IP адреса, начинающиеся с \"83.\"."
 
 
-#: users/forms/admin.py:522
+#: users/forms/admin.py:536
 msgid "Banned value can't be longer than 250 characters."
 msgid "Banned value can't be longer than 250 characters."
 msgstr "Заблокированное значение может быть не длиннее 250 символов."
 msgstr "Заблокированное значение может быть не длиннее 250 символов."
 
 
-#: users/forms/admin.py:529
+#: users/forms/admin.py:543
 msgid "Optional message displayed to user instead of default one."
 msgid "Optional message displayed to user instead of default one."
 msgstr ""
 msgstr ""
 "Не обязательное сообщение, отображаемое пользователю вместо стандартного."
 "Не обязательное сообщение, отображаемое пользователю вместо стандартного."
 
 
-#: users/forms/admin.py:548
+#: users/forms/admin.py:562
 msgid "Leave this field empty for this ban to never expire."
 msgid "Leave this field empty for this ban to never expire."
 msgstr "Оставьте это поле пустым, чтобы блокировка никогда не заканчивалась."
 msgstr "Оставьте это поле пустым, чтобы блокировка никогда не заканчивалась."
 
 
-#: users/forms/admin.py:568
+#: users/forms/admin.py:582
 msgid "Banned value is too vague."
 msgid "Banned value is too vague."
 msgstr "Заблокированное значение слишком расплывчато."
 msgstr "Заблокированное значение слишком расплывчато."
 
 
-#: users/forms/admin.py:578
+#: users/forms/admin.py:592
 msgid "All bans"
 msgid "All bans"
 msgstr "Все блокировки"
 msgstr "Все блокировки"
 
 
-#: users/forms/admin.py:581
+#: users/forms/admin.py:595
 msgid "IPs"
 msgid "IPs"
 msgstr "IP"
 msgstr "IP"
 
 
-#: users/forms/admin.py:584
+#: users/forms/admin.py:598
 msgid "Banned value begins with"
 msgid "Banned value begins with"
 msgstr "Заблокированное значение начинается с"
 msgstr "Заблокированное значение начинается с"
 
 
-#: users/forms/admin.py:586
+#: users/forms/admin.py:600
 msgid "Registration only"
 msgid "Registration only"
 msgstr "Только регистрация"
 msgstr "Только регистрация"
 
 
-#: users/forms/admin.py:589 users/forms/admin.py:598
+#: users/forms/admin.py:603 users/forms/admin.py:612
 msgid "Any"
 msgid "Any"
 msgstr "Все"
 msgstr "Все"
 
 
-#: users/forms/admin.py:599
+#: users/forms/admin.py:613
 msgid "Active"
 msgid "Active"
 msgstr "Активные"
 msgstr "Активные"
 
 
-#: users/forms/admin.py:600
+#: users/forms/admin.py:614 users/models/datadownload.py:26
 msgid "Expired"
 msgid "Expired"
 msgstr "Истекшие"
 msgstr "Истекшие"
 
 
+#: users/forms/admin.py:649
+msgid "Usernames or emails"
+msgstr ""
+
+#: users/forms/admin.py:651
+msgid ""
+"Enter every item in new line. Duplicates will be ignored. This field is case"
+" insensitive. Depending on site configuration and amount of data to archive "
+"it may take up to few days for requests to complete. E-mail will "
+"notification will be sent to every user once their download is ready."
+msgstr ""
+
+#: users/forms/admin.py:667
+#, python-format
+msgid ""
+"You may not enter more than 20 items at single time (You have entered "
+"%(show_value)s)."
+msgstr ""
+
+#: users/forms/admin.py:684
+msgid "One or more specified users could not be found."
+msgstr ""
+
 #: users/forms/auth.py:16
 #: users/forms/auth.py:16
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Заполнить оба поля."
 msgstr "Заполнить оба поля."
@@ -5850,18 +6198,27 @@ msgstr ""
 "Администратор должен активировать Ваш аккаунт до того как вы сможете "
 "Администратор должен активировать Ваш аккаунт до того как вы сможете "
 "запросить новый пароль."
 "запросить новый пароль."
 
 
-#: users/forms/register.py:27
+#: users/forms/register.py:34
 msgid "This usernane is not allowed."
 msgid "This usernane is not allowed."
 msgstr "Это имя пользователя недоступно."
 msgstr "Это имя пользователя недоступно."
 
 
-#: users/forms/register.py:38 users/validators.py:41
+#: users/forms/register.py:45 users/validators.py:41
 msgid "This e-mail address is not allowed."
 msgid "This e-mail address is not allowed."
 msgstr "Этот e-mail адрес недоступен."
 msgstr "Этот e-mail адрес недоступен."
 
 
-#: users/forms/register.py:47
+#: users/forms/register.py:51
+msgid "This agreement is required."
+msgstr ""
+
+#: users/forms/register.py:60
 msgid "New registrations from this IP address are not allowed."
 msgid "New registrations from this IP address are not allowed."
 msgstr "Новые регистрации с данного IP адреса недоступны."
 msgstr "Новые регистрации с данного IP адреса недоступны."
 
 
+#: users/management/commands/prepareuserdatadownloads.py:34
+#, python-format
+msgid "%(user)s, your data download is ready"
+msgstr ""
+
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0006_update_settings.py:19
 #: users/migrations/0006_update_settings.py:19
 msgid ""
 msgid ""
@@ -6096,7 +6453,7 @@ msgid "Enter each answer in new line. Answers are case-insensitive."
 msgstr "Введите каждый ответ в новой строке. Ответы чуствительны к регистру."
 msgstr "Введите каждый ответ в новой строке. Ответы чуствительны к регистру."
 
 
 #: users/migrations/0004_default_ranks.py:17
 #: users/migrations/0004_default_ranks.py:17
-#: users/migrations/0004_default_ranks.py:18 users/models/user.py:111
+#: users/migrations/0004_default_ranks.py:18 users/models/user.py:113
 msgid "Forum team"
 msgid "Forum team"
 msgstr "Форум команды"
 msgstr "Форум команды"
 
 
@@ -6109,47 +6466,59 @@ msgstr "Команда"
 msgid "Members"
 msgid "Members"
 msgstr "Участники"
 msgstr "Участники"
 
 
-#: users/models/user.py:37
+#: users/models/datadownload.py:23
+msgid "Pending"
+msgstr ""
+
+#: users/models/datadownload.py:24
+msgid "Processing"
+msgstr ""
+
+#: users/models/datadownload.py:25
+msgid "Ready"
+msgstr ""
+
+#: users/models/user.py:38
 msgid "User must have an email address."
 msgid "User must have an email address."
 msgstr "Пользователь обязан иметь e-mail адрес."
 msgstr "Пользователь обязан иметь e-mail адрес."
 
 
-#: users/models/user.py:146
+#: users/models/user.py:148
 msgid "Notify"
 msgid "Notify"
 msgstr "Уведомлять"
 msgstr "Уведомлять"
 
 
-#: users/models/user.py:147
+#: users/models/user.py:149
 msgid "Notify with e-mail"
 msgid "Notify with e-mail"
 msgstr "Уведомлять по e-mail"
 msgstr "Уведомлять по e-mail"
 
 
-#: users/models/user.py:155
+#: users/models/user.py:157
 msgid "Everybody"
 msgid "Everybody"
 msgstr "Все"
 msgstr "Все"
 
 
-#: users/models/user.py:156
+#: users/models/user.py:158
 msgid "Users I follow"
 msgid "Users I follow"
 msgstr "Пользователи, которых я читаю"
 msgstr "Пользователи, которых я читаю"
 
 
-#: users/models/user.py:157
+#: users/models/user.py:159
 msgid "Nobody"
 msgid "Nobody"
 msgstr "Никто"
 msgstr "Никто"
 
 
-#: users/models/user.py:175
+#: users/models/user.py:177
 msgid "joined on"
 msgid "joined on"
 msgstr "присоединился к"
 msgstr "присоединился к"
 
 
-#: users/models/user.py:190
+#: users/models/user.py:191
 msgid "staff status"
 msgid "staff status"
 msgstr "статус сотрудника"
 msgstr "статус сотрудника"
 
 
-#: users/models/user.py:192
+#: users/models/user.py:193
 msgid "Designates whether the user can log into admin sites."
 msgid "Designates whether the user can log into admin sites."
 msgstr "Указывает, может ли пользователь заходить на администраторские сайты."
 msgstr "Указывает, может ли пользователь заходить на администраторские сайты."
 
 
-#: users/models/user.py:199
+#: users/models/user.py:200
 msgid "active"
 msgid "active"
 msgstr "активен"
 msgstr "активен"
 
 
-#: users/models/user.py:203
+#: users/models/user.py:204
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Unselect this "
 "Designates whether this user should be treated as active. Unselect this "
 "instead of deleting accounts."
 "instead of deleting accounts."
@@ -6541,11 +6910,7 @@ msgstr "Это неправильный twitter аккаунт."
 msgid "Join IP"
 msgid "Join IP"
 msgstr "Подсоединить IP-адрес"
 msgstr "Подсоединить IP-адрес"
 
 
-#: users/profilefields/default.py:99
-msgid "Last IP"
-msgstr "Последний IP"
-
-#: users/registration.py:9
+#: users/registration.py:11
 #, python-format
 #, python-format
 msgid "Welcome on %(forum_name)s forums!"
 msgid "Welcome on %(forum_name)s forums!"
 msgstr "Добро пожаловать на %(forum_name)s форумы!"
 msgstr "Добро пожаловать на %(forum_name)s форумы!"
@@ -6587,14 +6952,30 @@ msgstr "Вам необходимо ввести новый e-mail адрес."
 msgid "New e-mail is same as current one."
 msgid "New e-mail is same as current one."
 msgstr "Новый e-mail совпадает с текущим."
 msgstr "Новый e-mail совпадает с текущим."
 
 
-#: users/social/pipeline.py:74
+#: users/signals.py:31
+msgid "Joined on"
+msgstr ""
+
+#: users/signals.py:32
+msgid "Joined from ip"
+msgstr ""
+
+#: users/signals.py:72
+msgid "New username"
+msgstr ""
+
+#: users/signals.py:73
+msgid "Old username"
+msgstr ""
+
+#: users/social/pipeline.py:77
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "The e-mail address associated with your %(backend)s account is not available"
 "The e-mail address associated with your %(backend)s account is not available"
 " for use on this site."
 " for use on this site."
 msgstr ""
 msgstr ""
 
 
-#: users/social/pipeline.py:83
+#: users/social/pipeline.py:86
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "Your account has to be activated by site administrator before you will be "
 "Your account has to be activated by site administrator before you will be "
@@ -6704,6 +7085,42 @@ msgstr "Блокировка \"%(name)s\" была отредактирован
 msgid "Ban \"%(name)s\" has been removed."
 msgid "Ban \"%(name)s\" has been removed."
 msgstr "Блокировка \"%(name)s\" была удалена."
 msgstr "Блокировка \"%(name)s\" была удалена."
 
 
+#: users/views/admin/datadownloads.py:23
+msgid "With data downloads: 0"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:24
+msgid "Select data downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:28
+msgid "Expire downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:30
+msgid "Are you sure you want to set selected data downloads as expired?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:34
+msgid "Delete downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:36
+msgid "Are you sure you want to delete selected data downloads?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:51
+msgid "Selected data downloads have been set as expired."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:57
+msgid "Selected data downloads have been deleted."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:68
+msgid "Data downloads have been requested for specified users."
+msgstr ""
+
 #: users/views/admin/ranks.py:16
 #: users/views/admin/ranks.py:16
 msgid "Requested rank does not exist."
 msgid "Requested rank does not exist."
 msgstr "Запрашиваемый ранг не существует."
 msgstr "Запрашиваемый ранг не существует."
@@ -6753,39 +7170,43 @@ msgstr "Ранг \"%(name)s\" уже является рангом по умол
 msgid "Rank \"%(name)s\" has been made default."
 msgid "Rank \"%(name)s\" has been made default."
 msgstr "Ранг \"%(name)s\" был назначен рангом по умолчанию."
 msgstr "Ранг \"%(name)s\" был назначен рангом по умолчанию."
 
 
-#: users/views/admin/users.py:59
+#: users/views/admin/users.py:60
 msgid "Biggest posters"
 msgid "Biggest posters"
 msgstr "Наибольшие постеры"
 msgstr "Наибольшие постеры"
 
 
-#: users/views/admin/users.py:60
+#: users/views/admin/users.py:61
 msgid "Smallest posters"
 msgid "Smallest posters"
 msgstr "Наименьшие постеры"
 msgstr "Наименьшие постеры"
 
 
-#: users/views/admin/users.py:62
+#: users/views/admin/users.py:63
 msgid "With users: 0"
 msgid "With users: 0"
 msgstr "С пользователями: 0"
 msgstr "С пользователями: 0"
 
 
-#: users/views/admin/users.py:63
+#: users/views/admin/users.py:64
 msgid "Select users"
 msgid "Select users"
 msgstr "Выбрать пользователей"
 msgstr "Выбрать пользователей"
 
 
-#: users/views/admin/users.py:67
+#: users/views/admin/users.py:68
 msgid "Activate accounts"
 msgid "Activate accounts"
 msgstr "Активировать аккаунты"
 msgstr "Активировать аккаунты"
 
 
-#: users/views/admin/users.py:77
+#: users/views/admin/users.py:78
+msgid "Request data download"
+msgstr ""
+
+#: users/views/admin/users.py:83
 msgid "Delete accounts"
 msgid "Delete accounts"
 msgstr "Удалить аккаунты"
 msgstr "Удалить аккаунты"
 
 
-#: users/views/admin/users.py:79
+#: users/views/admin/users.py:85
 msgid "Are you sure you want to delete selected users?"
 msgid "Are you sure you want to delete selected users?"
 msgstr "Вы уверены что хотите удалить выбранных пользователей?"
 msgstr "Вы уверены что хотите удалить выбранных пользователей?"
 
 
-#: users/views/admin/users.py:83
+#: users/views/admin/users.py:89
 msgid "Delete all"
 msgid "Delete all"
 msgstr "Удалить всё"
 msgstr "Удалить всё"
 
 
-#: users/views/admin/users.py:86
+#: users/views/admin/users.py:92
 msgid ""
 msgid ""
 "Are you sure you want to delete selected users? This will also delete all "
 "Are you sure you want to delete selected users? This will also delete all "
 "content associated with their accounts."
 "content associated with their accounts."
@@ -6793,54 +7214,58 @@ msgstr ""
 "Вы уверены что хотите удалить выбранных пользователей? Это также удалит все "
 "Вы уверены что хотите удалить выбранных пользователей? Это также удалит все "
 "данные, связанные с этими аккаунтами."
 "данные, связанные с этими аккаунтами."
 
 
-#: users/views/admin/users.py:107
+#: users/views/admin/users.py:113
 msgid "You have to select inactive users."
 msgid "You have to select inactive users."
 msgstr "Вы должны выбрать неактивных пользователей."
 msgstr "Вы должны выбрать неактивных пользователей."
 
 
-#: users/views/admin/users.py:114
+#: users/views/admin/users.py:120
 #, python-format
 #, python-format
 msgid "Your account on %(forum_name)s forums has been activated"
 msgid "Your account on %(forum_name)s forums has been activated"
 msgstr "Ваш аккаунт на форуме %(forum_name)s был активирован"
 msgstr "Ваш аккаунт на форуме %(forum_name)s был активирован"
 
 
-#: users/views/admin/users.py:119
+#: users/views/admin/users.py:125
 msgid "Selected users accounts have been activated."
 msgid "Selected users accounts have been activated."
 msgstr "Выбранные аккаунты пользователей были активированы."
 msgstr "Выбранные аккаунты пользователей были активированы."
 
 
-#: users/views/admin/users.py:125
+#: users/views/admin/users.py:131
 #, python-format
 #, python-format
 msgid "%(user)s is super admin and can't be banned."
 msgid "%(user)s is super admin and can't be banned."
 msgstr "%(user)s - суперадминистратор и не может быть заблокирован."
 msgstr "%(user)s - суперадминистратор и не может быть заблокирован."
 
 
-#: users/views/admin/users.py:186
+#: users/views/admin/users.py:194
 msgid "Selected users have been banned."
 msgid "Selected users have been banned."
 msgstr "Выбранные пользователи были заблокированы."
 msgstr "Выбранные пользователи были заблокированы."
 
 
-#: users/views/admin/users.py:201 users/views/admin/users.py:215
-#: users/views/admin/users.py:331
+#: users/views/admin/users.py:212
+msgid "Data download requests have been placed for selected users."
+msgstr ""
+
+#: users/views/admin/users.py:217 users/views/admin/users.py:230
+#: users/views/admin/users.py:346
 msgid "You can't delete yourself."
 msgid "You can't delete yourself."
 msgstr "Вы не можете удалить себя."
 msgstr "Вы не можете удалить себя."
 
 
-#: users/views/admin/users.py:203 users/views/admin/users.py:217
-#: users/views/admin/users.py:334
+#: users/views/admin/users.py:219 users/views/admin/users.py:232
+#: users/views/admin/users.py:349
 #, python-format
 #, python-format
 msgid "%(user)s is admin and can't be deleted."
 msgid "%(user)s is admin and can't be deleted."
 msgstr "%(user)s - администратор и не может быть удален."
 msgstr "%(user)s - администратор и не может быть удален."
 
 
-#: users/views/admin/users.py:209
+#: users/views/admin/users.py:225
 msgid "Selected users have been deleted."
 msgid "Selected users have been deleted."
 msgstr "Выбранные пользователи были удалены."
 msgstr "Выбранные пользователи были удалены."
 
 
-#: users/views/admin/users.py:232
+#: users/views/admin/users.py:247
 #, python-format
 #, python-format
 msgid "New user \"%(user)s\" has been registered."
 msgid "New user \"%(user)s\" has been registered."
 msgstr "Новый пользователь \"%(user)s\" был зарегистрирован."
 msgstr "Новый пользователь \"%(user)s\" был зарегистрирован."
 
 
-#: users/views/admin/users.py:261
+#: users/views/admin/users.py:276
 #, python-format
 #, python-format
 msgid "User \"%(user)s\" has been edited."
 msgid "User \"%(user)s\" has been edited."
 msgstr "Пользователь \"%(user)s\" был отредактирован."
 msgstr "Пользователь \"%(user)s\" был отредактирован."
 
 
-#: users/views/admin/users.py:328
+#: users/views/admin/users.py:343
 msgid "This action can't be accessed directly."
 msgid "This action can't be accessed directly."
 msgstr "Это действие нельзя выполнить напрямую."
 msgstr "Это действие нельзя выполнить напрямую."
 
 

BIN
misago/locale/ru/LC_MESSAGES/djangojs.mo


+ 285 - 207
misago/locale/ru/LC_MESSAGES/djangojs.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-20 21:20+0200\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Roman Patsev <rpatsev@gmail.com>, 2018\n"
 "Last-Translator: Roman Patsev <rpatsev@gmail.com>, 2018\n"
 "Language-Team: Russian (https://www.transifex.com/misago/teams/65369/ru/)\n"
 "Language-Team: Russian (https://www.transifex.com/misago/teams/65369/ru/)\n"
@@ -39,8 +39,30 @@ msgid "Promise can't be resolved itself"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:1
 #: static/misago/js/misago.js:1
-msgid "By registering you agree to site's terms and conditions."
-msgstr "Регистрируясь, вы соглашаетесь с условиями и положениями сайта"
+msgid "the terms of service"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "the privacy policy"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "I have read and accept %(agreement)s."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid ""
+"Declining will result in immediate deactivation and deletion of your "
+"account. This action is not reversible."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Decline"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Accept and continue"
+msgstr ""
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
@@ -48,11 +70,12 @@ msgstr "Регистрируясь, вы соглашаетесь с услов
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Close"
 msgid "Close"
 msgstr "Закрыть"
 msgstr "Закрыть"
 
 
-#: static/misago/js/misago.js:1 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:1 static/misago/js/misago.js:6
 msgid "Add participant"
 msgid "Add participant"
 msgstr "Добавить участника"
 msgstr "Добавить участника"
 
 
@@ -70,9 +93,10 @@ msgstr "Добавление пользователя"
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:6 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:6 static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Cancel"
 msgid "Cancel"
 msgstr "Отмена"
 msgstr "Отмена"
 
 
@@ -199,8 +223,8 @@ msgid "Generate my individual avatar"
 msgstr "Сгенерировать индивидуальную аватарку"
 msgstr "Сгенерировать индивидуальную аватарку"
 
 
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "Ok"
 msgid "Ok"
 msgstr "Ок"
 msgstr "Ок"
 
 
@@ -268,39 +292,39 @@ msgstr "Вставить код"
 msgid "Emphase selection"
 msgid "Emphase selection"
 msgstr "Акцентировать выделенное"
 msgstr "Акцентировать выделенное"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert horizontal ruler"
 msgid "Insert horizontal ruler"
 msgstr "Вставить горизонтальный разделитель"
 msgstr "Вставить горизонтальный разделитель"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link to image"
 msgid "Enter link to image"
 msgstr "Введите ссылку на изображение"
 msgstr "Введите ссылку на изображение"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter image label (optional)"
 msgid "Enter image label (optional)"
 msgstr "Введите подпись изображения (опционально)"
 msgstr "Введите подпись изображения (опционально)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert image"
 msgid "Insert image"
 msgstr "Вставить изображение"
 msgstr "Вставить изображение"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link address"
 msgid "Enter link address"
 msgstr "Введите адрес ссылки"
 msgstr "Введите адрес ссылки"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link label (optional)"
 msgid "Enter link label (optional)"
 msgstr "Введите подпись ссылки (опционально)"
 msgstr "Введите подпись ссылки (опционально)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert link"
 msgid "Insert link"
 msgstr "Вставить ссылку"
 msgstr "Вставить ссылку"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter quote autor, prefix usernames with @"
 msgid "Enter quote autor, prefix usernames with @"
 msgstr "Введите автора цитаты, ник пишите с префиксом @"
 msgstr "Введите автора цитаты, ник пишите с префиксом @"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert quote"
 msgid "Insert quote"
 msgstr "Вставить цитату"
 msgstr "Вставить цитату"
 
 
@@ -332,7 +356,7 @@ msgstr "Отменить удаление"
 msgid "Error uploading %(filename)s"
 msgid "Error uploading %(filename)s"
 msgstr "Ошибка загрузки  %(filename)s"
 msgstr "Ошибка загрузки  %(filename)s"
 
 
-#: static/misago/js/misago.js:3 static/misago/js/misago.js:8
+#: static/misago/js/misago.js:3 static/misago/js/misago.js:9
 msgid "Dismiss"
 msgid "Dismiss"
 msgstr "Отклонено"
 msgstr "Отклонено"
 
 
@@ -349,7 +373,7 @@ msgid "Protected"
 msgstr "Защищено"
 msgstr "Защищено"
 
 
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Protect"
 msgid "Protect"
 msgstr "Защитить"
 msgstr "Защитить"
 
 
@@ -384,7 +408,7 @@ msgid ""
 " deleted during the merge."
 " deleted during the merge."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:18
 msgid "Poll"
 msgid "Poll"
 msgstr "Опрос"
 msgstr "Опрос"
 
 
@@ -399,6 +423,7 @@ msgid "Are you sure you want to delete all polls?"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Merge threads"
 msgid "Merge threads"
 msgstr "Объединить темы"
 msgstr "Объединить темы"
 
 
@@ -433,8 +458,7 @@ msgstr "Опубликовано %(poster)s%(posted_on)sв категории \"
 msgid "%(title)s, joined on %(joined_on)s"
 msgid "%(title)s, joined on %(joined_on)s"
 msgstr "%(title)s, присоединился %(joined_on)s"
 msgstr "%(title)s, присоединился %(joined_on)s"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "Change username"
 msgid "Change username"
 msgstr "Изменить имя"
 msgstr "Изменить имя"
 
 
@@ -471,7 +495,7 @@ msgstr[3] ""
 msgid "Your new username is same as current one."
 msgid "Your new username is same as current one."
 msgstr "Вашено новое имя совпадает с текущим."
 msgstr "Вашено новое имя совпадает с текущим."
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "New username"
 msgid "New username"
 msgstr "Новое имя"
 msgstr "Новое имя"
 
 
@@ -480,15 +504,15 @@ msgid "Your username has been changed successfully."
 msgstr "Имя было успешно изменено."
 msgstr "Имя было успешно изменено."
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change your options"
 msgid "Change your options"
 msgstr "Измените ваши настройки"
 msgstr "Измените ваши настройки"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5
 msgid "Enter your password to confirm account deletion."
 msgid "Enter your password to confirm account deletion."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:13
 msgid "Delete account"
 msgid "Delete account"
 msgstr "Удалить аккаунт"
 msgstr "Удалить аккаунт"
 
 
@@ -524,7 +548,54 @@ msgstr ""
 msgid "Delete my account"
 msgid "Delete my account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:5
+msgid "Your request for data download has been registered."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download your data"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"To download your data from the site, click the \"Request data download\" "
+"button. Depending on amount of data to be archived and number of users "
+"wanting to download their data at same time it may take up to few days for "
+"your download to be prepared. An e-mail with notification will be sent to "
+"you when your data is ready to be downloaded."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"The download will only be available for limited amount of time, after which "
+"it will be deleted from the site and marked as expired."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Requested on"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "You have no data downloads."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Request data download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is being prepared"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is expired"
+msgstr ""
+
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:12
 msgid "Your details have been updated."
 msgid "Your details have been updated."
 msgstr "Личные данные обновлены."
 msgstr "Личные данные обновлены."
 
 
@@ -609,7 +680,7 @@ msgstr "Темы, которые я начал"
 msgid "Threads I reply to"
 msgid "Threads I reply to"
 msgstr "Темы, где я отвечал"
 msgstr "Темы, где я отвечал"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:6
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "Изменить email или пароль"
 msgstr "Изменить email или пароль"
 
 
@@ -659,7 +730,7 @@ msgstr "Новый пароль"
 msgid "Repeat password"
 msgid "Repeat password"
 msgstr "Повторите пароль"
 msgstr "Повторите пароль"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change forgotten password"
 msgid "Change forgotten password"
 msgstr "Изменить забытый пароль"
 msgstr "Изменить забытый пароль"
 
 
@@ -851,11 +922,11 @@ msgstr[1] "%(votes)s голоса."
 msgstr[2] "%(votes)s голосов."
 msgstr[2] "%(votes)s голосов."
 msgstr[3] "%(votes)s голосов."
 msgstr[3] "%(votes)s голосов."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Votes are public."
 msgid "Votes are public."
 msgstr "Голоса публичны."
 msgstr "Голоса публичны."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgstr[0] "%(votes)s голос, %(proc)s%"
 msgstr[0] "%(votes)s голос, %(proc)s%"
@@ -863,11 +934,11 @@ msgstr[1] "%(votes)s голоса, %(proc)s%"
 msgstr[2] "%(votes)s голосов, %(proc)s%"
 msgstr[2] "%(votes)s голосов, %(proc)s%"
 msgstr[3] "%(votes)s голосов, %(proc)s%"
 msgstr[3] "%(votes)s голосов, %(proc)s%"
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Your choice."
 msgid "Your choice."
 msgstr "Ваш выбор."
 msgstr "Ваш выбор."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s user has voted for this choice."
 msgid "%(votes)s user has voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgstr[0] "%(votes)s пользователь проголосовал за этот вариант"
 msgstr[0] "%(votes)s пользователь проголосовал за этот вариант"
@@ -887,9 +958,8 @@ msgstr "Ответ"
 msgid "See votes"
 msgid "See votes"
 msgstr "Посмотрть ответы"
 msgstr "Посмотрть ответы"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:15
 msgid "Edit"
 msgid "Edit"
 msgstr "Изменить"
 msgstr "Изменить"
 
 
@@ -901,8 +971,7 @@ msgstr ""
 "необратимо."
 "необратимо."
 
 
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Delete"
 msgid "Delete"
 msgstr "Удалить"
 msgstr "Удалить"
 
 
@@ -969,28 +1038,28 @@ msgstr "Сообщение было возвращено в предыдущее
 msgid "See previous change"
 msgid "See previous change"
 msgstr "Посмотреть предыдущее изменение"
 msgstr "Посмотреть предыдущее изменение"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "By %(edited_by)s %(edited_on)s."
 msgid "By %(edited_by)s %(edited_on)s."
 msgstr "Опубликовал  %(poster)s  %(posted_on)s."
 msgstr "Опубликовал  %(poster)s  %(posted_on)s."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This post's contents cannot be displayed."
 msgid "This post's contents cannot be displayed."
 msgstr "Содержимое данного сообщения не может быть отображено."
 msgstr "Содержимое данного сообщения не может быть отображено."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This error is caused by invalid post content manipulation."
 msgid "This error is caused by invalid post content manipulation."
 msgstr ""
 msgstr ""
 "Эта ошибка произошла из-за неправильной манипуляции содержимым сообщения."
 "Эта ошибка произошла из-за неправильной манипуляции содержимым сообщения."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "posted %(posted_on)s"
 msgid "posted %(posted_on)s"
 msgstr "Опубликовано  %(posted_on)s"
 msgstr "Опубликовано  %(posted_on)s"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "Removed user"
 msgid "Removed user"
 msgstr "Удалённый пользователь"
 msgstr "Удалённый пользователь"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "See post"
 msgid "See post"
 msgstr "Просмотреть сообщение"
 msgstr "Просмотреть сообщение"
 
 
@@ -1014,7 +1083,7 @@ msgstr "Ни одному пользователю ещё не понравил
 msgid "Are you sure you want to discard changes?"
 msgid "Are you sure you want to discard changes?"
 msgstr "Вы уверены, что хотите сбросить изменения?"
 msgstr "Вы уверены, что хотите сбросить изменения?"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Необходимо ввести сообщение."
 msgstr "Необходимо ввести сообщение."
 
 
@@ -1046,11 +1115,12 @@ msgstr "Вы уверены, что хотите сбросить приватн
 msgid "You have to enter at least one recipient."
 msgid "You have to enter at least one recipient."
 msgstr "Необходимо указать хотя бы одного получателя."
 msgstr "Необходимо указать хотя бы одного получателя."
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:15
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Вы должны ввести заголовок темы."
 msgstr "Вы должны ввести заголовок темы."
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Your thread has been posted."
 msgid "Your thread has been posted."
 msgstr "Ваша тема была опубликована."
 msgstr "Ваша тема была опубликована."
 
 
@@ -1058,12 +1128,13 @@ msgstr "Ваша тема была опубликована."
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgstr "Список пользователей через запятую, например: Иван, Василий"
 msgstr "Список пользователей через запятую, например: Иван, Василий"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:19
 msgid "Thread title"
 msgid "Thread title"
 msgstr "Заголовок темы"
 msgstr "Заголовок темы"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Post thread"
 msgid "Post thread"
 msgstr "Опубликовать тему"
 msgstr "Опубликовать тему"
 
 
@@ -1071,35 +1142,35 @@ msgstr "Опубликовать тему"
 msgid "Are you sure you want to discard thread?"
 msgid "Are you sure you want to discard thread?"
 msgstr "Вы уверены что хотите удалить ветку?"
 msgstr "Вы уверены что хотите удалить ветку?"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18
 msgid "Closed"
 msgid "Closed"
 msgstr "Закрыто"
 msgstr "Закрыто"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:16
 msgid "Open"
 msgid "Open"
 msgstr "Открыто"
 msgstr "Открыто"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:21
 msgid "Hidden"
 msgid "Hidden"
 msgstr "Скрытые"
 msgstr "Скрытые"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Not hidden"
 msgid "Not hidden"
 msgstr "Не скрывать"
 msgstr "Не скрывать"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Unpinned"
 msgid "Unpinned"
 msgstr "Откреплено"
 msgstr "Откреплено"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned locally"
 msgid "Pinned locally"
 msgstr "Закреплено локально"
 msgstr "Закреплено локально"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned globally"
 msgid "Pinned globally"
@@ -1186,12 +1257,12 @@ msgstr[3] ""
 "%(show_value)s)."
 "%(show_value)s)."
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Hide"
 msgid "Hide"
 msgstr "Спрятать"
 msgstr "Спрятать"
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Unhide"
 msgid "Unhide"
 msgstr "Показать"
 msgstr "Показать"
 
 
@@ -1213,10 +1284,6 @@ msgid "By %(event_by)s %(event_on)s."
 msgstr "%(event_by)s %(event_on)s."
 msgstr "%(event_by)s %(event_on)s."
 
 
 #: static/misago/js/misago.js:9
 #: static/misago/js/misago.js:9
-msgid "IP recorded"
-msgstr "IP зарегистрированный"
-
-#: static/misago/js/misago.js:9
 msgid "Thread title has been changed from %(old_title)s."
 msgid "Thread title has been changed from %(old_title)s."
 msgstr "Заголовок ветки был изменён с %(old_title)s."
 msgstr "Заголовок ветки был изменён с %(old_title)s."
 
 
@@ -1306,23 +1373,23 @@ msgstr ""
 msgid "Post has been deleted."
 msgid "Post has been deleted."
 msgstr "Сообщение удалено."
 msgstr "Сообщение удалено."
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link to this post:"
 msgid "Permament link to this post:"
 msgstr "Постоянная ссылка на это сообщение:"
 msgstr "Постоянная ссылка на это сообщение:"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link"
 msgid "Permament link"
 msgstr "Постоянная ссылка"
 msgstr "Постоянная ссылка"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Mark as best answer"
 msgid "Mark as best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Unmark best answer"
 msgid "Unmark best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
 msgid "This post was edited %(edits)s time."
 msgid "This post was edited %(edits)s time."
 msgid_plural "This post was edited %(edits)s times."
 msgid_plural "This post was edited %(edits)s times."
 msgstr[0] "Это сообщение было отредактировано %(edits)s раз."
 msgstr[0] "Это сообщение было отредактировано %(edits)s раз."
@@ -1334,17 +1401,15 @@ msgstr[3] "Это сообщение было отредактировано %(e
 msgid "Changes history"
 msgid "Changes history"
 msgstr "История изменений"
 msgstr "История изменений"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Approve"
 msgid "Approve"
 msgstr "Одобрить"
 msgstr "Одобрить"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Move"
 msgid "Move"
 msgstr "Переместить"
 msgstr "Переместить"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Split"
 msgid "Split"
 msgstr "Разделить"
 msgstr "Разделить"
 
 
@@ -1357,6 +1422,7 @@ msgid "Move post"
 msgstr "Переместить сообщение"
 msgstr "Переместить сообщение"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You have to enter link to the other thread."
 msgid "You have to enter link to the other thread."
 msgstr "Вы должны указать ссылку на другую тему."
 msgstr "Вы должны указать ссылку на другую тему."
 
 
@@ -1406,7 +1472,7 @@ msgid "Close thread"
 msgstr "Закрыть тему"
 msgstr "Закрыть тему"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19
 msgid "Category"
 msgid "Category"
 msgstr "Категория"
 msgstr "Категория"
 
 
@@ -1460,32 +1526,32 @@ msgstr[1] ""
 msgstr[2] ""
 msgstr[2] ""
 msgstr[3] ""
 msgstr[3] ""
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Liked"
 msgid "Liked"
 msgstr "Нравится"
 msgstr "Нравится"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Like"
 msgid "Like"
 msgstr "Лайк"
 msgstr "Лайк"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
 msgid "Reply"
 msgid "Reply"
 msgstr "Ответить"
 msgstr "Ответить"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "New post"
 msgid "New post"
 msgstr "Новое сообщение"
 msgstr "Новое сообщение"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:20
 msgid "New"
 msgid "New"
 msgstr "Новые"
 msgstr "Новые"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "This post is protected and may not be edited."
 msgid "This post is protected and may not be edited."
 msgstr "Это сообщение защищено и не может быть отредактировано."
 msgstr "Это сообщение защищено и не может быть отредактировано."
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "protected"
 msgid "protected"
 msgstr "защищено"
 msgstr "защищено"
 
 
@@ -1537,23 +1603,23 @@ msgstr "Вы не поделились информацией о себе с д
 msgid "%(username)s is not sharing any details with others."
 msgid "%(username)s is not sharing any details with others."
 msgstr "%(username)s не поделился никакими деталями с другими."
 msgstr "%(username)s не поделился никакими деталями с другими."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
 msgid "Details"
 msgid "Details"
 msgstr "Детали"
 msgstr "Детали"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s's details have been updated."
 msgid "%(username)s's details have been updated."
 msgstr "%(username)sличные данные обновлены."
 msgstr "%(username)sличные данные обновлены."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have no started threads."
 msgid "You have no started threads."
 msgstr "У вас нет начатых тем."
 msgstr "У вас нет начатых тем."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s started no threads."
 msgid "%(username)s started no threads."
 msgstr "У %(username)s нет начатых тем."
 msgstr "У %(username)s нет начатых тем."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have started %(threads)s thread."
 msgid "You have started %(threads)s thread."
 msgid_plural "You have started %(threads)s threads."
 msgid_plural "You have started %(threads)s threads."
 msgstr[0] "Вы начали %(threads)sтему."
 msgstr[0] "Вы начали %(threads)sтему."
@@ -1561,7 +1627,7 @@ msgstr[1] "Вы начали %(threads)sтемы."
 msgstr[2] "Вы начали %(threads)sтем."
 msgstr[2] "Вы начали %(threads)sтем."
 msgstr[3] "Вы начали %(threads)s тем."
 msgstr[3] "Вы начали %(threads)s тем."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has started %(threads)s thread."
 msgid "%(username)s has started %(threads)s thread."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgstr[0] ""
 msgstr[0] ""
@@ -1569,25 +1635,24 @@ msgstr[1] ""
 msgstr[2] ""
 msgstr[2] ""
 msgstr[3] ""
 msgstr[3] ""
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:13
 msgid "Loading..."
 msgid "Loading..."
 msgstr "Загрузка..."
 msgstr "Загрузка..."
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:20
 #: static/misago/js/misago.js:20
 msgid "Threads"
 msgid "Threads"
 msgstr "Темы"
 msgstr "Темы"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted no messages."
 msgid "You have posted no messages."
 msgstr "Вы не написали сообщений."
 msgstr "Вы не написали сообщений."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s posted no messages."
 msgid "%(username)s posted no messages."
 msgstr "У %(username)s нет опубликованных сообщений."
 msgstr "У %(username)s нет опубликованных сообщений."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted %(posts)s message."
 msgid "You have posted %(posts)s message."
 msgid_plural "You have posted %(posts)s messages."
 msgid_plural "You have posted %(posts)s messages."
 msgstr[0] "Вы опубликовали %(posts)s сообщение."
 msgstr[0] "Вы опубликовали %(posts)s сообщение."
@@ -1595,7 +1660,7 @@ msgstr[1] "Вы опубликовали %(posts)s сообщения."
 msgstr[2] "Вы опубликовали %(posts)s сообщений."
 msgstr[2] "Вы опубликовали %(posts)s сообщений."
 msgstr[3] "Вы опубликовали %(posts)s сообщений."
 msgstr[3] "Вы опубликовали %(posts)s сообщений."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has posted %(posts)s message."
 msgid "%(username)s has posted %(posts)s message."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgstr[0] ""
 msgstr[0] ""
@@ -1603,11 +1668,11 @@ msgstr[1] ""
 msgstr[2] ""
 msgstr[2] ""
 msgstr[3] ""
 msgstr[3] ""
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "Posts"
 msgid "Posts"
 msgstr "Сообщений"
 msgstr "Сообщений"
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:12
 msgid "Show more (%(more)s)"
 msgid "Show more (%(more)s)"
 msgstr "Показать ещё (%(more)s)"
 msgstr "Показать ещё (%(more)s)"
 
 
@@ -1708,6 +1773,7 @@ msgid "Joined %(joined_on)s"
 msgstr "Присоединился %(joined_on)s"
 msgstr "Присоединился %(joined_on)s"
 
 
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Moderation"
 msgid "Moderation"
 msgstr "Модерация"
 msgstr "Модерация"
 
 
@@ -1763,41 +1829,41 @@ msgstr ""
 msgid "Avatar controls"
 msgid "Avatar controls"
 msgstr "Контроль за аватаром"
 msgstr "Контроль за аватаром"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Username has been changed."
 msgid "Username has been changed."
 msgstr "Имя пользователя было изменено."
 msgstr "Имя пользователя было изменено."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account, threads, posts and other content has been deleted."
 "%(username)s's account, threads, posts and other content has been deleted."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account has been deleted and other content has been hidden."
 "%(username)s's account has been deleted and other content has been hidden."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete %(username)s"
 msgid "Delete %(username)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Please wait... (%(countdown)ss)"
 msgid "Please wait... (%(countdown)ss)"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "User content"
 msgid "User content"
 msgstr "Пользовательский контент"
 msgstr "Пользовательский контент"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete together with user's account"
 msgid "Delete together with user's account"
 msgstr "Удалить с аккаунтом пользователя"
 msgstr "Удалить с аккаунтом пользователя"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Hide after deleting user's account"
 msgid "Hide after deleting user's account"
 msgstr "Скрыть после удаления аккаунта пользователя."
 msgstr "Скрыть после удаления аккаунта пользователя."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Return to users list"
 msgid "Return to users list"
 msgstr "Вернуться к списку пользователей"
 msgstr "Вернуться к списку пользователей"
 
 
@@ -1869,75 +1935,74 @@ msgstr "Регистрация недоступна из-за ошибки."
 msgid "Register"
 msgid "Register"
 msgstr "Регистрация"
 msgstr "Регистрация"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Join with %(site)s"
 msgid "Join with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Or create forum account:"
 msgid "Or create forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Username"
 msgid "Username"
 msgstr "Имя пользователя"
 msgstr "Имя пользователя"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "E-mail"
 msgid "E-mail"
 msgstr "Электронная почта"
 msgstr "Электронная почта"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Password"
 msgid "Password"
 msgstr "Пароль"
 msgstr "Пароль"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Register account"
 msgid "Register account"
 msgstr "Зарегистрировать аккаунт"
 msgstr "Зарегистрировать аккаунт"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but you need to activate it "
 "%(username)s, your account has been created but you need to activate it "
 "before you will be able to sign in."
 "before you will be able to sign in."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but board administrator will "
 "%(username)s, your account has been created but board administrator will "
 "have to activate it before you will be able to sign in."
 "have to activate it before you will be able to sign in."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid ""
 msgid ""
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "activate your account."
 "activate your account."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Registration complete"
 msgid "Registration complete"
 msgstr "Регистрация завершена"
 msgstr "Регистрация завершена"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:25
 msgid "Enter a valid email address."
 msgid "Enter a valid email address."
 msgstr "Введите корректный e-mail адрес."
 msgstr "Введите корректный e-mail адрес."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Your e-mail address"
 msgid "Your e-mail address"
 msgstr "Ваш e-mail адрес"
 msgstr "Ваш e-mail адрес"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Send link"
 msgid "Send link"
 msgstr "Отправить ссылку"
 msgstr "Отправить ссылку"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Activation link was sent to %(email)s"
 msgid "Activation link was sent to %(email)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Request another link"
 msgid "Request another link"
 msgstr "Запросить другую ссылку"
 msgstr "Запросить другую ссылку"
 
 
@@ -2002,41 +2067,41 @@ msgstr "Пользователи по заданным критериям пои
 msgid "Enter at least two characters to search users."
 msgid "Enter at least two characters to search users."
 msgstr "Введите хотя бы два символа для поиска пользователя."
 msgstr "Введите хотя бы два символа для поиска пользователя."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Заполните оба поля."
 msgstr "Заполните оба поля."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Activate account"
 msgid "Activate account"
 msgstr "Активировать аккаунт"
 msgstr "Активировать аккаунт"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Sign in with %(site)s"
 msgid "Sign in with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Or use your forum account:"
 msgid "Or use your forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Имя пользователя или e-mail"
 msgstr "Имя пользователя или e-mail"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Forgot password?"
 msgid "Forgot password?"
 msgstr "Забыли пароль?"
 msgstr "Забыли пароль?"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid ""
 msgid ""
-"%(username)s, your account has been created and you has been signed in to "
+"%(username)s, your account has been created and you have been signed in to "
 "it."
 "it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Registration completed!"
 msgid "Registration completed!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Return to forum index"
 msgid "Return to forum index"
 msgstr ""
 msgstr ""
 
 
@@ -2045,6 +2110,10 @@ msgid "Sign in with %(backend)s"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
+msgid "You need to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:15
 msgid "Your e-mail address has been verified by %(backend)s."
 msgid "Your e-mail address has been verified by %(backend)s."
 msgstr ""
 msgstr ""
 
 
@@ -2065,7 +2134,7 @@ msgid "Edit title"
 msgstr "Изменить название"
 msgstr "Изменить название"
 
 
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:20
 msgid "Unapproved"
 msgid "Unapproved"
 msgstr "Одобренные"
 msgstr "Одобренные"
 
 
@@ -2073,7 +2142,7 @@ msgstr "Одобренные"
 msgid "Unapproved posts"
 msgid "Unapproved posts"
 msgstr "Одобренные темы"
 msgstr "Одобренные темы"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:15 static/misago/js/misago.js:18
 msgid "%(replies)s reply"
 msgid "%(replies)s reply"
 msgid_plural "%(replies)s replies"
 msgid_plural "%(replies)s replies"
 msgstr[0] "%(replies)s ответ"
 msgstr[0] "%(replies)s ответ"
@@ -2099,19 +2168,19 @@ msgid ""
 msgstr ""
 msgstr ""
 "Вы уверены, что хотите удалить выбранные сообщения? Это действие необратимо!"
 "Вы уверены, что хотите удалить выбранные сообщения? Это действие необратимо!"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Merge"
 msgid "Merge"
 msgstr "Объединить"
 msgstr "Объединить"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Unprotect"
 msgid "Unprotect"
 msgstr "Снять защиту"
 msgstr "Снять защиту"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "%(username)s on %(posted_on)s"
 msgid "%(username)s on %(posted_on)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "One or more posts could not be changed:"
 msgid "One or more posts could not be changed:"
 msgstr "Одно или больше сообщений не могут быть изменены:"
 msgstr "Одно или больше сообщений не могут быть изменены:"
 
 
@@ -2171,37 +2240,37 @@ msgstr "Закрепить локально"
 msgid "Unpin"
 msgid "Unpin"
 msgstr "Открепить"
 msgstr "Открепить"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Merge thread"
 msgid "Merge thread"
 msgstr "Объединить тему"
 msgstr "Объединить тему"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been merged with other one."
 msgid "Thread has been merged with other one."
 msgstr "Тема была объедена с другой."
 msgstr "Тема была объедена с другой."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Link to thread you want to merge with"
 msgid "Link to thread you want to merge with"
 msgstr "Ссылка на тему, с которой Вы хотите объединить"
 msgstr "Ссылка на тему, с которой Вы хотите объединить"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid ""
 msgid ""
 "Merge will delete current thread and move its contents to the thread "
 "Merge will delete current thread and move its contents to the thread "
 "specified here."
 "specified here."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Move thread"
 msgid "Move thread"
 msgstr "Переместить тему"
 msgstr "Переместить тему"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You can't move this thread at the moment."
 msgid "You can't move this thread at the moment."
 msgstr "Вы не можете переместить тему на данный момент."
 msgstr "Вы не можете переместить тему на данный момент."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been moved."
 msgid "Thread has been moved."
 msgstr "Тема была перемещена."
 msgstr "Тема была перемещена."
 
 
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "New category"
 msgid "New category"
 msgstr "Новая категория"
 msgstr "Новая категория"
 
 
@@ -2241,15 +2310,15 @@ msgstr "Активна"
 msgid "Disabled"
 msgid "Disabled"
 msgstr "Неактивна"
 msgstr "Неактивна"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Unsubscribe"
 msgid "Unsubscribe"
 msgstr "Отписаться "
 msgstr "Отписаться "
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe"
 msgid "Subscribe"
 msgstr "Подписаться"
 msgstr "Подписаться"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe with e-mail"
 msgid "Subscribe with e-mail"
 msgstr "Уведомлять по e-mail"
 msgstr "Уведомлять по e-mail"
 
 
@@ -2281,11 +2350,11 @@ msgstr "Последнее сообщение"
 msgid "Options"
 msgid "Options"
 msgstr "Настройки"
 msgstr "Настройки"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid "Add poll"
 msgid "Add poll"
 msgstr "Добавить опрос"
 msgstr "Добавить опрос"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid ""
 msgid ""
 "There is %(threads)s new or updated thread. Click this message to show it."
 "There is %(threads)s new or updated thread. Click this message to show it."
 msgid_plural ""
 msgid_plural ""
@@ -2308,7 +2377,7 @@ msgstr ""
 msgid "Change subscription"
 msgid "Change subscription"
 msgstr "Изменить подписку"
 msgstr "Изменить подписку"
 
 
-#: static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19
 msgid "Start thread"
 msgid "Start thread"
 msgstr "Новая тема"
 msgstr "Новая тема"
 
 
@@ -2388,7 +2457,7 @@ msgstr "Прикрепить темы локально"
 msgid "Unpin threads"
 msgid "Unpin threads"
 msgstr "Открепить темы"
 msgstr "Открепить темы"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Move threads"
 msgid "Move threads"
 msgstr "Переместить темы"
 msgstr "Переместить темы"
 
 
@@ -2424,7 +2493,7 @@ msgstr "Модерация тем"
 msgid "One or more threads could not be deleted:"
 msgid "One or more threads could not be deleted:"
 msgstr "Одна или более тем не могут быть удалены:"
 msgstr "Одна или более тем не могут быть удалены:"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You can't move threads because there are no categories you are allowed to "
 "You can't move threads because there are no categories you are allowed to "
 "move them to."
 "move them to."
@@ -2436,61 +2505,61 @@ msgid ""
 " to it."
 " to it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Selected threads were moved."
 msgid "Selected threads were moved."
 msgstr "Выбранные темы были перенесены."
 msgstr "Выбранные темы были перенесены."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You need permission to start threads in category to be able to move threads "
 "You need permission to start threads in category to be able to move threads "
 "to it."
 "to it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select all"
 msgid "Select all"
 msgstr "Выбрать всё"
 msgstr "Выбрать всё"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select none"
 msgid "Select none"
 msgstr "Ничего не выбрано"
 msgstr "Ничего не выбрано"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All"
 msgid "All"
 msgstr "Все"
 msgstr "Все"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All threads"
 msgid "All threads"
 msgstr "Все темы"
 msgstr "Все темы"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My"
 msgid "My"
 msgstr "Мои"
 msgstr "Мои"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My threads"
 msgid "My threads"
 msgstr "Мои темы"
 msgstr "Мои темы"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "New threads"
 msgid "New threads"
 msgstr "Новые темы"
 msgstr "Новые темы"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread"
 msgid "Unread"
 msgstr "Непрочитанные"
 msgstr "Непрочитанные"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread threads"
 msgid "Unread threads"
 msgstr "Непрочитанные темы"
 msgstr "Непрочитанные темы"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed"
 msgid "Subscribed"
 msgstr "Подписки"
 msgstr "Подписки"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed threads"
 msgid "Subscribed threads"
 msgstr "Подписаться на темы"
 msgstr "Подписаться на темы"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unapproved content"
 msgid "Unapproved content"
 msgstr "Не одобренное содержимое"
 msgstr "Не одобренное содержимое"
 
 
@@ -2506,7 +2575,8 @@ msgstr "Войдите или зарегистрируйтесь, чтобы у
 msgid "You have unread private threads!"
 msgid "You have unread private threads!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20 static/misago/js/misago.js:22
+#: static/misago/js/misago.js:20 static/misago/js/misago.js:21
+#: static/misago/js/misago.js:23
 msgid "Private threads"
 msgid "Private threads"
 msgstr "Приватные темы"
 msgstr "Приватные темы"
 
 
@@ -2514,67 +2584,67 @@ msgstr "Приватные темы"
 msgid "Are you sure you want to sign out?"
 msgid "Are you sure you want to sign out?"
 msgstr "Вы уверены что хотите выйти?"
 msgstr "Вы уверены что хотите выйти?"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "See your profile"
 msgid "See your profile"
 msgstr "Просмотреть профиль"
 msgstr "Просмотреть профиль"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change options"
 msgid "Change options"
 msgstr "Изменить настройки"
 msgstr "Изменить настройки"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change avatar"
 msgid "Change avatar"
 msgstr "Изменить аватар"
 msgstr "Изменить аватар"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Log out"
 msgid "Log out"
 msgstr "Выход"
 msgstr "Выход"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned until %(ban_expires)s"
 msgid "%(username)s is banned until %(ban_expires)s"
 msgstr "%(username)sзаблокирован до %(ban_expires)s"
 msgstr "%(username)sзаблокирован до %(ban_expires)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned"
 msgid "%(username)s is banned"
 msgstr "%(username)sзаблокирован"
 msgstr "%(username)sзаблокирован"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is hiding presence"
 msgid "%(username)s is hiding presence"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online (hidden)"
 msgid "%(username)s is online (hidden)"
 msgstr "%(username)sв сети (скрыто)"
 msgstr "%(username)sв сети (скрыто)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgstr "%(username)sбыл в сети %(last_click)s(скрыто)"
 msgstr "%(username)sбыл в сети %(last_click)s(скрыто)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online"
 msgid "%(username)s is online"
 msgstr "%(username)sв сети"
 msgstr "%(username)sв сети"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s"
 msgid "%(username)s was last seen %(last_click)s"
 msgstr "%(username)sбыл %(last_click)s"
 msgstr "%(username)sбыл %(last_click)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Banned"
 msgid "Banned"
 msgstr "Забанен"
 msgstr "Забанен"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online (hidden)"
 msgid "Online (hidden)"
 msgstr "В сети (скрыто)"
 msgstr "В сети (скрыто)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline (hidden)"
 msgid "Offline (hidden)"
 msgstr "Не в сети (скрыто)"
 msgstr "Не в сети (скрыто)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online"
 msgid "Online"
 msgstr "В сети"
 msgstr "В сети"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline"
 msgid "Offline"
 msgstr "Не в сети"
 msgstr "Не в сети"
 
 
@@ -2590,19 +2660,19 @@ msgstr[3] "%(followers)sпоследователей"
 msgid "No users have posted any new messages during last %(days)s days."
 msgid "No users have posted any new messages during last %(days)s days."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Rank"
 msgid "Rank"
 msgstr "Ранг"
 msgstr "Ранг"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Ranked posts"
 msgid "Ranked posts"
 msgstr "Рейтинг сообщений"
 msgstr "Рейтинг сообщений"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "Total posts"
 msgid "Total posts"
 msgstr "Всего сообщений"
 msgstr "Всего сообщений"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgstr[0] ""
 msgstr[0] ""
@@ -2638,25 +2708,25 @@ msgstr "да"
 msgid "no"
 msgid "no"
 msgstr "нет"
 msgstr "нет"
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid ""
 msgid ""
 "Private threads are threads which only those that started them and those "
 "Private threads are threads which only those that started them and those "
 "they have invited may see and participate in."
 "they have invited may see and participate in."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid "You aren't participating in any private threads."
 msgid "You aren't participating in any private threads."
 msgstr "Вы не участвуете ни в каких приватных темах."
 msgstr "Вы не участвуете ни в каких приватных темах."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Lost connection with application."
 msgid "Lost connection with application."
 msgstr "Потеряно соединение с приложением."
 msgstr "Потеряно соединение с приложением."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Action link is invalid."
 msgid "Action link is invalid."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Unknown error has occured."
 msgid "Unknown error has occured."
 msgstr "Произошла неизвестная ошибка."
 msgstr "Произошла неизвестная ошибка."
 
 
@@ -2694,15 +2764,23 @@ msgstr ""
 msgid "You don't have permission to perform this action."
 msgid "You don't have permission to perform this action."
 msgstr "У Вас нет прав для совершения этого действия."
 msgstr "У Вас нет прав для совершения этого действия."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "You are banned"
 msgid "You are banned"
 msgstr "Вы заблокированы"
 msgstr "Вы заблокированы"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "This field is required."
 msgid "This field is required."
 msgstr "Это поле обязательно."
 msgstr "Это поле обязательно."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
+msgid "You have to accept the terms of service."
+msgstr ""
+
+#: static/misago/js/misago.js:25
+msgid "You have to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at least %(limit_value)s character (it has "
 "Ensure this value has at least %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2714,7 +2792,7 @@ msgstr[1] ""
 msgstr[2] ""
 msgstr[2] ""
 msgstr[3] ""
 msgstr[3] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at most %(limit_value)s character (it has "
 "Ensure this value has at most %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2726,7 +2804,7 @@ msgstr[1] ""
 msgstr[2] ""
 msgstr[2] ""
 msgstr[3] ""
 msgstr[3] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username must be at least %(limit_value)s character long."
 msgid "Username must be at least %(limit_value)s character long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgstr[0] ""
 msgstr[0] ""
@@ -2734,7 +2812,7 @@ msgstr[1] ""
 msgstr[2] ""
 msgstr[2] ""
 msgstr[3] ""
 msgstr[3] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgstr[0] ""
 msgstr[0] ""
@@ -2742,11 +2820,11 @@ msgstr[1] ""
 msgstr[2] ""
 msgstr[2] ""
 msgstr[3] ""
 msgstr[3] ""
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username can only contain latin alphabet letters and digits."
 msgid "Username can only contain latin alphabet letters and digits."
 msgstr "Имя пользователя может содержать только латинские буквы и цифры."
 msgstr "Имя пользователя может содержать только латинские буквы и цифры."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid_plural ""
 msgid_plural ""
 "Valid password must be at least %(limit_value)s characters long."
 "Valid password must be at least %(limit_value)s characters long."

BIN
misago/locale/tr/LC_MESSAGES/django.mo


+ 726 - 303
misago/locale/tr/LC_MESSAGES/django.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-31 23:36+0000\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Yiğitcan Uçan <ucanyiit@gmail.com>, 2017\n"
 "Last-Translator: Yiğitcan Uçan <ucanyiit@gmail.com>, 2017\n"
 "Language-Team: Turkish (Turkey) (https://www.transifex.com/misago/teams/65369/tr_TR/)\n"
 "Language-Team: Turkish (Turkey) (https://www.transifex.com/misago/teams/65369/tr_TR/)\n"
@@ -25,7 +25,7 @@ msgstr ""
 msgid "Permissions"
 msgid "Permissions"
 msgstr "İzinler"
 msgstr "İzinler"
 
 
-#: acl/admin.py:33 users/forms/admin.py:414
+#: acl/admin.py:33 users/forms/admin.py:416
 msgid "User roles"
 msgid "User roles"
 msgstr "Kullanıcı rolleri"
 msgstr "Kullanıcı rolleri"
 
 
@@ -142,17 +142,17 @@ msgstr "Bir veya daha fazla öğe seçmeniz gerekiyor."
 msgid "Action is not allowed."
 msgid "Action is not allowed."
 msgstr "İşlem yapılmasına izin verilmiyor."
 msgstr "İşlem yapılmasına izin verilmiyor."
 
 
-#: admin/views/index.py:70
+#: admin/views/index.py:83
 #, python-format
 #, python-format
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgstr "Güncel olmayan:%(current)s! (en son:%(latest)s)"
 msgstr "Güncel olmayan:%(current)s! (en son:%(latest)s)"
 
 
-#: admin/views/index.py:78
+#: admin/views/index.py:91
 #, python-format
 #, python-format
 msgid "Up to date! (%(current)s)"
 msgid "Up to date! (%(current)s)"
 msgstr "Güncel! (%(current)s)"
 msgstr "Güncel! (%(current)s)"
 
 
-#: admin/views/index.py:87
+#: admin/views/index.py:100
 msgid "Failed to connect to GitHub API. Try again later."
 msgid "Failed to connect to GitHub API. Try again later."
 msgstr "GitHub API'ye bağlanti hatasi.Lütfen tekrar deneyin"
 msgstr "GitHub API'ye bağlanti hatasi.Lütfen tekrar deneyin"
 
 
@@ -171,11 +171,11 @@ msgstr "Kategori sıralaması"
 msgid "Category roles"
 msgid "Category roles"
 msgstr "bölüm rolleri"
 msgstr "bölüm rolleri"
 
 
-#: categories/forms.py:47 users/forms/admin.py:388
+#: categories/forms.py:47 users/forms/admin.py:390
 msgid "Name"
 msgid "Name"
 msgstr "İsim"
 msgstr "İsim"
 
 
-#: categories/forms.py:49 users/forms/admin.py:404
+#: categories/forms.py:49 users/forms/admin.py:406
 msgid "Description"
 msgid "Description"
 msgstr "Açıklama"
 msgstr "Açıklama"
 
 
@@ -183,7 +183,7 @@ msgstr "Açıklama"
 msgid "Optional description explaining category intented purpose."
 msgid "Optional description explaining category intented purpose."
 msgstr "bölüm beyan edilen isteğe bağlı açıklama."
 msgstr "bölüm beyan edilen isteğe bağlı açıklama."
 
 
-#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:421
+#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:423
 msgid "CSS class"
 msgid "CSS class"
 msgstr "CSS sınıfı"
 msgstr "CSS sınıfı"
 
 
@@ -201,7 +201,7 @@ msgstr "Kapalı bölüm"
 msgid "Only members with valid permissions can post in closed categories."
 msgid "Only members with valid permissions can post in closed categories."
 msgstr "Sadece geçerli izni olan üyeler kapalı kategorilerde ileti yapabilir."
 msgstr "Sadece geçerli izni olan üyeler kapalı kategorilerde ileti yapabilir."
 
 
-#: categories/forms.py:75 templates/misago/admin/index.html:83
+#: categories/forms.py:75 templates/misago/admin/index.html:110
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/profile/threads.html:8
 #: templates/misago/profile/threads.html:8
@@ -214,7 +214,7 @@ msgstr "Sadece geçerli izni olan üyeler kapalı kategorilerde ileti yapabilir.
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
-#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:89
+#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:97
 msgid "Threads"
 msgid "Threads"
 msgstr "Konular"
 msgstr "Konular"
 
 
@@ -524,7 +524,7 @@ msgstr "Kimlik doğrulama geçersiz."
 
 
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: templates/misago/admin/users/edit.html:78
 #: templates/misago/admin/users/edit.html:78
-#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:590
+#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:604
 msgid "Yes"
 msgid "Yes"
 msgstr "Evet"
 msgstr "Evet"
 
 
@@ -538,7 +538,7 @@ msgstr "Evet"
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
-#: users/forms/admin.py:591 users/models/user.py:145
+#: users/forms/admin.py:605 users/models/user.py:147
 msgid "No"
 msgid "No"
 msgstr "Hayır"
 msgstr "Hayır"
 
 
@@ -641,7 +641,72 @@ msgstr "Veri alfanümerik karakterler içermelidir."
 msgid "Value is too long."
 msgid "Value is too long."
 msgstr "Veri çok uzun."
 msgstr "Veri çok uzun."
 
 
+#: legal/admin.py:25 templates/misago/admin/users/edit.html:216
+msgid "Agreements"
+msgstr ""
+
+#: legal/api.py:18
+msgid "You have already accepted this agreement."
+msgstr ""
+
+#: legal/api.py:27
+msgid "You need to submit a valid choice."
+msgstr ""
+
+#: legal/forms.py:10 legal/forms.py:60
+#: templates/misago/admin/agreements/list.html:18
+#: templates/misago/admin/attachmenttypes/list.html:16
+#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:589
+msgid "Type"
+msgstr "Tür"
+
+#: legal/forms.py:12 templates/misago/admin/agreements/list.html:16
+#: templates/misago/admin/ranks/list.html:17
+msgid "Title"
+msgstr "Başlık"
+
+#: legal/forms.py:13
+msgid "Optional, leave empty for agreement to be named after its type."
+msgstr ""
+
+#: legal/forms.py:17
+msgid "Set as active for its type"
+msgstr ""
+
+#: legal/forms.py:19
+msgid ""
+"If other agreement is already active for this type, it will be unset and "
+"replaced with this one. Misago will ask users who didn't accept this "
+"agreement to do so before allowing them to continue using the site's "
+"features."
+msgstr ""
+
+#: legal/forms.py:27
+msgid "Link"
+msgstr ""
+
+#: legal/forms.py:28
+msgid "If your agreement is located on other page, enter here a link to it."
+msgstr ""
+
+#: legal/forms.py:32
+msgid "Text"
+msgstr ""
+
+#: legal/forms.py:33
+msgid "You can use Markdown syntax for rich text elements."
+msgstr ""
+
+#: legal/forms.py:46
+msgid "Please fill in agreement link or text."
+msgstr ""
+
+#: legal/forms.py:65
+msgid "Content"
+msgstr ""
+
 #: legal/migrations/0001_initial.py:16
 #: legal/migrations/0001_initial.py:16
+#: legal/migrations/0003_create_agreements_from_settings.py:57
 msgid "Legal information"
 msgid "Legal information"
 msgstr "Yasal bilgi"
 msgstr "Yasal bilgi"
 
 
@@ -689,7 +754,7 @@ msgstr ""
 msgid "Policy title"
 msgid "Policy title"
 msgstr "ilke başlığı"
 msgstr "ilke başlığı"
 
 
-#: legal/migrations/0001_initial.py:64 legal/views.py:46
+#: legal/migrations/0001_initial.py:64 legal/models.py:43
 #: templates/misago/footer.html:27
 #: templates/misago/footer.html:27
 msgid "Privacy policy"
 msgid "Privacy policy"
 msgstr "Gizlilik ilke"
 msgstr "Gizlilik ilke"
@@ -716,21 +781,85 @@ msgstr ""
 "biçimlendirme için kullanılabilir."
 "biçimlendirme için kullanılabilir."
 
 
 #: legal/migrations/0001_initial.py:105
 #: legal/migrations/0001_initial.py:105
+#: legal/migrations/0003_create_agreements_from_settings.py:62
 msgid "Footnote"
 msgid "Footnote"
 msgstr "Dipnote"
 msgstr "Dipnote"
 
 
 #: legal/migrations/0001_initial.py:106
 #: legal/migrations/0001_initial.py:106
+#: legal/migrations/0003_create_agreements_from_settings.py:63
 msgid "Short message displayed in forum footer."
 msgid "Short message displayed in forum footer."
 msgstr "Forum alt başlığında kısa ileti görüldü."
 msgstr "Forum alt başlığında kısa ileti görüldü."
 
 
 #: legal/migrations/0001_initial.py:107
 #: legal/migrations/0001_initial.py:107
+#: legal/migrations/0003_create_agreements_from_settings.py:64
 msgid "Forum footer"
 msgid "Forum footer"
 msgstr "Forum altbaşlığı"
 msgstr "Forum altbaşlığı"
 
 
-#: legal/views.py:65 templates/misago/footer.html:22
+#: legal/migrations/0003_create_agreements_from_settings.py:58
+msgid ""
+"Those settings allow you to set additional legal information for your forum."
+msgstr ""
+
+#: legal/models.py:42 templates/misago/footer.html:22
 msgid "Terms of service"
 msgid "Terms of service"
 msgstr "Servis koşullari"
 msgstr "Servis koşullari"
 
 
+#: legal/views/admin.py:17
+msgid "Requested agreement does not exist."
+msgstr ""
+
+#: legal/views/admin.py:29 threads/views/admin/attachments.py:24
+#: users/views/admin/bans.py:24 users/views/admin/datadownloads.py:20
+#: users/views/admin/users.py:56
+msgid "From newest"
+msgstr "En yeni gelen"
+
+#: legal/views/admin.py:30 threads/views/admin/attachments.py:25
+#: users/views/admin/bans.py:25 users/views/admin/datadownloads.py:21
+#: users/views/admin/users.py:57
+msgid "From oldest"
+msgstr "Eskilerden"
+
+#: legal/views/admin.py:33
+msgid "With agreements: 0"
+msgstr ""
+
+#: legal/views/admin.py:34
+msgid "Select agreements"
+msgstr ""
+
+#: legal/views/admin.py:38
+msgid "Delete agreements"
+msgstr ""
+
+#: legal/views/admin.py:39
+msgid "Are you sure you want to delete those agreements?"
+msgstr ""
+
+#: legal/views/admin.py:49
+msgid "Selected agreements have been deleted."
+msgstr ""
+
+#: legal/views/admin.py:53
+#, python-format
+msgid "New agreement \"%(title)s\" has been saved."
+msgstr ""
+
+#: legal/views/admin.py:63
+#, python-format
+msgid "Agreement \"%(title)s\" has been edited."
+msgstr ""
+
+#: legal/views/admin.py:77
+#, python-format
+msgid "Agreement \"%(title)s\" has been deleted."
+msgstr ""
+
+#: legal/views/admin.py:85
+#, python-format
+msgid "Agreement \"%(title)s\" has been set as active for type \"%(type)s\"."
+msgstr ""
+
 #: markup/finalise.py:22
 #: markup/finalise.py:22
 #, python-format
 #, python-format
 msgid "%(title)s has written:"
 msgid "%(title)s has written:"
@@ -740,15 +869,15 @@ msgstr "%(title)syazıldı:"
 msgid "Quoted message:"
 msgid "Quoted message:"
 msgstr "Alıntı ileti:"
 msgstr "Alıntı ileti:"
 
 
-#: project_template/project_name/settings.py:388
+#: project_template/project_name/settings.py:424
 msgid "Personal"
 msgid "Personal"
 msgstr "Personal"
 msgstr "Personal"
 
 
-#: project_template/project_name/settings.py:397
+#: project_template/project_name/settings.py:433
 msgid "Contact"
 msgid "Contact"
 msgstr "Temas kur"
 msgstr "Temas kur"
 
 
-#: project_template/project_name/settings.py:405 users/models/ban.py:76
+#: project_template/project_name/settings.py:441 users/models/ban.py:76
 msgid "IP address"
 msgid "IP address"
 msgstr "IP adres"
 msgstr "IP adres"
 
 
@@ -856,6 +985,98 @@ msgstr "Aktivasyon başarısız oldu"
 msgid "Your account can't be activated at this time."
 msgid "Your account can't be activated at this time."
 msgstr "Hesabın şuan aktive edilemiyor."
 msgstr "Hesabın şuan aktive edilemiyor."
 
 
+#: templates/misago/admin/agreements/form.html:9
+#: templates/misago/admin/agreements/form.html:18
+#: templates/misago/admin/agreements/form.html:28
+#: templates/misago/admin/agreements/list.html:9
+msgid "New agreement"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:43
+#: templates/misago/admin/categoryroles/form.html:43
+#: templates/misago/admin/roles/form.html:43
+msgid "Basic settings"
+msgstr "Temel ayarlar"
+
+#: templates/misago/admin/agreements/form.html:51
+msgid "Agreement contents"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:54
+msgid "Fill in one of the fields."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:19
+msgid "Created"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:20
+msgid "Modified"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:33
+#, python-format
+msgid "Active %(type)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:52
+#, python-format
+msgid "%(created_on)s by %(created_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:68
+#, python-format
+msgid "%(last_modified_on)s by %(last_modified_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:72
+msgid "never"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:78
+msgid "Set as active"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:88
+#: templates/misago/admin/attachmenttypes/list.html:54
+#: templates/misago/admin/bans/list.html:55
+#: templates/misago/admin/categories/list.html:66
+#: templates/misago/admin/categoryroles/list.html:27
+#: templates/misago/admin/ranks/list.html:99
+#: templates/misago/admin/roles/list.html:43
+#: templates/misago/admin/warnings/list.html:109
+#: templates/misago/poll/results.html:69
+#: templates/misago/profile/details.html:24
+#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
+msgid "Edit"
+msgstr "Düzenle"
+
+#: templates/misago/admin/agreements/list.html:94
+#: templates/misago/admin/bans/list.html:61
+msgid "Remove"
+msgstr "Kaldır"
+
+#: templates/misago/admin/agreements/list.html:106
+msgid "No agreements matching search criteria have been found"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:108
+msgid "No agreements are currently set."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:119
+msgid "Are you sure you want to set this agreement as active for its type?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:124
+msgid "Are you sure you want to delete this agreement?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:133
+#: templates/misago/admin/bans/list.html:95
+msgid "Search bans"
+msgstr "Banlari ara"
+
 #: templates/misago/admin/attachments/list.html:7
 #: templates/misago/admin/attachments/list.html:7
 msgid "Attachment"
 msgid "Attachment"
 msgstr "Ek"
 msgstr "Ek"
@@ -866,12 +1087,8 @@ msgstr "konu"
 
 
 #: templates/misago/admin/attachments/list.html:42
 #: templates/misago/admin/attachments/list.html:42
 #, python-format
 #, python-format
-msgid ""
-"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s from "
-"%(uploader_ip)s."
+msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s."
 msgstr ""
 msgstr ""
-"%(filetype)s,%(size)s,%(uploader)s tarafından "
-"yüklendi%(uploaded_on)sitibaren%(uploader_ip)s"
 
 
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachmenttypes/list.html:47
 #: templates/misago/admin/attachmenttypes/list.html:47
@@ -921,11 +1138,6 @@ msgstr "Temel seçenekler"
 msgid "Availability"
 msgid "Availability"
 msgstr "Geçerlilik"
 msgstr "Geçerlilik"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:16
-#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:575
-msgid "Type"
-msgstr "Tür"
-
 #: templates/misago/admin/attachmenttypes/list.html:17
 #: templates/misago/admin/attachmenttypes/list.html:17
 msgid "Extensions"
 msgid "Extensions"
 msgstr "Uzatma"
 msgstr "Uzatma"
@@ -938,19 +1150,6 @@ msgstr "Mime türleri"
 msgid "Files"
 msgid "Files"
 msgstr "Dosya"
 msgstr "Dosya"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:54
-#: templates/misago/admin/bans/list.html:55
-#: templates/misago/admin/categories/list.html:66
-#: templates/misago/admin/categoryroles/list.html:27
-#: templates/misago/admin/ranks/list.html:99
-#: templates/misago/admin/roles/list.html:43
-#: templates/misago/admin/warnings/list.html:109
-#: templates/misago/poll/results.html:69
-#: templates/misago/profile/details.html:24
-#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
-msgid "Edit"
-msgstr "Düzenle"
-
 #: templates/misago/admin/attachmenttypes/list.html:71
 #: templates/misago/admin/attachmenttypes/list.html:71
 msgid "No attachment types are currently defined."
 msgid "No attachment types are currently defined."
 msgstr "Hiç bir ek tür tanimlanamadi."
 msgstr "Hiç bir ek tür tanimlanamadi."
@@ -967,12 +1166,12 @@ msgid "New ban"
 msgstr "Yeni Yasaklamak"
 msgstr "Yeni Yasaklamak"
 
 
 #: templates/misago/admin/bans/form.html:43
 #: templates/misago/admin/bans/form.html:43
-#: templates/misago/admin/users/ban.html:53
+#: templates/misago/admin/users/ban.html:57
 msgid "Ban settings"
 msgid "Ban settings"
 msgstr "Yasaklamak ayarları"
 msgstr "Yasaklamak ayarları"
 
 
 #: templates/misago/admin/bans/form.html:52
 #: templates/misago/admin/bans/form.html:52
-#: templates/misago/admin/users/ban.html:60
+#: templates/misago/admin/users/ban.html:64
 msgid "Messages"
 msgid "Messages"
 msgstr "Mesajlar"
 msgstr "Mesajlar"
 
 
@@ -980,8 +1179,8 @@ msgstr "Mesajlar"
 msgid "Ban"
 msgid "Ban"
 msgstr "Yasaklamak"
 msgstr "Yasaklamak"
 
 
-#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:493
-#: users/forms/admin.py:546
+#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:488
+#: users/forms/admin.py:560
 msgid "Expires on"
 msgid "Expires on"
 msgstr "Bitiş süresi"
 msgstr "Bitiş süresi"
 
 
@@ -994,10 +1193,6 @@ msgstr "%(check_type)s,yanlızca kayıt"
 msgid "Never"
 msgid "Never"
 msgstr "Asla"
 msgstr "Asla"
 
 
-#: templates/misago/admin/bans/list.html:61
-msgid "Remove"
-msgstr "Kaldır"
-
 #: templates/misago/admin/bans/list.html:73
 #: templates/misago/admin/bans/list.html:73
 msgid "No bans matching search criteria have been found"
 msgid "No bans matching search criteria have been found"
 msgstr "Arama kıriterlerine uyuşan hiç bir ban bulunamadı"
 msgstr "Arama kıriterlerine uyuşan hiç bir ban bulunamadı"
@@ -1010,10 +1205,6 @@ msgstr "Şuan hiç bir ban uygulanamadi."
 msgid "Are you sure you want to remove this ban?"
 msgid "Are you sure you want to remove this ban?"
 msgstr "Bu Yasaklamak silmek istediğine emin misiniz?"
 msgstr "Bu Yasaklamak silmek istediğine emin misiniz?"
 
 
-#: templates/misago/admin/bans/list.html:95
-msgid "Search bans"
-msgstr "Banlari ara"
-
 #: templates/misago/admin/base_thin.html:8
 #: templates/misago/admin/base_thin.html:8
 msgid "Misago Administration"
 msgid "Misago Administration"
 msgstr "Misago Yönetimi"
 msgstr "Misago Yönetimi"
@@ -1145,11 +1336,6 @@ msgstr "Değişikliklerden vazgeçmek istiyor musun?"
 msgid "New role"
 msgid "New role"
 msgstr "Yeni sıfat"
 msgstr "Yeni sıfat"
 
 
-#: templates/misago/admin/categoryroles/form.html:43
-#: templates/misago/admin/roles/form.html:43
-msgid "Basic settings"
-msgstr "Temel ayarlar"
-
 #: templates/misago/admin/categoryroles/list.html:16
 #: templates/misago/admin/categoryroles/list.html:16
 msgid "Category role"
 msgid "Category role"
 msgstr "bölüm sıfat"
 msgstr "bölüm sıfat"
@@ -1186,6 +1372,61 @@ msgstr ""
 msgid "Change settings"
 msgid "Change settings"
 msgstr "Ayarları değiştir"
 msgstr "Ayarları değiştir"
 
 
+#: templates/misago/admin/datadownloads/form.html:6
+#: templates/misago/admin/datadownloads/form.html:11
+#: templates/misago/admin/datadownloads/form.html:17
+msgid "Request new data downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:9
+msgid "Request new downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:17
+#: templates/misago/admin/users/list.html:17 users/forms/admin.py:696
+msgid "User"
+msgstr "Kullanici"
+
+#: templates/misago/admin/datadownloads/list.html:18 threads/forms.py:56
+#: users/forms/admin.py:691
+msgid "Status"
+msgstr "durum"
+
+#: templates/misago/admin/datadownloads/list.html:19
+msgid "Requested on"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:21 users/forms/admin.py:700
+msgid "Requested by"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:32
+#: templates/misago/admin/datadownloads/list.html:49
+#: templates/misago/admin/datadownloads/list.html:52
+#: templates/misago/admin/users/ban.html:35
+#: templates/misago/admin/users/edit.html:113
+#: templates/misago/admin/users/list.html:35
+#: templates/misago/userslists/active_posters.html:66
+msgid "Avatar"
+msgstr "Avatar"
+
+#: templates/misago/admin/datadownloads/list.html:73
+#: templates/misago/emails/data_download.html:11 users/apps.py:50
+msgid "Download data"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:84
+msgid "No data downloads matching search criteria have been found."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:86
+msgid "No data downloads exist at the moment."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:93
+msgid "Search data downloads"
+msgstr ""
+
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 msgid "Page not available"
 msgid "Page not available"
@@ -1340,44 +1581,73 @@ msgstr "Son"
 msgid "Administration Home"
 msgid "Administration Home"
 msgstr "Yönetici evi"
 msgstr "Yönetici evi"
 
 
-#: templates/misago/admin/index.html:33
+#: templates/misago/admin/index.html:22
+msgid "System checks"
+msgstr ""
+
+#: templates/misago/admin/index.html:26
+msgid "MISAGO_ADDRESS setting appears to be correct."
+msgstr ""
+
+#: templates/misago/admin/index.html:30
+msgid "The settings.py value for MISAGO_ADDRESS appears to be incorrect."
+msgstr ""
+
+#: templates/misago/admin/index.html:38
+#, python-format
+msgid ""
+"Your MISAGO_ADDRESS is set to %(configured_address)s while correct value "
+"appears to be %(correct_address)s."
+msgstr ""
+
+#: templates/misago/admin/index.html:42 templates/misago/admin/index.html:47
+msgid ""
+"Misago uses this setting to build correct links in e-mails sent to site "
+"users."
+msgstr ""
+
+#: templates/misago/admin/index.html:46
+msgid "The settings.py is missing MISAGO_ADDRESS value."
+msgstr ""
+
+#: templates/misago/admin/index.html:60
 msgid "Misago version"
 msgid "Misago version"
 msgstr "Misago sürümü"
 msgstr "Misago sürümü"
 
 
-#: templates/misago/admin/index.html:56
+#: templates/misago/admin/index.html:83
 msgid "Check version"
 msgid "Check version"
 msgstr "Sürümü kontrol et"
 msgstr "Sürümü kontrol et"
 
 
-#: templates/misago/admin/index.html:62
+#: templates/misago/admin/index.html:89
 msgid "This feature requires \"packaging\" python module."
 msgid "This feature requires \"packaging\" python module."
 msgstr "Bu özellik \"paketleme\" python modülünü gerektirir."
 msgstr "Bu özellik \"paketleme\" python modülünü gerektirir."
 
 
-#: templates/misago/admin/index.html:76
+#: templates/misago/admin/index.html:103
 msgid "DB Contents"
 msgid "DB Contents"
 msgstr "DB içerikleri"
 msgstr "DB içerikleri"
 
 
-#: templates/misago/admin/index.html:87
+#: templates/misago/admin/index.html:114
 #: templates/misago/admin/users/delete.html:36
 #: templates/misago/admin/users/delete.html:36
-#: templates/misago/admin/users/list.html:23
+#: templates/misago/admin/users/list.html:24
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: threads/migrations/0002_threads_settings.py:48
 #: threads/migrations/0002_threads_settings.py:48
-#: threads/migrations/0004_update_settings.py:48 users/apps.py:83
+#: threads/migrations/0004_update_settings.py:48 users/apps.py:91
 msgid "Posts"
 msgid "Posts"
 msgstr "iletiler"
 msgstr "iletiler"
 
 
-#: templates/misago/admin/index.html:91 templates/misago/navbar.html:40
+#: templates/misago/admin/index.html:118 templates/misago/navbar.html:40
 #: templates/misago/userslists/base.html:5
 #: templates/misago/userslists/base.html:5
-#: templates/misago/userslists/base.html:14 users/admin.py:70
+#: templates/misago/userslists/base.html:14 users/admin.py:80
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 msgid "Users"
 msgid "Users"
 msgstr "Kullanicilar"
 msgstr "Kullanicilar"
 
 
-#: templates/misago/admin/index.html:96
+#: templates/misago/admin/index.html:123
 msgid "Inactive users"
 msgid "Inactive users"
 msgstr "Aktif olmayan kullanicilar"
 msgstr "Aktif olmayan kullanicilar"
 
 
-#: templates/misago/admin/index.html:122
+#: templates/misago/admin/index.html:149
 msgid "Checking..."
 msgid "Checking..."
 msgstr "Kontrol ediliyor..."
 msgstr "Kontrol ediliyor..."
 
 
@@ -1405,7 +1675,7 @@ msgstr "Lütfen sonra tekrar deneyin"
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Kullanıcı adi ve ya e-mail"
 msgstr "Kullanıcı adi ve ya e-mail"
 
 
-#: templates/misago/admin/login.html:62 users/forms/admin.py:60
+#: templates/misago/admin/login.html:62 users/forms/admin.py:62
 #: users/forms/auth.py:59
 #: users/forms/auth.py:59
 msgid "Password"
 msgid "Password"
 msgstr "Şifre"
 msgstr "Şifre"
@@ -1450,17 +1720,13 @@ msgid "Display and visibility"
 msgstr "Görüntülenme ve görünürlük"
 msgstr "Görüntülenme ve görünürlük"
 
 
 #: templates/misago/admin/ranks/list.html:16
 #: templates/misago/admin/ranks/list.html:16
-#: templates/misago/admin/users/list.html:21
+#: templates/misago/admin/users/list.html:22
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:106
 #: templates/misago/userslists/active_posters.html:106
-#: users/forms/admin.py:236
+#: users/forms/admin.py:238
 msgid "Rank"
 msgid "Rank"
 msgstr "Rütbe"
 msgstr "Rütbe"
 
 
-#: templates/misago/admin/ranks/list.html:17
-msgid "Title"
-msgstr "Başlık"
-
 #: templates/misago/admin/ranks/list.html:18
 #: templates/misago/admin/ranks/list.html:18
 msgid "Special"
 msgid "Special"
 msgstr "Özel"
 msgstr "Özel"
@@ -1502,7 +1768,7 @@ msgid "No user roles are currently defined."
 msgstr "Hiç bir kullanici rolü tanimlanamadi."
 msgstr "Hiç bir kullanici rolü tanimlanamadi."
 
 
 #: templates/misago/admin/users/ban.html:6
 #: templates/misago/admin/users/ban.html:6
-#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:72
+#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:73
 msgid "Ban users"
 msgid "Ban users"
 msgstr "Yasaklamak  kullanicilar"
 msgstr "Yasaklamak  kullanicilar"
 
 
@@ -1510,14 +1776,11 @@ msgstr "Yasaklamak  kullanicilar"
 msgid "Ban selected users:"
 msgid "Ban selected users:"
 msgstr "Seçilmiş kullanicilari Yasaklamak :"
 msgstr "Seçilmiş kullanicilari Yasaklamak :"
 
 
-#: templates/misago/admin/users/ban.html:35
-#: templates/misago/admin/users/edit.html:113
-#: templates/misago/admin/users/list.html:34
-#: templates/misago/userslists/active_posters.html:66
-msgid "Avatar"
-msgstr "Avatar"
+#: templates/misago/admin/users/ban.html:48
+msgid "IP not available"
+msgstr ""
 
 
-#: templates/misago/admin/users/ban.html:72
+#: templates/misago/admin/users/ban.html:76
 msgid "Set bans"
 msgid "Set bans"
 msgstr "Banlari kur"
 msgstr "Banlari kur"
 
 
@@ -1613,6 +1876,18 @@ msgstr ""
 msgid "No staff message is available."
 msgid "No staff message is available."
 msgstr "Hiç bir personel ileti mevcut değil."
 msgstr "Hiç bir personel ileti mevcut değil."
 
 
+#: templates/misago/admin/users/edit.html:220
+msgid "Agreement"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:221
+msgid "Accepted on"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:239
+msgid "This user didn't accept any agreements."
+msgstr ""
+
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:11
 #: templates/misago/admin/users/new.html:11
@@ -1620,51 +1895,55 @@ msgstr "Hiç bir personel ileti mevcut değil."
 msgid "New user"
 msgid "New user"
 msgstr "Yeni kullanici"
 msgstr "Yeni kullanici"
 
 
-#: templates/misago/admin/users/list.html:17
-msgid "User"
-msgstr "Kullanici"
-
-#: templates/misago/admin/users/list.html:20
+#: templates/misago/admin/users/list.html:20 users/signals.py:30
 msgid "E-mail"
 msgid "E-mail"
 msgstr "E-mail"
 msgstr "E-mail"
 
 
-#: templates/misago/admin/users/list.html:22
+#: templates/misago/admin/users/list.html:21
+msgid "IP Address"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:23
 msgid "Joined"
 msgid "Joined"
 msgstr "Katildi"
 msgstr "Katildi"
 
 
-#: templates/misago/admin/users/list.html:39
+#: templates/misago/admin/users/list.html:40
 msgid "Is deleting their account"
 msgid "Is deleting their account"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:43
+#: templates/misago/admin/users/list.html:44
 msgid "Is disabled by administrator"
 msgid "Is disabled by administrator"
 msgstr "Admin tarafından devre dışı bırakıldı"
 msgstr "Admin tarafından devre dışı bırakıldı"
 
 
-#: templates/misago/admin/users/list.html:54
+#: templates/misago/admin/users/list.html:55
 msgid "Requires activation by administrator"
 msgid "Requires activation by administrator"
 msgstr "Admin aktivasyonu gerekiyor"
 msgstr "Admin aktivasyonu gerekiyor"
 
 
-#: templates/misago/admin/users/list.html:56
+#: templates/misago/admin/users/list.html:57
 msgid "Has to activate account"
 msgid "Has to activate account"
 msgstr "Hesabın onaylanması gerek"
 msgstr "Hesabın onaylanması gerek"
 
 
-#: templates/misago/admin/users/list.html:63
+#: templates/misago/admin/users/list.html:64
 msgid "Super administrator"
 msgid "Super administrator"
 msgstr "Süper admin"
 msgstr "Süper admin"
 
 
-#: templates/misago/admin/users/list.html:65
+#: templates/misago/admin/users/list.html:66
 msgid "Administrator"
 msgid "Administrator"
 msgstr "Admin"
 msgstr "Admin"
 
 
-#: templates/misago/admin/users/list.html:90
+#: templates/misago/admin/users/list.html:78
+msgid "IP removed"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:98
 msgid "Edit user"
 msgid "Edit user"
 msgstr "Kullanıcı düzenle"
 msgstr "Kullanıcı düzenle"
 
 
-#: templates/misago/admin/users/list.html:99
+#: templates/misago/admin/users/list.html:107
 msgid "No users matching search criteria have been found."
 msgid "No users matching search criteria have been found."
 msgstr "Aranan kriterde hiç bir kullanıcı bulunamadı."
 msgstr "Aranan kriterde hiç bir kullanıcı bulunamadı."
 
 
-#: templates/misago/admin/users/list.html:105
+#: templates/misago/admin/users/list.html:113
 msgid "Search users"
 msgid "Search users"
 msgstr "Kullanıcı ara"
 msgstr "Kullanıcı ara"
 
 
@@ -1877,6 +2156,30 @@ msgstr "Hesap şifrenizi değiştirmek için aşağıdaki bağlantıyı tıklay
 msgid "Set new password"
 msgid "Set new password"
 msgstr "Yeni şifre ayarla"
 msgstr "Yeni şifre ayarla"
 
 
+#: templates/misago/emails/data_download.html:6
+#: templates/misago/emails/data_download.txt:6
+#, python-format
+msgid ""
+"%(user)s, you are receiving this message because your data is ready for "
+"download."
+msgstr ""
+
+#: templates/misago/emails/data_download.html:14
+#: templates/misago/emails/data_download.txt:15
+#, python-format
+msgid ""
+"This link will remain active for %(expires_in)s hour from the time this "
+"message has been sent."
+msgid_plural ""
+"This link will remain active for %(expires_in)s hours from the time this "
+"message has been sent."
+msgstr[0] ""
+msgstr[1] ""
+
+#: templates/misago/emails/data_download.txt:10
+msgid "To download your data, click the following link:"
+msgstr ""
+
 #: templates/misago/emails/privatethread/added.html:9
 #: templates/misago/emails/privatethread/added.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
@@ -1980,11 +2283,9 @@ msgstr ""
 #: templates/misago/emails/thread/reply.html:9
 #: templates/misago/emails/thread/reply.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread %(thread)s that you are subscribed to."
 "the thread %(thread)s that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s, bu ileti Alıyorsunuz, çünkü %(poster)s ,  konu abone olduğunuz "
-"konu %(thread)s yanıt verdi."
 
 
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.txt:10
 #: templates/misago/emails/thread/reply.txt:10
@@ -1998,11 +2299,9 @@ msgstr "Cevabına git"
 #: templates/misago/emails/thread/reply.txt:6
 #: templates/misago/emails/thread/reply.txt:6
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread \"%(thread)s\" that you are subscribed to."
 "the thread \"%(thread)s\" that you are subscribed to."
 msgstr ""
 msgstr ""
-"%(user)s,%(poster)s, \"%(thread)s\" konu abone olduğunuzdan konu yanıtladığı"
-" için bu ileti alıyorsunuz."
 
 
 #: templates/misago/errorpages/403.html:40
 #: templates/misago/errorpages/403.html:40
 msgid "This page is not available."
 msgid "This page is not available."
@@ -2246,7 +2545,7 @@ msgstr "Sonuçlara bak"
 
 
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:8
 #: templates/misago/profile/ban_details.html:8
-#: templates/misago/profile/ban_details.html:15 users/apps.py:120
+#: templates/misago/profile/ban_details.html:15 users/apps.py:128
 msgid "Ban details"
 msgid "Ban details"
 msgstr "Yasaklamak ayrıntıları"
 msgstr "Yasaklamak ayrıntıları"
 
 
@@ -2293,7 +2592,7 @@ msgstr[1] "%(threads)s dizilerini başlattı."
 
 
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:8
 #: templates/misago/profile/details.html:8
-#: templates/misago/profile/details.html:18 users/apps.py:107
+#: templates/misago/profile/details.html:18 users/apps.py:115
 msgid "Details"
 msgid "Details"
 msgstr "ayrıntılar"
 msgstr "ayrıntılar"
 
 
@@ -2321,7 +2620,7 @@ msgid "This error is caused by invalid post content manipulation."
 msgstr "Bu hata, geçersiz ileti içeriği manipülasyonundan kaynaklanmaktadır."
 msgstr "Bu hata, geçersiz ileti içeriği manipülasyonundan kaynaklanmaktadır."
 
 
 #: templates/misago/profile/followers.html:5
 #: templates/misago/profile/followers.html:5
-#: templates/misago/profile/followers.html:8 users/apps.py:95
+#: templates/misago/profile/followers.html:8 users/apps.py:103
 msgid "Followers"
 msgid "Followers"
 msgstr "Takipçiler"
 msgstr "Takipçiler"
 
 
@@ -2349,7 +2648,7 @@ msgid "%(username)s has no followers."
 msgstr "%(username)sTakipçisi yok."
 msgstr "%(username)sTakipçisi yok."
 
 
 #: templates/misago/profile/follows.html:5
 #: templates/misago/profile/follows.html:5
-#: templates/misago/profile/follows.html:8 users/apps.py:101
+#: templates/misago/profile/follows.html:8 users/apps.py:109
 msgid "Follows"
 msgid "Follows"
 msgstr "Şöyledir"
 msgstr "Şöyledir"
 
 
@@ -2436,7 +2735,7 @@ msgid "%(username)s started no threads."
 msgstr "%(username)sKonu başlatılmamış."
 msgstr "%(username)sKonu başlatılmamış."
 
 
 #: templates/misago/profile/username_history.html:5
 #: templates/misago/profile/username_history.html:5
-#: templates/misago/profile/username_history.html:8 users/apps.py:113
+#: templates/misago/profile/username_history.html:8 users/apps.py:121
 msgid "Username history"
 msgid "Username history"
 msgstr "Kullanıcı adı geçmişi"
 msgstr "Kullanıcı adı geçmişi"
 
 
@@ -2463,6 +2762,20 @@ msgstr "Kullanıcı adınız hiçbir zaman değiştirilmedi."
 msgid "%(username)s's username was never changed."
 msgid "%(username)s's username was never changed."
 msgstr "%(username)skullanıcının adı hiç değişmedi."
 msgstr "%(username)skullanıcının adı hiç değişmedi."
 
 
+#: templates/misago/required_agreement.html:9
+#, python-format
+msgid "Please review the updated %(agreement)s:"
+msgstr ""
+
+#: templates/misago/required_agreement.html:19
+msgid "here"
+msgstr ""
+
+#: templates/misago/required_agreement.html:21
+#, python-format
+msgid "Please review the updated %(agreement)s available %(link)s."
+msgstr ""
+
 #: templates/misago/search.html:5 templates/misago/search.html:8
 #: templates/misago/search.html:5 templates/misago/search.html:8
 msgid "Search site"
 msgid "Search site"
 msgstr "Arama sitesi"
 msgstr "Arama sitesi"
@@ -2579,10 +2892,6 @@ msgstr " %(hidden_by)starafından gizlendi%(hidden_on)s"
 msgid "By %(event_by)s on %(event_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgstr "%(event_by)s tarafından %(event_on)s"
 msgstr "%(event_by)s tarafından %(event_on)s"
 
 
-#: templates/misago/thread/posts/event/info.html:34
-msgid "IP recorded"
-msgstr "IP kaydedildi"
-
 #: templates/misago/thread/posts/post/attachments.html:33
 #: templates/misago/thread/posts/post/attachments.html:33
 #, python-format
 #, python-format
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
@@ -2869,11 +3178,11 @@ msgstr "Ekler"
 msgid "Attachment types"
 msgid "Attachment types"
 msgstr "Ataşman tipleri"
 msgstr "Ataşman tipleri"
 
 
-#: threads/api/attachments.py:19
+#: threads/api/attachments.py:20
 msgid "You don't have permission to upload new files."
 msgid "You don't have permission to upload new files."
 msgstr "Yeni dosya yüklemek için izniniz yok."
 msgstr "Yeni dosya yüklemek için izniniz yok."
 
 
-#: threads/api/attachments.py:29
+#: threads/api/attachments.py:30
 msgid "No file has been uploaded."
 msgid "No file has been uploaded."
 msgstr "Hiçbir dosya yüklenmedi."
 msgstr "Hiçbir dosya yüklenmedi."
 
 
@@ -2881,11 +3190,11 @@ msgstr "Hiçbir dosya yüklenmedi."
 msgid "Uploaded image was corrupted or invalid."
 msgid "Uploaded image was corrupted or invalid."
 msgstr "Yüklenen resim bozuk veya geçersiz."
 msgstr "Yüklenen resim bozuk veya geçersiz."
 
 
-#: threads/api/attachments.py:81
+#: threads/api/attachments.py:83
 msgid "You can't upload files of this type."
 msgid "You can't upload files of this type."
 msgstr "Bu tür dosyalar yükleyemezsiniz."
 msgstr "Bu tür dosyalar yükleyemezsiniz."
 
 
-#: threads/api/attachments.py:86
+#: threads/api/attachments.py:88
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
@@ -2893,7 +3202,7 @@ msgstr ""
 "%(limit)s daha büyük dosyaları karşıya yükleyemezsiniz "
 "%(limit)s daha büyük dosyaları karşıya yükleyemezsiniz "
 "(dosyanızın%(upload)sye sahip olduğu)."
 "(dosyanızın%(upload)sye sahip olduğu)."
 
 
-#: threads/api/attachments.py:96
+#: threads/api/attachments.py:98
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files of this type larger than %(limit)s (your file has "
 "You can't upload files of this type larger than %(limit)s (your file has "
@@ -2902,7 +3211,7 @@ msgstr ""
 "Bu türe%(limit)sden büyük dosya yükleyemezsiniz (dosyanızın%(upload)sye "
 "Bu türe%(limit)sden büyük dosya yükleyemezsiniz (dosyanızın%(upload)sye "
 "sahip olduğu)."
 "sahip olduğu)."
 
 
-#: threads/api/postendpoints/edits.py:89
+#: threads/api/postendpoints/edits.py:88
 msgid "Edits record is unavailable for this post."
 msgid "Edits record is unavailable for this post."
 msgstr "Bu ileti için düzenleme kayıtları kullanılamıyor."
 msgstr "Bu ileti için düzenleme kayıtları kullanılamıyor."
 
 
@@ -2918,12 +3227,12 @@ msgstr "Bu konu daki iletiler taşıyamazsınız."
 msgid "You can't like posts in this category."
 msgid "You can't like posts in this category."
 msgstr "Bu bölüm iletiler beğenemezsin."
 msgstr "Bu bölüm iletiler beğenemezsin."
 
 
-#: threads/api/postendpoints/patch_post.py:108
+#: threads/api/postendpoints/patch_post.py:107
 #: threads/api/threadendpoints/patch.py:130
 #: threads/api/threadendpoints/patch.py:130
 msgid "Content approval can't be reversed."
 msgid "Content approval can't be reversed."
 msgstr "İçerik onayı tersine çevrilebilir."
 msgstr "İçerik onayı tersine çevrilebilir."
 
 
-#: threads/api/postendpoints/patch_post.py:186
+#: threads/api/postendpoints/patch_post.py:185
 msgid "One or more posts to update could not be found."
 msgid "One or more posts to update could not be found."
 msgstr "Güncelleştirilecek bir veya daha fazla iletiler bulunamadı."
 msgstr "Güncelleştirilecek bir veya daha fazla iletiler bulunamadı."
 
 
@@ -2936,7 +3245,7 @@ msgstr "Bu konu dan gelen iletiler bölemezsiniz."
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgstr "%(attachment)s eki kaldırma izniniz yok."
 msgstr "%(attachment)s eki kaldırma izniniz yok."
 
 
-#: threads/api/postingendpoint/attachments.py:128
+#: threads/api/postingendpoint/attachments.py:127
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't attach more than %(limit_value)s file to single post (added "
 "You can't attach more than %(limit_value)s file to single post (added "
@@ -3018,11 +3327,11 @@ msgstr[1] ""
 msgid "One or more users could not be found: %(usernames)s"
 msgid "One or more users could not be found: %(usernames)s"
 msgstr "Bir veya daha fazla kullanıcı bulunamadı:%(usernames)s"
 msgstr "Bir veya daha fazla kullanıcı bulunamadı:%(usernames)s"
 
 
-#: threads/api/postingendpoint/reply.py:81 threads/validators.py:80
+#: threads/api/postingendpoint/reply.py:83 threads/validators.py:80
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Bir ileti girmeniz gerekiyor."
 msgstr "Bir ileti girmeniz gerekiyor."
 
 
-#: threads/api/postingendpoint/reply.py:103 threads/validators.py:41
+#: threads/api/postingendpoint/reply.py:105 threads/validators.py:41
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Konu başlığını girmeniz gerekiyor."
 msgstr "Konu başlığını girmeniz gerekiyor."
 
 
@@ -3102,7 +3411,7 @@ msgstr "Bu kullanıcı zaten konu sahibi."
 msgid "One or more threads to update could not be found."
 msgid "One or more threads to update could not be found."
 msgstr "Güncelleştirilecek bir veya daha fazla konu bulunamadı."
 msgstr "Güncelleştirilecek bir veya daha fazla konu bulunamadı."
 
 
-#: threads/api/threadpoll.py:53
+#: threads/api/threadpoll.py:54
 msgid "There's already a poll in this thread."
 msgid "There's already a poll in this thread."
 msgstr "Bu konu daki bir anket zaten var."
 msgstr "Bu konu daki bir anket zaten var."
 
 
@@ -3138,7 +3447,7 @@ msgstr "Dosya adı içeriyor"
 msgid "File type"
 msgid "File type"
 msgstr "Dosya tipi"
 msgstr "Dosya tipi"
 
 
-#: threads/forms.py:24 users/forms/admin.py:595
+#: threads/forms.py:24 users/forms/admin.py:609
 msgid "State"
 msgid "State"
 msgstr "Belirtmek, bildirmek"
 msgstr "Belirtmek, bildirmek"
 
 
@@ -3162,10 +3471,6 @@ msgstr "Dosya uzantıları"
 msgid "Maximum allowed uploaded file size"
 msgid "Maximum allowed uploaded file size"
 msgstr "Maksimum izin verilen karşıya yüklenen dosya boyutu"
 msgstr "Maksimum izin verilen karşıya yüklenen dosya boyutu"
 
 
-#: threads/forms.py:56
-msgid "Status"
-msgstr "durum"
-
 #: threads/forms.py:57
 #: threads/forms.py:57
 msgid "Limit uploads to"
 msgid "Limit uploads to"
 msgstr "Yüklemeleri sınırla"
 msgstr "Yüklemeleri sınırla"
@@ -3811,7 +4116,7 @@ msgstr "Taşkın koruma önlemlerine göre daha sık gönderilmesini sağlar."
 msgid "Can see threads"
 msgid "Can see threads"
 msgstr "Konuları görebilir"
 msgstr "Konuları görebilir"
 
 
-#: threads/permissions/threads.py:110 users/forms/admin.py:166
+#: threads/permissions/threads.py:110 users/forms/admin.py:168
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0006_update_settings.py:130
 #: users/migrations/0006_update_settings.py:130
 msgid "Started threads"
 msgid "Started threads"
@@ -4718,6 +5023,14 @@ msgstr "Bir veya daha fazla anket seçimi geçersizdi."
 msgid "You have to make a choice."
 msgid "You have to make a choice."
 msgstr "Bir seçim yapmalısın."
 msgstr "Bir seçim yapmalısın."
 
 
+#: threads/signals.py:177
+msgid "Question"
+msgstr ""
+
+#: threads/signals.py:178
+msgid "Choices"
+msgstr ""
+
 #: threads/templatetags/misago_poststags.py:20
 #: threads/templatetags/misago_poststags.py:20
 #, python-format
 #, python-format
 msgid "%(user)s likes this."
 msgid "%(user)s likes this."
@@ -4873,23 +5186,13 @@ msgstr "Onaylanmamış içerik listelerini görmek için izniniz yok."
 msgid "Requested attachment could not be found."
 msgid "Requested attachment could not be found."
 msgstr "İstenen ek bulunamadı."
 msgstr "İstenen ek bulunamadı."
 
 
-#: threads/views/admin/attachments.py:24 users/views/admin/bans.py:24
-#: users/views/admin/users.py:55
-msgid "From newest"
-msgstr "En yeni gelen"
-
-#: threads/views/admin/attachments.py:25 users/views/admin/bans.py:25
-#: users/views/admin/users.py:56
-msgid "From oldest"
-msgstr "Eskilerden"
-
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
-#: users/views/admin/users.py:57
+#: users/views/admin/users.py:58
 msgid "A to z"
 msgid "A to z"
 msgstr "A'dan Z'ye"
 msgstr "A'dan Z'ye"
 
 
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
-#: users/views/admin/users.py:58
+#: users/views/admin/users.py:59
 msgid "Z to a"
 msgid "Z to a"
 msgstr "Z'den A'ya"
 msgstr "Z'den A'ya"
 
 
@@ -4959,33 +5262,37 @@ msgid ""
 msgstr ""
 msgstr ""
 "İlk onaylanmamış ileti gidebilmek için içeriğin onaylanması için izin alın."
 "İlk onaylanmamış ileti gidebilmek için içeriğin onaylanması için izin alın."
 
 
-#: users/admin.py:79
+#: users/admin.py:89
 msgid "User Accounts"
 msgid "User Accounts"
 msgstr "Kullanıcı hesapları"
 msgstr "Kullanıcı hesapları"
 
 
-#: users/admin.py:87
+#: users/admin.py:97
 msgid "Ranks"
 msgid "Ranks"
 msgstr "Rütbeler"
 msgstr "Rütbeler"
 
 
-#: users/admin.py:96
+#: users/admin.py:106
 msgid "Bans"
 msgid "Bans"
 msgstr "yasaklar"
 msgstr "yasaklar"
 
 
+#: users/admin.py:115
+msgid "Data downloads"
+msgstr ""
+
 #: users/api/auth.py:100
 #: users/api/auth.py:100
 #, python-format
 #, python-format
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgstr "%(user)s hesabını %(forum_name)s forumlarında etkinleştir"
 msgstr "%(user)s hesabını %(forum_name)s forumlarında etkinleştir"
 
 
-#: users/api/auth.py:139
+#: users/api/auth.py:138
 #, python-format
 #, python-format
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgstr "%(user)s 'un şifresini %(forum_name)s forumlarında değiştir"
 msgstr "%(user)s 'un şifresini %(forum_name)s forumlarında değiştir"
 
 
-#: users/api/auth.py:180
+#: users/api/auth.py:178
 msgid "Form link is invalid. Please try again."
 msgid "Form link is invalid. Please try again."
 msgstr "Form bağlantısı geçersiz. Lütfen tekrar deneyin."
 msgstr "Form bağlantısı geçersiz. Lütfen tekrar deneyin."
 
 
-#: users/api/auth.py:181
+#: users/api/auth.py:179
 msgid "Your link has expired. Please request new one."
 msgid "Your link has expired. Please request new one."
 msgstr "Bağlantınızın süresi doldu. Lütfen yeni bir tane talep edin."
 msgstr "Bağlantınızın süresi doldu. Lütfen yeni bir tane talep edin."
 
 
@@ -5055,15 +5362,15 @@ msgstr "Yeni adrese e-posta değişikliği onay linki gönderildi."
 msgid "Confirm password change on %(forum_name)s forums"
 msgid "Confirm password change on %(forum_name)s forums"
 msgstr "%(forum_name)s forumlarındaki şifre değişikliğini onayla"
 msgstr "%(forum_name)s forumlarındaki şifre değişikliğini onayla"
 
 
-#: users/api/userendpoints/changepassword.py:31
+#: users/api/userendpoints/changepassword.py:32
 msgid "Password change confirmation link was sent to your address."
 msgid "Password change confirmation link was sent to your address."
 msgstr "Adresinize şifre değişim onay linki gönderildi."
 msgstr "Adresinize şifre değişim onay linki gönderildi."
 
 
-#: users/api/userendpoints/create.py:22
+#: users/api/userendpoints/create.py:25
 msgid "New users registrations are currently closed."
 msgid "New users registrations are currently closed."
 msgstr "Yeni kullanıcılar kayıtları şu anda kapalıdır."
 msgstr "Yeni kullanıcılar kayıtları şu anda kapalıdır."
 
 
-#: users/api/userendpoints/create.py:53 users/social/pipeline.py:205
+#: users/api/userendpoints/create.py:61 users/social/pipeline.py:215
 msgid "Please try resubmitting the form."
 msgid "Please try resubmitting the form."
 msgstr "Lütfen formu tekrar deneyin."
 msgstr "Lütfen formu tekrar deneyin."
 
 
@@ -5088,38 +5395,54 @@ msgstr "Kullanıcı adı değiştirilirken hata oluştu. Lütfen tekrar deneyin.
 msgid "You don't have permission to see other users name history."
 msgid "You don't have permission to see other users name history."
 msgstr "Diğer kullanıcıların ad geçmişini izlemek için izniniz yok."
 msgstr "Diğer kullanıcıların ad geçmişini izlemek için izniniz yok."
 
 
-#: users/api/users.py:54
+#: users/api/users.py:57
 msgid "You have to sign in to perform this action."
 msgid "You have to sign in to perform this action."
 msgstr "Bu işlemi gerçekleştirmek için oturum açmanız gerekir."
 msgstr "Bu işlemi gerçekleştirmek için oturum açmanız gerekir."
 
 
-#: users/api/users.py:100
+#: users/api/users.py:103
 msgid "You can't change other users avatars."
 msgid "You can't change other users avatars."
 msgstr "Diğer avatarları değiştiremezsiniz."
 msgstr "Diğer avatarları değiştiremezsiniz."
 
 
-#: users/api/users.py:107
+#: users/api/users.py:110
 msgid "You can't change other users options."
 msgid "You can't change other users options."
 msgstr "Diğer kullanıcı seçeneklerini değiştiremezsiniz."
 msgstr "Diğer kullanıcı seçeneklerini değiştiremezsiniz."
 
 
-#: users/api/users.py:112
+#: users/api/users.py:115
 msgid "Your forum options have been changed."
 msgid "Your forum options have been changed."
 msgstr "Forum seçenekleriniz değiştirildi."
 msgstr "Forum seçenekleriniz değiştirildi."
 
 
-#: users/api/users.py:119
+#: users/api/users.py:122
 msgid "You can't change other users names."
 msgid "You can't change other users names."
 msgstr "Diğer kullanıcı adlarını değiştiremezsiniz."
 msgstr "Diğer kullanıcı adlarını değiştiremezsiniz."
 
 
-#: users/api/users.py:126
+#: users/api/users.py:129
 msgid "You can't change other users signatures."
 msgid "You can't change other users signatures."
 msgstr "Diğer kullanıcı imzalarını değiştiremezsiniz."
 msgstr "Diğer kullanıcı imzalarını değiştiremezsiniz."
 
 
-#: users/api/users.py:133
+#: users/api/users.py:136
 msgid "You can't change other users passwords."
 msgid "You can't change other users passwords."
 msgstr "Diğer kullanıcıların şifrelerini değiştiremezsiniz."
 msgstr "Diğer kullanıcıların şifrelerini değiştiremezsiniz."
 
 
-#: users/api/users.py:140
+#: users/api/users.py:143
 msgid "You can't change other users e-mail addresses."
 msgid "You can't change other users e-mail addresses."
 msgstr "Diğer kullanıcıların e-posta adreslerini değiştiremezsiniz."
 msgstr "Diğer kullanıcıların e-posta adreslerini değiştiremezsiniz."
 
 
+#: users/api/users.py:225
+msgid "You can't request data downloads for other users."
+msgstr ""
+
+#: users/api/users.py:228
+msgid "You can't download your data."
+msgstr ""
+
+#: users/api/users.py:232
+msgid "You can't have more than one data download request at single time."
+msgstr ""
+
+#: users/api/users.py:278
+msgid "You can't see other users data downloads."
+msgstr ""
+
 #: users/apps.py:30
 #: users/apps.py:30
 msgid "Edit details"
 msgid "Edit details"
 msgstr "Detayları düzenle"
 msgstr "Detayları düzenle"
@@ -5132,11 +5455,11 @@ msgstr "Kullanıcı adını değiştir"
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "E-posta veya şifre değiştir"
 msgstr "E-posta veya şifre değiştir"
 
 
-#: users/apps.py:50
+#: users/apps.py:58
 msgid "Delete account"
 msgid "Delete account"
 msgstr ""
 msgstr ""
 
 
-#: users/apps.py:59
+#: users/apps.py:67
 msgid "Active poster"
 msgid "Active poster"
 msgstr ""
 msgstr ""
 
 
@@ -5193,27 +5516,27 @@ msgstr "İzinleri ve grupları düzenle"
 msgid "Edit the user from Misago admin panel"
 msgid "Edit the user from Misago admin panel"
 msgstr "Misago yönetim masa kullanıcıyı düzenleyin"
 msgstr "Misago yönetim masa kullanıcıyı düzenleyin"
 
 
-#: users/forms/admin.py:21 users/models/ban.py:74
+#: users/forms/admin.py:23 users/models/ban.py:74 users/signals.py:29
 msgid "Username"
 msgid "Username"
 msgstr "Kullanıcı adı"
 msgstr "Kullanıcı adı"
 
 
-#: users/forms/admin.py:22
+#: users/forms/admin.py:24
 msgid "Custom title"
 msgid "Custom title"
 msgstr "Özel Başlık"
 msgstr "Özel Başlık"
 
 
-#: users/forms/admin.py:23 users/models/ban.py:75
+#: users/forms/admin.py:25 users/models/ban.py:75
 msgid "E-mail address"
 msgid "E-mail address"
 msgstr "Mail Adresi"
 msgstr "Mail Adresi"
 
 
-#: users/forms/admin.py:52
+#: users/forms/admin.py:54
 msgid "All registered members must have \"Member\" role."
 msgid "All registered members must have \"Member\" role."
 msgstr "Kayıtlı tüm üyelerin \"üye\" sıfat olmalıdır."
 msgstr "Kayıtlı tüm üyelerin \"üye\" sıfat olmalıdır."
 
 
-#: users/forms/admin.py:71
+#: users/forms/admin.py:73
 msgid "Is administrator"
 msgid "Is administrator"
 msgstr "Yönetici mi"
 msgstr "Yönetici mi"
 
 
-#: users/forms/admin.py:73
+#: users/forms/admin.py:75
 msgid ""
 msgid ""
 "Designates whether the user can log into admin sites. If Django admin site "
 "Designates whether the user can log into admin sites. If Django admin site "
 "is enabled, this user will need additional permissions assigned within it to"
 "is enabled, this user will need additional permissions assigned within it to"
@@ -5223,11 +5546,11 @@ msgstr ""
 "Django admin sitesi etkinleştirilmişse, bu kullanıcının admin Django "
 "Django admin sitesi etkinleştirilmişse, bu kullanıcının admin Django "
 "modüllerine ek izinler atanması gerekecektir."
 "modüllerine ek izinler atanması gerekecektir."
 
 
-#: users/forms/admin.py:79
+#: users/forms/admin.py:81
 msgid "Is superuser"
 msgid "Is superuser"
 msgstr "Süper kullanıcı mı"
 msgstr "Süper kullanıcı mı"
 
 
-#: users/forms/admin.py:81
+#: users/forms/admin.py:83
 msgid ""
 msgid ""
 "Only administrators can access admin sites. In addition to admin site "
 "Only administrators can access admin sites. In addition to admin site "
 "access, superadmins can also change other members admin levels."
 "access, superadmins can also change other members admin levels."
@@ -5236,11 +5559,11 @@ msgstr ""
 "erişimine ek olarak, superadmins diğer üyelerin yönetim düzeylerini de "
 "erişimine ek olarak, superadmins diğer üyelerin yönetim düzeylerini de "
 "değiştirebilir."
 "değiştirebilir."
 
 
-#: users/forms/admin.py:86
+#: users/forms/admin.py:88
 msgid "Is active"
 msgid "Is active"
 msgstr "Aktif"
 msgstr "Aktif"
 
 
-#: users/forms/admin.py:88
+#: users/forms/admin.py:90
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Turning this off "
 "Designates whether this user should be treated as active. Turning this off "
 "is non-destructible way to remove user accounts."
 "is non-destructible way to remove user accounts."
@@ -5249,11 +5572,11 @@ msgstr ""
 "belirtir. Bu işlevi kapatmak, kullanıcı hesaplarını kaldırmanın yıkılmaz bir"
 "belirtir. Bu işlevi kapatmak, kullanıcı hesaplarını kaldırmanın yıkılmaz bir"
 " yoludur."
 " yoludur."
 
 
-#: users/forms/admin.py:92 users/forms/admin.py:123 users/forms/admin.py:151
+#: users/forms/admin.py:94 users/forms/admin.py:125 users/forms/admin.py:153
 msgid "Staff message"
 msgid "Staff message"
 msgstr "Personel ileti"
 msgstr "Personel ileti"
 
 
-#: users/forms/admin.py:94
+#: users/forms/admin.py:96
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user's account has "
 "Optional message for forum team members explaining why user's account has "
 "been disabled."
 "been disabled."
@@ -5261,15 +5584,15 @@ msgstr ""
 "Forum ekibi üyeleri için kullanıcının hesabının neden devre dışı "
 "Forum ekibi üyeleri için kullanıcının hesabının neden devre dışı "
 "bırakıldığını açıklayan isteğe bağlı ileti."
 "bırakıldığını açıklayan isteğe bağlı ileti."
 
 
-#: users/forms/admin.py:99
+#: users/forms/admin.py:101
 msgid "Change password to"
 msgid "Change password to"
 msgstr "Için şifreyi değiştir"
 msgstr "Için şifreyi değiştir"
 
 
-#: users/forms/admin.py:106
+#: users/forms/admin.py:108
 msgid "Lock avatar"
 msgid "Lock avatar"
 msgstr "Avatar kilitle"
 msgstr "Avatar kilitle"
 
 
-#: users/forms/admin.py:108
+#: users/forms/admin.py:110
 msgid ""
 msgid ""
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "reset his/her avatar to procedurally generated one."
 "reset his/her avatar to procedurally generated one."
@@ -5277,12 +5600,12 @@ msgstr ""
 "Bunu evet olarak ayarlamak, kullanıcının avatarını değiştirmesini durduracak"
 "Bunu evet olarak ayarlamak, kullanıcının avatarını değiştirmesini durduracak"
 " ve avatarını usulle üretilen birine sıfırlayacaktır."
 " ve avatarını usulle üretilen birine sıfırlayacaktır."
 
 
-#: users/forms/admin.py:114 users/forms/admin.py:145 users/forms/admin.py:473
-#: users/forms/admin.py:526
+#: users/forms/admin.py:116 users/forms/admin.py:147 users/forms/admin.py:468
+#: users/forms/admin.py:540
 msgid "User message"
 msgid "User message"
 msgstr "Kullanıcı ileti"
 msgstr "Kullanıcı ileti"
 
 
-#: users/forms/admin.py:116
+#: users/forms/admin.py:118
 msgid ""
 msgid ""
 "Optional message for user explaining why he/she is banned form changing "
 "Optional message for user explaining why he/she is banned form changing "
 "avatar."
 "avatar."
@@ -5290,7 +5613,7 @@ msgstr ""
 "Kullanıcı avatar değiştirilme biçiminden neden yasaklandığını açıklayan "
 "Kullanıcı avatar değiştirilme biçiminden neden yasaklandığını açıklayan "
 "isteğe bağlı ileti."
 "isteğe bağlı ileti."
 
 
-#: users/forms/admin.py:125
+#: users/forms/admin.py:127
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user is banned form "
 "Optional message for forum team members explaining why user is banned form "
 "changing avatar."
 "changing avatar."
@@ -5298,54 +5621,54 @@ msgstr ""
 "Forum ekibi üyeleri için avatarın değişen biçiminin neden kullanıcının "
 "Forum ekibi üyeleri için avatarın değişen biçiminin neden kullanıcının "
 "yasaklandığını açıklayan isteğe bağlı ileti."
 "yasaklandığını açıklayan isteğe bağlı ileti."
 
 
-#: users/forms/admin.py:133
+#: users/forms/admin.py:135
 msgid "Signature contents"
 msgid "Signature contents"
 msgstr "İmza içeriği"
 msgstr "İmza içeriği"
 
 
-#: users/forms/admin.py:138
+#: users/forms/admin.py:140
 msgid "Lock signature"
 msgid "Lock signature"
 msgstr "İmza içeriği"
 msgstr "İmza içeriği"
 
 
-#: users/forms/admin.py:140
+#: users/forms/admin.py:142
 msgid ""
 msgid ""
 "Setting this to yes will stop user from making changes to his/her signature."
 "Setting this to yes will stop user from making changes to his/her signature."
 msgstr ""
 msgstr ""
 "Bunu evet olarak ayarlamak, kullanıcının imza üzerinde değişiklik yapmasını "
 "Bunu evet olarak ayarlamak, kullanıcının imza üzerinde değişiklik yapmasını "
 "durduracaktır."
 "durduracaktır."
 
 
-#: users/forms/admin.py:146
+#: users/forms/admin.py:148
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgstr ""
 msgstr ""
 "Kullanıcıya kullanıcının imzasının neden kilitlendiğini açıklayan isteğe "
 "Kullanıcıya kullanıcının imzasının neden kilitlendiğini açıklayan isteğe "
 "bağlı ileti."
 "bağlı ileti."
 
 
-#: users/forms/admin.py:152
+#: users/forms/admin.py:154
 msgid ""
 msgid ""
 "Optional message to team members explaining why user signature is locked."
 "Optional message to team members explaining why user signature is locked."
 msgstr ""
 msgstr ""
 "Kullanıcıya kullanıcının imzasının neden kilitlendiğini açıklayan isteğe "
 "Kullanıcıya kullanıcının imzasının neden kilitlendiğini açıklayan isteğe "
 "bağlı ileti."
 "bağlı ileti."
 
 
-#: users/forms/admin.py:157
+#: users/forms/admin.py:159
 msgid "Hides presence"
 msgid "Hides presence"
 msgstr "Varlığını gizler"
 msgstr "Varlığını gizler"
 
 
-#: users/forms/admin.py:160
+#: users/forms/admin.py:162
 msgid "Who can add user to private threads"
 msgid "Who can add user to private threads"
 msgstr "Özel konuları kim kime ekleyebilir?"
 msgstr "Özel konuları kim kime ekleyebilir?"
 
 
-#: users/forms/admin.py:169
+#: users/forms/admin.py:171
 msgid "Replid threads"
 msgid "Replid threads"
 msgstr "Replid iplikleri"
 msgstr "Replid iplikleri"
 
 
-#: users/forms/admin.py:219 users/serializers/moderation.py:42
+#: users/forms/admin.py:221 users/serializers/moderation.py:42
 #, python-format
 #, python-format
 msgid "Signature can't be longer than %(limit)s character."
 msgid "Signature can't be longer than %(limit)s character."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgstr[0] "İmza %(limit)s karakterden uzun olamaz."
 msgstr[0] "İmza %(limit)s karakterden uzun olamaz."
 msgstr[1] "İmza %(limit)s karakterden uzun olamaz."
 msgstr[1] "İmza %(limit)s karakterden uzun olamaz."
 
 
-#: users/forms/admin.py:238
+#: users/forms/admin.py:240
 msgid ""
 msgid ""
 "Ranks are used to group and distinguish users. They are also used to add "
 "Ranks are used to group and distinguish users. They are also used to add "
 "permissions to groups of users."
 "permissions to groups of users."
@@ -5353,60 +5676,60 @@ msgstr ""
 "Sıralar, kullanıcıları gruplandırmak ve ayırmak için kullanılır. Ayrıca, "
 "Sıralar, kullanıcıları gruplandırmak ve ayırmak için kullanılır. Ayrıca, "
 "kullanıcı gruplarına izinler eklemek için kullanılırlar."
 "kullanıcı gruplarına izinler eklemek için kullanılırlar."
 
 
-#: users/forms/admin.py:248
+#: users/forms/admin.py:250
 msgid "Roles"
 msgid "Roles"
 msgstr "Roller"
 msgstr "Roller"
 
 
-#: users/forms/admin.py:249
+#: users/forms/admin.py:251
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgstr ""
 msgstr ""
 "Bu kullanıcının kişisel rolleri. Tüm kullanıcıların \"üye\" sıfat olmalıdır."
 "Bu kullanıcının kişisel rolleri. Tüm kullanıcıların \"üye\" sıfat olmalıdır."
 
 
-#: users/forms/admin.py:307
+#: users/forms/admin.py:309
 msgid "Username starts with"
 msgid "Username starts with"
 msgstr "Kullanıcı adı ile başlar"
 msgstr "Kullanıcı adı ile başlar"
 
 
-#: users/forms/admin.py:308
+#: users/forms/admin.py:310
 msgid "E-mail starts with"
 msgid "E-mail starts with"
 msgstr "Ile başlayan e-posta"
 msgstr "Ile başlayan e-posta"
 
 
-#: users/forms/admin.py:309
+#: users/forms/admin.py:311
 msgid "Profile fields contain"
 msgid "Profile fields contain"
 msgstr "kimlik alanları içeriyor"
 msgstr "kimlik alanları içeriyor"
 
 
-#: users/forms/admin.py:310
+#: users/forms/admin.py:312
 msgid "Inactive only"
 msgid "Inactive only"
 msgstr "Yalnızca etkin değil"
 msgstr "Yalnızca etkin değil"
 
 
-#: users/forms/admin.py:311
+#: users/forms/admin.py:313
 msgid "Disabled only"
 msgid "Disabled only"
 msgstr "Yalnızca devre dışı"
 msgstr "Yalnızca devre dışı"
 
 
-#: users/forms/admin.py:312
+#: users/forms/admin.py:314
 msgid "Admins only"
 msgid "Admins only"
 msgstr "Yalnızca yöneticiler"
 msgstr "Yalnızca yöneticiler"
 
 
-#: users/forms/admin.py:313
+#: users/forms/admin.py:315
 msgid "Deleting their accounts"
 msgid "Deleting their accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:355
+#: users/forms/admin.py:357
 msgid "All ranks"
 msgid "All ranks"
 msgstr "Tüm saflar"
 msgstr "Tüm saflar"
 
 
-#: users/forms/admin.py:362
+#: users/forms/admin.py:364
 msgid "All roles"
 msgid "All roles"
 msgstr "Tüm roller"
 msgstr "Tüm roller"
 
 
-#: users/forms/admin.py:369
+#: users/forms/admin.py:371
 msgid "Has rank"
 msgid "Has rank"
 msgstr "Rütbe var"
 msgstr "Rütbe var"
 
 
-#: users/forms/admin.py:375
+#: users/forms/admin.py:377
 msgid "Has role"
 msgid "Has role"
 msgstr "sıfat var"
 msgstr "sıfat var"
 
 
-#: users/forms/admin.py:391
+#: users/forms/admin.py:393
 msgid ""
 msgid ""
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "\"Game Masters\" are good examples."
 "\"Game Masters\" are good examples."
@@ -5414,11 +5737,11 @@ msgstr ""
 "Bu sıralamaya sahip tüm kullanıcıların kısa ve açıklayıcı adı. \"Takım\" "
 "Bu sıralamaya sahip tüm kullanıcıların kısa ve açıklayıcı adı. \"Takım\" "
 "veya \"Oyun Masters\" iyi örneklerdir."
 "veya \"Oyun Masters\" iyi örneklerdir."
 
 
-#: users/forms/admin.py:396
+#: users/forms/admin.py:398
 msgid "User title"
 msgid "User title"
 msgstr "Kullanıcı başlığı"
 msgstr "Kullanıcı başlığı"
 
 
-#: users/forms/admin.py:399
+#: users/forms/admin.py:401
 msgid ""
 msgid ""
 "Optional, singular version of rank name displayed by user names. For example"
 "Optional, singular version of rank name displayed by user names. For example"
 " \"GM\" or \"Dev\"."
 " \"GM\" or \"Dev\"."
@@ -5426,7 +5749,7 @@ msgstr ""
 "Sıralama isminin isteğe bağlı, tekil hali kullanıcı adlarıyla gösterilir. "
 "Sıralama isminin isteğe bağlı, tekil hali kullanıcı adlarıyla gösterilir. "
 "Örneğin \"GM\" veya \"Dev\"."
 "Örneğin \"GM\" veya \"Dev\"."
 
 
-#: users/forms/admin.py:409
+#: users/forms/admin.py:411
 msgid ""
 msgid ""
 "Optional description explaining function or status of members distincted "
 "Optional description explaining function or status of members distincted "
 "with this rank."
 "with this rank."
@@ -5434,19 +5757,19 @@ msgstr ""
 "Bu rütbe ile tanımlanan üyelerin görev veya durumlarını açıklayan isteğe "
 "Bu rütbe ile tanımlanan üyelerin görev veya durumlarını açıklayan isteğe "
 "bağlı açıklama."
 "bağlı açıklama."
 
 
-#: users/forms/admin.py:418
+#: users/forms/admin.py:420
 msgid "Rank can give additional roles to users with it."
 msgid "Rank can give additional roles to users with it."
 msgstr "Sıra, kullanıcılara ek rol verebilir."
 msgstr "Sıra, kullanıcılara ek rol verebilir."
 
 
-#: users/forms/admin.py:423
+#: users/forms/admin.py:425
 msgid "Optional css class added to content belonging to this rank owner."
 msgid "Optional css class added to content belonging to this rank owner."
 msgstr "Bu rütbeli sahibine ait içeriğe isteğe bağlı CSS sınıfı eklendi."
 msgstr "Bu rütbeli sahibine ait içeriğe isteğe bağlı CSS sınıfı eklendi."
 
 
-#: users/forms/admin.py:426
+#: users/forms/admin.py:428
 msgid "Give rank dedicated tab on users list"
 msgid "Give rank dedicated tab on users list"
 msgstr "Kullanıcı dizelge sıralama sekmesine izin ver"
 msgstr "Kullanıcı dizelge sıralama sekmesine izin ver"
 
 
-#: users/forms/admin.py:429
+#: users/forms/admin.py:431
 msgid ""
 msgid ""
 "Selecting this option will make users with this rank easily discoverable by "
 "Selecting this option will make users with this rank easily discoverable by "
 "others through dedicated page on forum users list."
 "others through dedicated page on forum users list."
@@ -5455,70 +5778,70 @@ msgstr ""
 "sıralamaya sahip kullanıcılar kolayca başkaları tarafından keşfedilebilir "
 "sıralamaya sahip kullanıcılar kolayca başkaları tarafından keşfedilebilir "
 "hale gelecektir."
 "hale gelecektir."
 
 
-#: users/forms/admin.py:454
+#: users/forms/admin.py:456
 msgid "This name collides with other rank."
 msgid "This name collides with other rank."
 msgstr "Bu ad diğer rütbelerle çarpışıyor."
 msgstr "Bu ad diğer rütbelerle çarpışıyor."
 
 
-#: users/forms/admin.py:461
+#: users/forms/admin.py:463
 msgid "Values to ban"
 msgid "Values to ban"
 msgstr "Yasaklamak değerleri"
 msgstr "Yasaklamak değerleri"
 
 
-#: users/forms/admin.py:464 users/forms/admin.py:579
-msgid "Usernames"
-msgstr "Kullanıcı adları"
-
-#: users/forms/admin.py:465 users/forms/admin.py:580
-msgid "E-mails"
-msgstr "E-postalar"
-
-#: users/forms/admin.py:466
-msgid "E-mail domains"
-msgstr "E-posta alan adları"
-
-#: users/forms/admin.py:467
-msgid "IP addresses"
-msgstr "IP adresleri"
-
-#: users/forms/admin.py:468
-msgid "First segment of IP addresses"
-msgstr "IP adreslerinin ilk bölümü"
-
-#: users/forms/admin.py:469
-msgid "First two segments of IP addresses"
-msgstr "IP adreslerinin ilk iki bölümü"
-
-#: users/forms/admin.py:476
+#: users/forms/admin.py:471
 msgid "Optional message displayed to users instead of default one."
 msgid "Optional message displayed to users instead of default one."
 msgstr ""
 msgstr ""
 "İsteğe bağlı ileti , varsayılan bir kullanıcı yerine kullanıcılara "
 "İsteğe bağlı ileti , varsayılan bir kullanıcı yerine kullanıcılara "
 "görüntülenir."
 "görüntülenir."
 
 
-#: users/forms/admin.py:479 users/forms/admin.py:489 users/forms/admin.py:532
-#: users/forms/admin.py:542
+#: users/forms/admin.py:474 users/forms/admin.py:484 users/forms/admin.py:546
+#: users/forms/admin.py:556
 msgid "Message can't be longer than 1000 characters."
 msgid "Message can't be longer than 1000 characters."
 msgstr "ileti 1000 karakterden uzun olamaz."
 msgstr "ileti 1000 karakterden uzun olamaz."
 
 
-#: users/forms/admin.py:483 users/forms/admin.py:536
+#: users/forms/admin.py:478 users/forms/admin.py:550
 msgid "Team message"
 msgid "Team message"
 msgstr "Takım ileti"
 msgstr "Takım ileti"
 
 
-#: users/forms/admin.py:486 users/forms/admin.py:539
+#: users/forms/admin.py:481 users/forms/admin.py:553
 msgid "Optional ban message for moderators and administrators."
 msgid "Optional ban message for moderators and administrators."
 msgstr "Yöneticiler ve yöneticiler için isteğe bağlı Yasaklamak ileti."
 msgstr "Yöneticiler ve yöneticiler için isteğe bağlı Yasaklamak ileti."
 
 
-#: users/forms/admin.py:495
+#: users/forms/admin.py:490
 msgid "Leave this field empty for set bans to never expire."
 msgid "Leave this field empty for set bans to never expire."
 msgstr "Set banlarının asla süresi dolmamak için bu alanı boş bırakın."
 msgstr "Set banlarının asla süresi dolmamak için bu alanı boş bırakın."
 
 
+#: users/forms/admin.py:499 users/forms/admin.py:593
+msgid "Usernames"
+msgstr "Kullanıcı adları"
+
+#: users/forms/admin.py:500 users/forms/admin.py:594
+msgid "E-mails"
+msgstr "E-postalar"
+
 #: users/forms/admin.py:501
 #: users/forms/admin.py:501
+msgid "E-mail domains"
+msgstr "E-posta alan adları"
+
+#: users/forms/admin.py:507
+msgid "IP addresses"
+msgstr "IP adresleri"
+
+#: users/forms/admin.py:508
+msgid "First segment of IP addresses"
+msgstr "IP adreslerinin ilk bölümü"
+
+#: users/forms/admin.py:509
+msgid "First two segments of IP addresses"
+msgstr "IP adreslerinin ilk iki bölümü"
+
+#: users/forms/admin.py:515
 msgid "Check type"
 msgid "Check type"
 msgstr "Türünü kontrol et"
 msgstr "Türünü kontrol et"
 
 
-#: users/forms/admin.py:506
+#: users/forms/admin.py:520
 msgid "Restrict this ban to registrations"
 msgid "Restrict this ban to registrations"
 msgstr "Bu yasaklamak kayıtlara kısıtla"
 msgstr "Bu yasaklamak kayıtlara kısıtla"
 
 
-#: users/forms/admin.py:508
+#: users/forms/admin.py:522
 msgid ""
 msgid ""
 "Changing this to yes will make this ban check be only performed on "
 "Changing this to yes will make this ban check be only performed on "
 "registration step. This is good if you want to block certain registrations "
 "registration step. This is good if you want to block certain registrations "
@@ -5530,11 +5853,11 @@ msgstr ""
 " süre önce hesaplanan e-posta sağlayıcılarından gelen gibi bazı kayıtları "
 " süre önce hesaplanan e-posta sağlayıcılarından gelen gibi bazı kayıtları "
 "engellemek istiyorsanız iyi olur."
 "engellemek istiyorsanız iyi olur."
 
 
-#: users/forms/admin.py:514
+#: users/forms/admin.py:528
 msgid "Banned value"
 msgid "Banned value"
 msgstr "Yasaklanmış değer"
 msgstr "Yasaklanmış değer"
 
 
-#: users/forms/admin.py:517
+#: users/forms/admin.py:531
 msgid ""
 msgid ""
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
@@ -5544,50 +5867,73 @@ msgstr ""
 "yıldız (*) kabul eder. Örneğin, \"83. *\" değeri için IP Yasaklamak "
 "yıldız (*) kabul eder. Örneğin, \"83. *\" değeri için IP Yasaklamak "
 "yapılması, \"83\" ile başlayan tüm IP adreslerini Yasaklamak."
 "yapılması, \"83\" ile başlayan tüm IP adreslerini Yasaklamak."
 
 
-#: users/forms/admin.py:522
+#: users/forms/admin.py:536
 msgid "Banned value can't be longer than 250 characters."
 msgid "Banned value can't be longer than 250 characters."
 msgstr "Yasaklanan değer 250 karakterden uzun olamaz."
 msgstr "Yasaklanan değer 250 karakterden uzun olamaz."
 
 
-#: users/forms/admin.py:529
+#: users/forms/admin.py:543
 msgid "Optional message displayed to user instead of default one."
 msgid "Optional message displayed to user instead of default one."
 msgstr "Yasaklanan ileti 250 karakterden uzun olamaz...."
 msgstr "Yasaklanan ileti 250 karakterden uzun olamaz...."
 
 
-#: users/forms/admin.py:548
+#: users/forms/admin.py:562
 msgid "Leave this field empty for this ban to never expire."
 msgid "Leave this field empty for this ban to never expire."
 msgstr "Bu Yasaklamak hiçbir zaman sona ermemesi için bu alanı boş bırakın."
 msgstr "Bu Yasaklamak hiçbir zaman sona ermemesi için bu alanı boş bırakın."
 
 
-#: users/forms/admin.py:568
+#: users/forms/admin.py:582
 msgid "Banned value is too vague."
 msgid "Banned value is too vague."
 msgstr "Yasaklanmış değer çok belirsiz."
 msgstr "Yasaklanmış değer çok belirsiz."
 
 
-#: users/forms/admin.py:578
+#: users/forms/admin.py:592
 msgid "All bans"
 msgid "All bans"
 msgstr "Tüm yasaklar"
 msgstr "Tüm yasaklar"
 
 
-#: users/forms/admin.py:581
+#: users/forms/admin.py:595
 msgid "IPs"
 msgid "IPs"
 msgstr "IP'leri"
 msgstr "IP'leri"
 
 
-#: users/forms/admin.py:584
+#: users/forms/admin.py:598
 msgid "Banned value begins with"
 msgid "Banned value begins with"
 msgstr "Yasaklanmış değer başlıyor"
 msgstr "Yasaklanmış değer başlıyor"
 
 
-#: users/forms/admin.py:586
+#: users/forms/admin.py:600
 msgid "Registration only"
 msgid "Registration only"
 msgstr "Sadece kayıt ol"
 msgstr "Sadece kayıt ol"
 
 
-#: users/forms/admin.py:589 users/forms/admin.py:598
+#: users/forms/admin.py:603 users/forms/admin.py:612
 msgid "Any"
 msgid "Any"
 msgstr "herhangi"
 msgstr "herhangi"
 
 
-#: users/forms/admin.py:599
+#: users/forms/admin.py:613
 msgid "Active"
 msgid "Active"
 msgstr "Aktif"
 msgstr "Aktif"
 
 
-#: users/forms/admin.py:600
+#: users/forms/admin.py:614 users/models/datadownload.py:26
 msgid "Expired"
 msgid "Expired"
 msgstr "Süresi doldu"
 msgstr "Süresi doldu"
 
 
+#: users/forms/admin.py:649
+msgid "Usernames or emails"
+msgstr ""
+
+#: users/forms/admin.py:651
+msgid ""
+"Enter every item in new line. Duplicates will be ignored. This field is case"
+" insensitive. Depending on site configuration and amount of data to archive "
+"it may take up to few days for requests to complete. E-mail will "
+"notification will be sent to every user once their download is ready."
+msgstr ""
+
+#: users/forms/admin.py:667
+#, python-format
+msgid ""
+"You may not enter more than 20 items at single time (You have entered "
+"%(show_value)s)."
+msgstr ""
+
+#: users/forms/admin.py:684
+msgid "One or more specified users could not be found."
+msgstr ""
+
 #: users/forms/auth.py:16
 #: users/forms/auth.py:16
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Her iki alanı doldurun."
 msgstr "Her iki alanı doldurun."
@@ -5644,18 +5990,27 @@ msgid ""
 "request new password."
 "request new password."
 msgstr "Yönetici, yeni şifre isteyebilmek için hesabınızı etkinleştirmelidir."
 msgstr "Yönetici, yeni şifre isteyebilmek için hesabınızı etkinleştirmelidir."
 
 
-#: users/forms/register.py:27
+#: users/forms/register.py:34
 msgid "This usernane is not allowed."
 msgid "This usernane is not allowed."
 msgstr "Bu kullanıcı adına izin verilmiyor."
 msgstr "Bu kullanıcı adına izin verilmiyor."
 
 
-#: users/forms/register.py:38 users/validators.py:41
+#: users/forms/register.py:45 users/validators.py:41
 msgid "This e-mail address is not allowed."
 msgid "This e-mail address is not allowed."
 msgstr "Bu e-posta adresine izin verilmiyor."
 msgstr "Bu e-posta adresine izin verilmiyor."
 
 
-#: users/forms/register.py:47
+#: users/forms/register.py:51
+msgid "This agreement is required."
+msgstr ""
+
+#: users/forms/register.py:60
 msgid "New registrations from this IP address are not allowed."
 msgid "New registrations from this IP address are not allowed."
 msgstr "Bu IP adresinden yeni kayıtlara izin verilmiyor."
 msgstr "Bu IP adresinden yeni kayıtlara izin verilmiyor."
 
 
+#: users/management/commands/prepareuserdatadownloads.py:34
+#, python-format
+msgid "%(user)s, your data download is ready"
+msgstr ""
+
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0006_update_settings.py:19
 #: users/migrations/0006_update_settings.py:19
 msgid ""
 msgid ""
@@ -5890,7 +6245,7 @@ msgstr ""
 "Her yanıtı yeni satıra yazın. Yanıtlar büyük / küçük harf duyarlı değildir."
 "Her yanıtı yeni satıra yazın. Yanıtlar büyük / küçük harf duyarlı değildir."
 
 
 #: users/migrations/0004_default_ranks.py:17
 #: users/migrations/0004_default_ranks.py:17
-#: users/migrations/0004_default_ranks.py:18 users/models/user.py:111
+#: users/migrations/0004_default_ranks.py:18 users/models/user.py:113
 msgid "Forum team"
 msgid "Forum team"
 msgstr "Forum ekibi"
 msgstr "Forum ekibi"
 
 
@@ -5903,48 +6258,60 @@ msgstr "Takım"
 msgid "Members"
 msgid "Members"
 msgstr "Üyeler"
 msgstr "Üyeler"
 
 
-#: users/models/user.py:37
+#: users/models/datadownload.py:23
+msgid "Pending"
+msgstr ""
+
+#: users/models/datadownload.py:24
+msgid "Processing"
+msgstr ""
+
+#: users/models/datadownload.py:25
+msgid "Ready"
+msgstr ""
+
+#: users/models/user.py:38
 msgid "User must have an email address."
 msgid "User must have an email address."
 msgstr "Kullanıcının bir e-posta adresine sahip olması gerekir."
 msgstr "Kullanıcının bir e-posta adresine sahip olması gerekir."
 
 
-#: users/models/user.py:146
+#: users/models/user.py:148
 msgid "Notify"
 msgid "Notify"
 msgstr "bildirmek"
 msgstr "bildirmek"
 
 
-#: users/models/user.py:147
+#: users/models/user.py:149
 msgid "Notify with e-mail"
 msgid "Notify with e-mail"
 msgstr "E-posta ile bildir"
 msgstr "E-posta ile bildir"
 
 
-#: users/models/user.py:155
+#: users/models/user.py:157
 msgid "Everybody"
 msgid "Everybody"
 msgstr "herkes"
 msgstr "herkes"
 
 
-#: users/models/user.py:156
+#: users/models/user.py:158
 msgid "Users I follow"
 msgid "Users I follow"
 msgstr "Takip ettiğim kullanıcılar"
 msgstr "Takip ettiğim kullanıcılar"
 
 
-#: users/models/user.py:157
+#: users/models/user.py:159
 msgid "Nobody"
 msgid "Nobody"
 msgstr "Kimse"
 msgstr "Kimse"
 
 
-#: users/models/user.py:175
+#: users/models/user.py:177
 msgid "joined on"
 msgid "joined on"
 msgstr "üzerine katıldı"
 msgstr "üzerine katıldı"
 
 
-#: users/models/user.py:190
+#: users/models/user.py:191
 msgid "staff status"
 msgid "staff status"
 msgstr "personel durumu"
 msgstr "personel durumu"
 
 
-#: users/models/user.py:192
+#: users/models/user.py:193
 msgid "Designates whether the user can log into admin sites."
 msgid "Designates whether the user can log into admin sites."
 msgstr ""
 msgstr ""
 "Kullanıcının admin sitelerine giriş yapıp giriş yapamayacağını belirtir."
 "Kullanıcının admin sitelerine giriş yapıp giriş yapamayacağını belirtir."
 
 
-#: users/models/user.py:199
+#: users/models/user.py:200
 msgid "active"
 msgid "active"
 msgstr "aktif"
 msgstr "aktif"
 
 
-#: users/models/user.py:203
+#: users/models/user.py:204
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Unselect this "
 "Designates whether this user should be treated as active. Unselect this "
 "instead of deleting accounts."
 "instead of deleting accounts."
@@ -6316,11 +6683,7 @@ msgstr "Bu twitter kolunda uygun değil."
 msgid "Join IP"
 msgid "Join IP"
 msgstr "IP ekle"
 msgstr "IP ekle"
 
 
-#: users/profilefields/default.py:99
-msgid "Last IP"
-msgstr "Son IP"
-
-#: users/registration.py:9
+#: users/registration.py:11
 #, python-format
 #, python-format
 msgid "Welcome on %(forum_name)s forums!"
 msgid "Welcome on %(forum_name)s forums!"
 msgstr "%(forum_name)s forumlarına hoşgeldiniz!"
 msgstr "%(forum_name)s forumlarına hoşgeldiniz!"
@@ -6362,14 +6725,30 @@ msgstr "Yeni e-mail adresi girmelisiniz."
 msgid "New e-mail is same as current one."
 msgid "New e-mail is same as current one."
 msgstr "Yeni e-posta, mevcut e-postayla aynı."
 msgstr "Yeni e-posta, mevcut e-postayla aynı."
 
 
-#: users/social/pipeline.py:74
+#: users/signals.py:31
+msgid "Joined on"
+msgstr ""
+
+#: users/signals.py:32
+msgid "Joined from ip"
+msgstr ""
+
+#: users/signals.py:72
+msgid "New username"
+msgstr ""
+
+#: users/signals.py:73
+msgid "Old username"
+msgstr ""
+
+#: users/social/pipeline.py:77
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "The e-mail address associated with your %(backend)s account is not available"
 "The e-mail address associated with your %(backend)s account is not available"
 " for use on this site."
 " for use on this site."
 msgstr ""
 msgstr ""
 
 
-#: users/social/pipeline.py:83
+#: users/social/pipeline.py:86
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "Your account has to be activated by site administrator before you will be "
 "Your account has to be activated by site administrator before you will be "
@@ -6470,6 +6849,42 @@ msgstr "Yasaklamak \"%(name)s\" düzenlendi."
 msgid "Ban \"%(name)s\" has been removed."
 msgid "Ban \"%(name)s\" has been removed."
 msgstr "Yasaklamak \"%(name)s\" kaldırıldı."
 msgstr "Yasaklamak \"%(name)s\" kaldırıldı."
 
 
+#: users/views/admin/datadownloads.py:23
+msgid "With data downloads: 0"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:24
+msgid "Select data downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:28
+msgid "Expire downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:30
+msgid "Are you sure you want to set selected data downloads as expired?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:34
+msgid "Delete downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:36
+msgid "Are you sure you want to delete selected data downloads?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:51
+msgid "Selected data downloads have been set as expired."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:57
+msgid "Selected data downloads have been deleted."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:68
+msgid "Data downloads have been requested for specified users."
+msgstr ""
+
 #: users/views/admin/ranks.py:16
 #: users/views/admin/ranks.py:16
 msgid "Requested rank does not exist."
 msgid "Requested rank does not exist."
 msgstr "İstenen rütbe yok."
 msgstr "İstenen rütbe yok."
@@ -6519,39 +6934,43 @@ msgstr "Sıra \"%(name)s\" zaten varsayılanıdır."
 msgid "Rank \"%(name)s\" has been made default."
 msgid "Rank \"%(name)s\" has been made default."
 msgstr "Sıra \"%(name)s\" varsayılan olarak ayarlandı."
 msgstr "Sıra \"%(name)s\" varsayılan olarak ayarlandı."
 
 
-#: users/views/admin/users.py:59
+#: users/views/admin/users.py:60
 msgid "Biggest posters"
 msgid "Biggest posters"
 msgstr "En büyük posterler"
 msgstr "En büyük posterler"
 
 
-#: users/views/admin/users.py:60
+#: users/views/admin/users.py:61
 msgid "Smallest posters"
 msgid "Smallest posters"
 msgstr "En küçük posterler"
 msgstr "En küçük posterler"
 
 
-#: users/views/admin/users.py:62
+#: users/views/admin/users.py:63
 msgid "With users: 0"
 msgid "With users: 0"
 msgstr "Kullanıcılar: 0"
 msgstr "Kullanıcılar: 0"
 
 
-#: users/views/admin/users.py:63
+#: users/views/admin/users.py:64
 msgid "Select users"
 msgid "Select users"
 msgstr "Kullanıcıları seç"
 msgstr "Kullanıcıları seç"
 
 
-#: users/views/admin/users.py:67
+#: users/views/admin/users.py:68
 msgid "Activate accounts"
 msgid "Activate accounts"
 msgstr "Hesapları etkinleştir"
 msgstr "Hesapları etkinleştir"
 
 
-#: users/views/admin/users.py:77
+#: users/views/admin/users.py:78
+msgid "Request data download"
+msgstr ""
+
+#: users/views/admin/users.py:83
 msgid "Delete accounts"
 msgid "Delete accounts"
 msgstr "Hesapları sil"
 msgstr "Hesapları sil"
 
 
-#: users/views/admin/users.py:79
+#: users/views/admin/users.py:85
 msgid "Are you sure you want to delete selected users?"
 msgid "Are you sure you want to delete selected users?"
 msgstr "Seçilen kullanıcıları silmek istediğinizden emin misiniz?"
 msgstr "Seçilen kullanıcıları silmek istediğinizden emin misiniz?"
 
 
-#: users/views/admin/users.py:83
+#: users/views/admin/users.py:89
 msgid "Delete all"
 msgid "Delete all"
 msgstr "Hepsini sil"
 msgstr "Hepsini sil"
 
 
-#: users/views/admin/users.py:86
+#: users/views/admin/users.py:92
 msgid ""
 msgid ""
 "Are you sure you want to delete selected users? This will also delete all "
 "Are you sure you want to delete selected users? This will also delete all "
 "content associated with their accounts."
 "content associated with their accounts."
@@ -6559,54 +6978,58 @@ msgstr ""
 "Seçilen kullanıcıları silmek istediğinizden emin misiniz? Bu aynı zamanda "
 "Seçilen kullanıcıları silmek istediğinizden emin misiniz? Bu aynı zamanda "
 "hesaplarıyla ilişkili tüm içeriği de silecektir."
 "hesaplarıyla ilişkili tüm içeriği de silecektir."
 
 
-#: users/views/admin/users.py:107
+#: users/views/admin/users.py:113
 msgid "You have to select inactive users."
 msgid "You have to select inactive users."
 msgstr "Etkin olmayan kullanıcıları seçmelisiniz."
 msgstr "Etkin olmayan kullanıcıları seçmelisiniz."
 
 
-#: users/views/admin/users.py:114
+#: users/views/admin/users.py:120
 #, python-format
 #, python-format
 msgid "Your account on %(forum_name)s forums has been activated"
 msgid "Your account on %(forum_name)s forums has been activated"
 msgstr "%(forum_name)s forumlarındaki hesabınız etkinleştirildi"
 msgstr "%(forum_name)s forumlarındaki hesabınız etkinleştirildi"
 
 
-#: users/views/admin/users.py:119
+#: users/views/admin/users.py:125
 msgid "Selected users accounts have been activated."
 msgid "Selected users accounts have been activated."
 msgstr "Seçilen kullanıcı hesapları etkinleştirildi."
 msgstr "Seçilen kullanıcı hesapları etkinleştirildi."
 
 
-#: users/views/admin/users.py:125
+#: users/views/admin/users.py:131
 #, python-format
 #, python-format
 msgid "%(user)s is super admin and can't be banned."
 msgid "%(user)s is super admin and can't be banned."
 msgstr "%(user)ssüper yönetici ve yasaklanamaz."
 msgstr "%(user)ssüper yönetici ve yasaklanamaz."
 
 
-#: users/views/admin/users.py:186
+#: users/views/admin/users.py:194
 msgid "Selected users have been banned."
 msgid "Selected users have been banned."
 msgstr "Seçilen kullanıcılar yasaklandı."
 msgstr "Seçilen kullanıcılar yasaklandı."
 
 
-#: users/views/admin/users.py:201 users/views/admin/users.py:215
-#: users/views/admin/users.py:331
+#: users/views/admin/users.py:212
+msgid "Data download requests have been placed for selected users."
+msgstr ""
+
+#: users/views/admin/users.py:217 users/views/admin/users.py:230
+#: users/views/admin/users.py:346
 msgid "You can't delete yourself."
 msgid "You can't delete yourself."
 msgstr "Kendini silemezsin."
 msgstr "Kendini silemezsin."
 
 
-#: users/views/admin/users.py:203 users/views/admin/users.py:217
-#: users/views/admin/users.py:334
+#: users/views/admin/users.py:219 users/views/admin/users.py:232
+#: users/views/admin/users.py:349
 #, python-format
 #, python-format
 msgid "%(user)s is admin and can't be deleted."
 msgid "%(user)s is admin and can't be deleted."
 msgstr "%(user)s admin ve silinemiyor."
 msgstr "%(user)s admin ve silinemiyor."
 
 
-#: users/views/admin/users.py:209
+#: users/views/admin/users.py:225
 msgid "Selected users have been deleted."
 msgid "Selected users have been deleted."
 msgstr "Seçilen kullanıcılar silindi."
 msgstr "Seçilen kullanıcılar silindi."
 
 
-#: users/views/admin/users.py:232
+#: users/views/admin/users.py:247
 #, python-format
 #, python-format
 msgid "New user \"%(user)s\" has been registered."
 msgid "New user \"%(user)s\" has been registered."
 msgstr "Yeni kullanıcı \"%(user)s\" kaydedildi."
 msgstr "Yeni kullanıcı \"%(user)s\" kaydedildi."
 
 
-#: users/views/admin/users.py:261
+#: users/views/admin/users.py:276
 #, python-format
 #, python-format
 msgid "User \"%(user)s\" has been edited."
 msgid "User \"%(user)s\" has been edited."
 msgstr "Kullanıcı \"%(user)s\" düzenlendi."
 msgstr "Kullanıcı \"%(user)s\" düzenlendi."
 
 
-#: users/views/admin/users.py:328
+#: users/views/admin/users.py:343
 msgid "This action can't be accessed directly."
 msgid "This action can't be accessed directly."
 msgstr "Bu işlem direk olarak gerçekleştirilemez."
 msgstr "Bu işlem direk olarak gerçekleştirilemez."
 
 

BIN
misago/locale/tr/LC_MESSAGES/djangojs.mo


+ 285 - 207
misago/locale/tr/LC_MESSAGES/djangojs.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-20 21:20+0200\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Bilal Akgül <billakgl@gmail.com>, 2018\n"
 "Last-Translator: Bilal Akgül <billakgl@gmail.com>, 2018\n"
 "Language-Team: Turkish (Turkey) (https://www.transifex.com/misago/teams/65369/tr_TR/)\n"
 "Language-Team: Turkish (Turkey) (https://www.transifex.com/misago/teams/65369/tr_TR/)\n"
@@ -39,8 +39,30 @@ msgid "Promise can't be resolved itself"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:1
 #: static/misago/js/misago.js:1
-msgid "By registering you agree to site's terms and conditions."
-msgstr "Kayıt olarak sitenin şart ve koşullarını kabul etmiş olursunuz."
+msgid "the terms of service"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "the privacy policy"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "I have read and accept %(agreement)s."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid ""
+"Declining will result in immediate deactivation and deletion of your "
+"account. This action is not reversible."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Decline"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Accept and continue"
+msgstr ""
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
@@ -48,11 +70,12 @@ msgstr "Kayıt olarak sitenin şart ve koşullarını kabul etmiş olursunuz."
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Close"
 msgid "Close"
 msgstr "Kapat"
 msgstr "Kapat"
 
 
-#: static/misago/js/misago.js:1 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:1 static/misago/js/misago.js:6
 msgid "Add participant"
 msgid "Add participant"
 msgstr "Katılımcı ekle"
 msgstr "Katılımcı ekle"
 
 
@@ -70,9 +93,10 @@ msgstr "Eklenecek kullanıcı"
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:6 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:6 static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Cancel"
 msgid "Cancel"
 msgstr "İptal et"
 msgstr "İptal et"
 
 
@@ -198,8 +222,8 @@ msgid "Generate my individual avatar"
 msgstr "Avatarımı oluştur"
 msgstr "Avatarımı oluştur"
 
 
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "Ok"
 msgid "Ok"
 msgstr "Tamam"
 msgstr "Tamam"
 
 
@@ -267,40 +291,40 @@ msgstr "Kod ekle"
 msgid "Emphase selection"
 msgid "Emphase selection"
 msgstr "Vurgu seçimi"
 msgstr "Vurgu seçimi"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert horizontal ruler"
 msgid "Insert horizontal ruler"
 msgstr "Yatay cetvel ekle"
 msgstr "Yatay cetvel ekle"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link to image"
 msgid "Enter link to image"
 msgstr "Resmin linkini gir"
 msgstr "Resmin linkini gir"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter image label (optional)"
 msgid "Enter image label (optional)"
 msgstr "Resim etiketi girin (isteğe bağlı)"
 msgstr "Resim etiketi girin (isteğe bağlı)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert image"
 msgid "Insert image"
 msgstr "Resim Ekle"
 msgstr "Resim Ekle"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link address"
 msgid "Enter link address"
 msgstr "Bağlantı adresi girin"
 msgstr "Bağlantı adresi girin"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link label (optional)"
 msgid "Enter link label (optional)"
 msgstr "Bağlantı etiketini girin (isteğe bağlı)"
 msgstr "Bağlantı etiketini girin (isteğe bağlı)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert link"
 msgid "Insert link"
 msgstr "Bağlantı Ekle"
 msgstr "Bağlantı Ekle"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter quote autor, prefix usernames with @"
 msgid "Enter quote autor, prefix usernames with @"
 msgstr ""
 msgstr ""
 "@ ile kullanıcı adlarını veya alıntı yapılacak yazarın adını yazabilirsiniz"
 "@ ile kullanıcı adlarını veya alıntı yapılacak yazarın adını yazabilirsiniz"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert quote"
 msgid "Insert quote"
 msgstr "Alıntı yap"
 msgstr "Alıntı yap"
 
 
@@ -333,7 +357,7 @@ msgstr "Silme işlemini geri al"
 msgid "Error uploading %(filename)s"
 msgid "Error uploading %(filename)s"
 msgstr "Yüklenirken %(filename)s hata"
 msgstr "Yüklenirken %(filename)s hata"
 
 
-#: static/misago/js/misago.js:3 static/misago/js/misago.js:8
+#: static/misago/js/misago.js:3 static/misago/js/misago.js:9
 msgid "Dismiss"
 msgid "Dismiss"
 msgstr "Reddet"
 msgstr "Reddet"
 
 
@@ -350,7 +374,7 @@ msgid "Protected"
 msgstr "Korumalı"
 msgstr "Korumalı"
 
 
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Protect"
 msgid "Protect"
 msgstr "Koru"
 msgstr "Koru"
 
 
@@ -385,7 +409,7 @@ msgid ""
 " deleted during the merge."
 " deleted during the merge."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:18
 msgid "Poll"
 msgid "Poll"
 msgstr "Anket"
 msgstr "Anket"
 
 
@@ -400,6 +424,7 @@ msgid "Are you sure you want to delete all polls?"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Merge threads"
 msgid "Merge threads"
 msgstr "Konular birleştir"
 msgstr "Konular birleştir"
 
 
@@ -429,8 +454,7 @@ msgstr ""
 msgid "%(title)s, joined on %(joined_on)s"
 msgid "%(title)s, joined on %(joined_on)s"
 msgstr "%(title)s, %(joined_on)s'da katıldı."
 msgstr "%(title)s, %(joined_on)s'da katıldı."
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "Change username"
 msgid "Change username"
 msgstr "Kullanıcı adını değiştir"
 msgstr "Kullanıcı adını değiştir"
 
 
@@ -467,7 +491,7 @@ msgstr[1] ""
 msgid "Your new username is same as current one."
 msgid "Your new username is same as current one."
 msgstr "Kullanici ismin şuankiyle ayni."
 msgstr "Kullanici ismin şuankiyle ayni."
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "New username"
 msgid "New username"
 msgstr "Yeni kullanıcı adı"
 msgstr "Yeni kullanıcı adı"
 
 
@@ -476,15 +500,15 @@ msgid "Your username has been changed successfully."
 msgstr "Kullanıcı adin başarıyla değiştirildi."
 msgstr "Kullanıcı adin başarıyla değiştirildi."
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change your options"
 msgid "Change your options"
 msgstr "Seçeneklerini değiştir"
 msgstr "Seçeneklerini değiştir"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5
 msgid "Enter your password to confirm account deletion."
 msgid "Enter your password to confirm account deletion."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:13
 msgid "Delete account"
 msgid "Delete account"
 msgstr "Hesabı sil"
 msgstr "Hesabı sil"
 
 
@@ -520,7 +544,54 @@ msgstr ""
 msgid "Delete my account"
 msgid "Delete my account"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:5
+msgid "Your request for data download has been registered."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download your data"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"To download your data from the site, click the \"Request data download\" "
+"button. Depending on amount of data to be archived and number of users "
+"wanting to download their data at same time it may take up to few days for "
+"your download to be prepared. An e-mail with notification will be sent to "
+"you when your data is ready to be downloaded."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"The download will only be available for limited amount of time, after which "
+"it will be deleted from the site and marked as expired."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Requested on"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "You have no data downloads."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Request data download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is being prepared"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is expired"
+msgstr ""
+
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:12
 msgid "Your details have been updated."
 msgid "Your details have been updated."
 msgstr "Detayların güncellendi."
 msgstr "Detayların güncellendi."
 
 
@@ -605,7 +676,7 @@ msgstr "Başlattığım konular"
 msgid "Threads I reply to"
 msgid "Threads I reply to"
 msgstr "Cevapladığım konular"
 msgstr "Cevapladığım konular"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:6
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "Mail adresini ve şifreni değiştir"
 msgstr "Mail adresini ve şifreni değiştir"
 
 
@@ -655,7 +726,7 @@ msgstr "Yeni şifre"
 msgid "Repeat password"
 msgid "Repeat password"
 msgstr "Şifreni tekrarla"
 msgstr "Şifreni tekrarla"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change forgotten password"
 msgid "Change forgotten password"
 msgstr "Unutulan şifreni değiştir"
 msgstr "Unutulan şifreni değiştir"
 
 
@@ -845,21 +916,21 @@ msgid_plural "%(votes)s votes."
 msgstr[0] "%(votes)s oy."
 msgstr[0] "%(votes)s oy."
 msgstr[1] "%(votes)s oy."
 msgstr[1] "%(votes)s oy."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Votes are public."
 msgid "Votes are public."
 msgstr "Oylar halka açıktır."
 msgstr "Oylar halka açıktır."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgstr[0] "%(votes)s oy, toplamı içinde %%(proc)s "
 msgstr[0] "%(votes)s oy, toplamı içinde %%(proc)s "
 msgstr[1] "%(votes)s oy, toplamı içinde %%(proc)s "
 msgstr[1] "%(votes)s oy, toplamı içinde %%(proc)s "
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Your choice."
 msgid "Your choice."
 msgstr "Senin seçimin."
 msgstr "Senin seçimin."
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s user has voted for this choice."
 msgid "%(votes)s user has voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgstr[0] "%(votes)s adet kullanıcı bu seçim için oy kullandı."
 msgstr[0] "%(votes)s adet kullanıcı bu seçim için oy kullandı."
@@ -877,9 +948,8 @@ msgstr "Oy ver"
 msgid "See votes"
 msgid "See votes"
 msgstr "Oyları gör"
 msgstr "Oyları gör"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:15
 msgid "Edit"
 msgid "Edit"
 msgstr "Düzenle"
 msgstr "Düzenle"
 
 
@@ -889,8 +959,7 @@ msgid ""
 msgstr "Bu anketi silmek istediğinizden emin misiniz? Bu eylem geri alınamaz."
 msgstr "Bu anketi silmek istediğinizden emin misiniz? Bu eylem geri alınamaz."
 
 
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Delete"
 msgid "Delete"
 msgstr "Silmek"
 msgstr "Silmek"
 
 
@@ -954,27 +1023,27 @@ msgstr "İleti önceki duruma döndü."
 msgid "See previous change"
 msgid "See previous change"
 msgstr "Önceki değişikliği gör"
 msgstr "Önceki değişikliği gör"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "By %(edited_by)s %(edited_on)s."
 msgid "By %(edited_by)s %(edited_on)s."
 msgstr "%(edited_by)s tarafından %(edited_on)s tarihinde düzenlendi."
 msgstr "%(edited_by)s tarafından %(edited_on)s tarihinde düzenlendi."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This post's contents cannot be displayed."
 msgid "This post's contents cannot be displayed."
 msgstr "Bu yazı içeriği görüntülenemiyor."
 msgstr "Bu yazı içeriği görüntülenemiyor."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This error is caused by invalid post content manipulation."
 msgid "This error is caused by invalid post content manipulation."
 msgstr "Bu hata, geçersiz yayın içeriği manipülasyonundan kaynaklanmaktadır."
 msgstr "Bu hata, geçersiz yayın içeriği manipülasyonundan kaynaklanmaktadır."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "posted %(posted_on)s"
 msgid "posted %(posted_on)s"
 msgstr "%(posted_on)s tarihinde yayımlandı."
 msgstr "%(posted_on)s tarihinde yayımlandı."
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "Removed user"
 msgid "Removed user"
 msgstr "Kaldırılan kullanıcı"
 msgstr "Kaldırılan kullanıcı"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "See post"
 msgid "See post"
 msgstr "İletiyi gör"
 msgstr "İletiyi gör"
 
 
@@ -996,7 +1065,7 @@ msgstr "Bu iletiyi hiç kimse beğenmedi."
 msgid "Are you sure you want to discard changes?"
 msgid "Are you sure you want to discard changes?"
 msgstr "Değişiklikleri silmek istediğinden emin misin?"
 msgstr "Değişiklikleri silmek istediğinden emin misin?"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "Bir mesaj girmeniz gerekiyor."
 msgstr "Bir mesaj girmeniz gerekiyor."
 
 
@@ -1028,11 +1097,12 @@ msgstr "Özel konu, silmek istediğinden emin misin?"
 msgid "You have to enter at least one recipient."
 msgid "You have to enter at least one recipient."
 msgstr "En az bir alıcı girmelisiniz."
 msgstr "En az bir alıcı girmelisiniz."
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:15
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "Konu başlığı girmelisiniz."
 msgstr "Konu başlığı girmelisiniz."
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Your thread has been posted."
 msgid "Your thread has been posted."
 msgstr "Senin konu yayımlanmıştır."
 msgstr "Senin konu yayımlanmıştır."
 
 
@@ -1040,12 +1110,13 @@ msgstr "Senin konu yayımlanmıştır."
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgstr "Virgülle ayrılmış kullanıcı isimleri liste si, örneğin: Danny, Lisa"
 msgstr "Virgülle ayrılmış kullanıcı isimleri liste si, örneğin: Danny, Lisa"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:19
 msgid "Thread title"
 msgid "Thread title"
 msgstr "Konu başlığı"
 msgstr "Konu başlığı"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Post thread"
 msgid "Post thread"
 msgstr "Konu Aç"
 msgstr "Konu Aç"
 
 
@@ -1053,35 +1124,35 @@ msgstr "Konu Aç"
 msgid "Are you sure you want to discard thread?"
 msgid "Are you sure you want to discard thread?"
 msgstr "Konuyu silmek istediğinden emin misin?"
 msgstr "Konuyu silmek istediğinden emin misin?"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18
 msgid "Closed"
 msgid "Closed"
 msgstr "Kapalı"
 msgstr "Kapalı"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:16
 msgid "Open"
 msgid "Open"
 msgstr "Açık"
 msgstr "Açık"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:21
 msgid "Hidden"
 msgid "Hidden"
 msgstr "Gizlenmiş"
 msgstr "Gizlenmiş"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Not hidden"
 msgid "Not hidden"
 msgstr "Gizlenmemiş"
 msgstr "Gizlenmemiş"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Unpinned"
 msgid "Unpinned"
 msgstr "sabitlemeyi kaldır."
 msgstr "sabitlemeyi kaldır."
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned locally"
 msgid "Pinned locally"
 msgstr "Yerel olarak sabitlenmiş"
 msgstr "Yerel olarak sabitlenmiş"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned globally"
 msgid "Pinned globally"
@@ -1144,12 +1215,12 @@ msgstr[1] ""
 "karakterdir)"
 "karakterdir)"
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Hide"
 msgid "Hide"
 msgstr "Gizle"
 msgstr "Gizle"
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Unhide"
 msgid "Unhide"
 msgstr "Gizleme"
 msgstr "Gizleme"
 
 
@@ -1171,10 +1242,6 @@ msgid "By %(event_by)s %(event_on)s."
 msgstr "%(event_by)s tarafından %(event_on)s tarihinde."
 msgstr "%(event_by)s tarafından %(event_on)s tarihinde."
 
 
 #: static/misago/js/misago.js:9
 #: static/misago/js/misago.js:9
-msgid "IP recorded"
-msgstr "IP kaydedildi"
-
-#: static/misago/js/misago.js:9
 msgid "Thread title has been changed from %(old_title)s."
 msgid "Thread title has been changed from %(old_title)s."
 msgstr "%(old_title)s  konu başlığı değiştirildi."
 msgstr "%(old_title)s  konu başlığı değiştirildi."
 
 
@@ -1264,23 +1331,23 @@ msgstr ""
 msgid "Post has been deleted."
 msgid "Post has been deleted."
 msgstr "İleti silindi."
 msgstr "İleti silindi."
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link to this post:"
 msgid "Permament link to this post:"
 msgstr "Bu ileti için kalıcı bağlantı:"
 msgstr "Bu ileti için kalıcı bağlantı:"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link"
 msgid "Permament link"
 msgstr "Kalıcı bağlantı"
 msgstr "Kalıcı bağlantı"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Mark as best answer"
 msgid "Mark as best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Unmark best answer"
 msgid "Unmark best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
 msgid "This post was edited %(edits)s time."
 msgid "This post was edited %(edits)s time."
 msgid_plural "This post was edited %(edits)s times."
 msgid_plural "This post was edited %(edits)s times."
 msgstr[0] "Bu ileti %(edits)s tarihinde düzenlendi."
 msgstr[0] "Bu ileti %(edits)s tarihinde düzenlendi."
@@ -1290,17 +1357,15 @@ msgstr[1] "Bu ileti %(edits)s tarihinde düzenlendi."
 msgid "Changes history"
 msgid "Changes history"
 msgstr "Geçmişi değiştirir"
 msgstr "Geçmişi değiştirir"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Approve"
 msgid "Approve"
 msgstr "Onayla"
 msgstr "Onayla"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Move"
 msgid "Move"
 msgstr "Taşı"
 msgstr "Taşı"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Split"
 msgid "Split"
 msgstr "Ayır"
 msgstr "Ayır"
 
 
@@ -1313,6 +1378,7 @@ msgid "Move post"
 msgstr "İleti yi taşı"
 msgstr "İleti yi taşı"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You have to enter link to the other thread."
 msgid "You have to enter link to the other thread."
 msgstr "Diğer konu linkini girmelisin"
 msgstr "Diğer konu linkini girmelisin"
 
 
@@ -1362,7 +1428,7 @@ msgid "Close thread"
 msgstr "Kapalı konu"
 msgstr "Kapalı konu"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19
 msgid "Category"
 msgid "Category"
 msgstr "Bölüm"
 msgstr "Bölüm"
 
 
@@ -1414,32 +1480,32 @@ msgid_plural "%(users)s and %(likes)s other users like this."
 msgstr[0] "%(users)s ve %(likes)s diğer kullanıcılar"
 msgstr[0] "%(users)s ve %(likes)s diğer kullanıcılar"
 msgstr[1] "%(users)s ve %(likes)s diğer kullanıcılar"
 msgstr[1] "%(users)s ve %(likes)s diğer kullanıcılar"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Liked"
 msgid "Liked"
 msgstr "Beğenilen"
 msgstr "Beğenilen"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Like"
 msgid "Like"
 msgstr "Beğeni"
 msgstr "Beğeni"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
 msgid "Reply"
 msgid "Reply"
 msgstr "Cevapla"
 msgstr "Cevapla"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "New post"
 msgid "New post"
 msgstr "Yeni ileti"
 msgstr "Yeni ileti"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:20
 msgid "New"
 msgid "New"
 msgstr "Yeni"
 msgstr "Yeni"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "This post is protected and may not be edited."
 msgid "This post is protected and may not be edited."
 msgstr "Bu korunan bir ileti ve düzenlenmez."
 msgstr "Bu korunan bir ileti ve düzenlenmez."
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "protected"
 msgid "protected"
 msgstr "korunan"
 msgstr "korunan"
 
 
@@ -1487,69 +1553,68 @@ msgstr "Başkalarıyla herhangi bir ayrıntı paylaşmıyorsunuz."
 msgid "%(username)s is not sharing any details with others."
 msgid "%(username)s is not sharing any details with others."
 msgstr "%(username)s başkalarıyla herhangi bir ayrıntı paylaşmıyor."
 msgstr "%(username)s başkalarıyla herhangi bir ayrıntı paylaşmıyor."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
 msgid "Details"
 msgid "Details"
 msgstr "Ayrıntılar"
 msgstr "Ayrıntılar"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s's details have been updated."
 msgid "%(username)s's details have been updated."
 msgstr "%(username)skullanıcısının detayları güncellendi."
 msgstr "%(username)skullanıcısının detayları güncellendi."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have no started threads."
 msgid "You have no started threads."
 msgstr "Başlatılmış sana ait konular yok."
 msgstr "Başlatılmış sana ait konular yok."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s started no threads."
 msgid "%(username)s started no threads."
 msgstr "%(username)s kullanıcısına ait başlatılmış konular yok"
 msgstr "%(username)s kullanıcısına ait başlatılmış konular yok"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have started %(threads)s thread."
 msgid "You have started %(threads)s thread."
 msgid_plural "You have started %(threads)s threads."
 msgid_plural "You have started %(threads)s threads."
 msgstr[0] "Sana ait %(threads)s adet başlatılmış konular var."
 msgstr[0] "Sana ait %(threads)s adet başlatılmış konular var."
 msgstr[1] "Sana ait %(threads)s adet başlatılmış konular var."
 msgstr[1] "Sana ait %(threads)s adet başlatılmış konular var."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has started %(threads)s thread."
 msgid "%(username)s has started %(threads)s thread."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgstr[0] "%(username)s adlı kullanıcı %(threads)skonular ını başlattı."
 msgstr[0] "%(username)s adlı kullanıcı %(threads)skonular ını başlattı."
 msgstr[1] "%(username)s adlı kullanıcı %(threads)skonular ını başlattı."
 msgstr[1] "%(username)s adlı kullanıcı %(threads)skonular ını başlattı."
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:13
 msgid "Loading..."
 msgid "Loading..."
 msgstr "Yükleniyor..."
 msgstr "Yükleniyor..."
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:20
 #: static/misago/js/misago.js:20
 msgid "Threads"
 msgid "Threads"
 msgstr "Konular"
 msgstr "Konular"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted no messages."
 msgid "You have posted no messages."
 msgstr "Gönderilmiş bir mesaj yok."
 msgstr "Gönderilmiş bir mesaj yok."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s posted no messages."
 msgid "%(username)s posted no messages."
 msgstr "%(username)s kullanıcısının gönderdiği bir mesaj yok."
 msgstr "%(username)s kullanıcısının gönderdiği bir mesaj yok."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted %(posts)s message."
 msgid "You have posted %(posts)s message."
 msgid_plural "You have posted %(posts)s messages."
 msgid_plural "You have posted %(posts)s messages."
 msgstr[0] "Gönderilmiş %(posts)s mesajın var."
 msgstr[0] "Gönderilmiş %(posts)s mesajın var."
 msgstr[1] "Gönderilmiş %(posts)s mesajın var."
 msgstr[1] "Gönderilmiş %(posts)s mesajın var."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has posted %(posts)s message."
 msgid "%(username)s has posted %(posts)s message."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgstr[0] "%(username)s kullanıcısının %(posts)s mesajı var."
 msgstr[0] "%(username)s kullanıcısının %(posts)s mesajı var."
 msgstr[1] "%(username)s kullanıcısının %(posts)s mesajı var."
 msgstr[1] "%(username)s kullanıcısının %(posts)s mesajı var."
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "Posts"
 msgid "Posts"
 msgstr "İletiler"
 msgstr "İletiler"
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:12
 msgid "Show more (%(more)s)"
 msgid "Show more (%(more)s)"
 msgstr "Daha fazlasını gör (%(more)s)"
 msgstr "Daha fazlasını gör (%(more)s)"
 
 
@@ -1640,6 +1705,7 @@ msgid "Joined %(joined_on)s"
 msgstr "%(joined_on)s katıldı."
 msgstr "%(joined_on)s katıldı."
 
 
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Moderation"
 msgid "Moderation"
 msgstr "Moderasyon"
 msgstr "Moderasyon"
 
 
@@ -1699,44 +1765,44 @@ msgstr ""
 msgid "Avatar controls"
 msgid "Avatar controls"
 msgstr "Avatar kontrolleri"
 msgstr "Avatar kontrolleri"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Username has been changed."
 msgid "Username has been changed."
 msgstr "Kullanıcı adınız değiştirildi."
 msgstr "Kullanıcı adınız değiştirildi."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account, threads, posts and other content has been deleted."
 "%(username)s's account, threads, posts and other content has been deleted."
 msgstr ""
 msgstr ""
 "%(username)skullanıcısının hesabı, konular, iletiler ve diğer içerikleri "
 "%(username)skullanıcısının hesabı, konular, iletiler ve diğer içerikleri "
 "silindi."
 "silindi."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account has been deleted and other content has been hidden."
 "%(username)s's account has been deleted and other content has been hidden."
 msgstr ""
 msgstr ""
 "%(username)skullanıcısının hesabı silindi ve diğer içerikleri gizlendi."
 "%(username)skullanıcısının hesabı silindi ve diğer içerikleri gizlendi."
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete %(username)s"
 msgid "Delete %(username)s"
 msgstr "%(username)s sil"
 msgstr "%(username)s sil"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Please wait... (%(countdown)ss)"
 msgid "Please wait... (%(countdown)ss)"
 msgstr "Lütfen bekleyin... (%(countdown)s)"
 msgstr "Lütfen bekleyin... (%(countdown)s)"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "User content"
 msgid "User content"
 msgstr "Kullanıcı içeriği"
 msgstr "Kullanıcı içeriği"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete together with user's account"
 msgid "Delete together with user's account"
 msgstr "Kullanıcının hesabıyla birlikte sil"
 msgstr "Kullanıcının hesabıyla birlikte sil"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Hide after deleting user's account"
 msgid "Hide after deleting user's account"
 msgstr "Kullanıcının hesabını sildikten sonra gizle"
 msgstr "Kullanıcının hesabını sildikten sonra gizle"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Return to users list"
 msgid "Return to users list"
 msgstr "Kullanıcı liste sine geri dön"
 msgstr "Kullanıcı liste sine geri dön"
 
 
@@ -1802,32 +1868,32 @@ msgstr "Kayıt şu anda bir hata nedeniyle kullanılamıyor."
 msgid "Register"
 msgid "Register"
 msgstr "Kayıt Ol"
 msgstr "Kayıt Ol"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Join with %(site)s"
 msgid "Join with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Or create forum account:"
 msgid "Or create forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Username"
 msgid "Username"
 msgstr "Kullanıcı Adı"
 msgstr "Kullanıcı Adı"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "E-mail"
 msgid "E-mail"
 msgstr "E-posta"
 msgstr "E-posta"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Password"
 msgid "Password"
 msgstr "Şifre"
 msgstr "Şifre"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Register account"
 msgid "Register account"
 msgstr "Hesabı Kaydet"
 msgstr "Hesabı Kaydet"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but you need to activate it "
 "%(username)s, your account has been created but you need to activate it "
 "before you will be able to sign in."
 "before you will be able to sign in."
@@ -1835,7 +1901,7 @@ msgstr ""
 "%(username)s hesabınız oluşturuldu, ancak oturum açabilmeniz için önce "
 "%(username)s hesabınız oluşturuldu, ancak oturum açabilmeniz için önce "
 "etkinleştirmeniz gerekir."
 "etkinleştirmeniz gerekir."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but board administrator will "
 "%(username)s, your account has been created but board administrator will "
 "have to activate it before you will be able to sign in."
 "have to activate it before you will be able to sign in."
@@ -1843,7 +1909,7 @@ msgstr ""
 "%(username)shesabınız oluşturuldu fakat pano yöneticisi oturum açabilmeniz "
 "%(username)shesabınız oluşturuldu fakat pano yöneticisi oturum açabilmeniz "
 "için onu aktif hale getirmek zorundadır. "
 "için onu aktif hale getirmek zorundadır. "
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid ""
 msgid ""
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "activate your account."
 "activate your account."
@@ -1851,32 +1917,31 @@ msgstr ""
 "Hesabınızı aktifleştirmek için gerekli linki %(email)s adresinize e-posta "
 "Hesabınızı aktifleştirmek için gerekli linki %(email)s adresinize e-posta "
 "yolladık."
 "yolladık."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgstr "Bu gerçekleştiğinde %(email)sadresinize e-posta göndereceğiz."
 msgstr "Bu gerçekleştiğinde %(email)sadresinize e-posta göndereceğiz."
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Registration complete"
 msgid "Registration complete"
 msgstr "Kayıt tamamlandı."
 msgstr "Kayıt tamamlandı."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:25
 msgid "Enter a valid email address."
 msgid "Enter a valid email address."
 msgstr "Geçerli bir e-posta adresi girin."
 msgstr "Geçerli bir e-posta adresi girin."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Your e-mail address"
 msgid "Your e-mail address"
 msgstr "E-posta Adresiniz"
 msgstr "E-posta Adresiniz"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Send link"
 msgid "Send link"
 msgstr "Link gönder"
 msgstr "Link gönder"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Activation link was sent to %(email)s"
 msgid "Activation link was sent to %(email)s"
 msgstr "Aktivasyon linki %(email)s adresinize gönderildi."
 msgstr "Aktivasyon linki %(email)s adresinize gönderildi."
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Request another link"
 msgid "Request another link"
 msgstr "Başka bir link iste"
 msgstr "Başka bir link iste"
 
 
@@ -1941,41 +2006,41 @@ msgstr "Arama sorgusuyla eşleşen hiçbir kullanıcı bulunamadı."
 msgid "Enter at least two characters to search users."
 msgid "Enter at least two characters to search users."
 msgstr "Kullanıcı aramak için en az iki karakter girin."
 msgstr "Kullanıcı aramak için en az iki karakter girin."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "Her iki alanı doldurun."
 msgstr "Her iki alanı doldurun."
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Activate account"
 msgid "Activate account"
 msgstr "Hesabı etkinleştir"
 msgstr "Hesabı etkinleştir"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Sign in with %(site)s"
 msgid "Sign in with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Or use your forum account:"
 msgid "Or use your forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "Kullanıcı adı veya e-posta"
 msgstr "Kullanıcı adı veya e-posta"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Forgot password?"
 msgid "Forgot password?"
 msgstr "Şifreyi mi unuttun?"
 msgstr "Şifreyi mi unuttun?"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid ""
 msgid ""
-"%(username)s, your account has been created and you has been signed in to "
+"%(username)s, your account has been created and you have been signed in to "
 "it."
 "it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Registration completed!"
 msgid "Registration completed!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Return to forum index"
 msgid "Return to forum index"
 msgstr ""
 msgstr ""
 
 
@@ -1984,6 +2049,10 @@ msgid "Sign in with %(backend)s"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
+msgid "You need to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:15
 msgid "Your e-mail address has been verified by %(backend)s."
 msgid "Your e-mail address has been verified by %(backend)s."
 msgstr ""
 msgstr ""
 
 
@@ -2004,7 +2073,7 @@ msgid "Edit title"
 msgstr "başlığı düzenlemek"
 msgstr "başlığı düzenlemek"
 
 
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:20
 msgid "Unapproved"
 msgid "Unapproved"
 msgstr "Onaylanmamış"
 msgstr "Onaylanmamış"
 
 
@@ -2012,7 +2081,7 @@ msgstr "Onaylanmamış"
 msgid "Unapproved posts"
 msgid "Unapproved posts"
 msgstr "Onaylanmamış iletiler"
 msgstr "Onaylanmamış iletiler"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:15 static/misago/js/misago.js:18
 msgid "%(replies)s reply"
 msgid "%(replies)s reply"
 msgid_plural "%(replies)s replies"
 msgid_plural "%(replies)s replies"
 msgstr[0] "%(replies)s adet cevap"
 msgstr[0] "%(replies)s adet cevap"
@@ -2038,19 +2107,19 @@ msgstr ""
 "Seçilen iletileri silmek istediğinizden emin misiniz? Bu eylem geri "
 "Seçilen iletileri silmek istediğinizden emin misiniz? Bu eylem geri "
 "alınamaz!"
 "alınamaz!"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Merge"
 msgid "Merge"
 msgstr "kaynaşmak"
 msgstr "kaynaşmak"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Unprotect"
 msgid "Unprotect"
 msgstr "Korumalı değil"
 msgstr "Korumalı değil"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "%(username)s on %(posted_on)s"
 msgid "%(username)s on %(posted_on)s"
 msgstr "%(posted_on)s'de%(username)s"
 msgstr "%(posted_on)s'de%(username)s"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "One or more posts could not be changed:"
 msgid "One or more posts could not be changed:"
 msgstr "Bir veya daha fazla iletiler değiştirilemedi:"
 msgstr "Bir veya daha fazla iletiler değiştirilemedi:"
 
 
@@ -2110,19 +2179,19 @@ msgstr "Yerel olarak sabitlenmiş"
 msgid "Unpin"
 msgid "Unpin"
 msgstr "Sabitlemeyi kaldır."
 msgstr "Sabitlemeyi kaldır."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Merge thread"
 msgid "Merge thread"
 msgstr "Birleştirilmiş konu"
 msgstr "Birleştirilmiş konu"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been merged with other one."
 msgid "Thread has been merged with other one."
 msgstr "Konu, başka bir konu ile birleştirildi."
 msgstr "Konu, başka bir konu ile birleştirildi."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Link to thread you want to merge with"
 msgid "Link to thread you want to merge with"
 msgstr "Birleştirmek istediğiniz konu linkini ver"
 msgstr "Birleştirmek istediğiniz konu linkini ver"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid ""
 msgid ""
 "Merge will delete current thread and move its contents to the thread "
 "Merge will delete current thread and move its contents to the thread "
 "specified here."
 "specified here."
@@ -2130,19 +2199,19 @@ msgstr ""
 "Birleştirme yapılırken geçerli konu silinir ve burada belirtilen konu "
 "Birleştirme yapılırken geçerli konu silinir ve burada belirtilen konu "
 "içeriğine taşınır."
 "içeriğine taşınır."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Move thread"
 msgid "Move thread"
 msgstr "Konu taşı"
 msgstr "Konu taşı"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You can't move this thread at the moment."
 msgid "You can't move this thread at the moment."
 msgstr "Bu konu şu anda taşınamaz."
 msgstr "Bu konu şu anda taşınamaz."
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been moved."
 msgid "Thread has been moved."
 msgstr "Konu taşındı."
 msgstr "Konu taşındı."
 
 
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "New category"
 msgid "New category"
 msgstr "Yeni bölüm"
 msgstr "Yeni bölüm"
 
 
@@ -2180,15 +2249,15 @@ msgstr "İzin Ver"
 msgid "Disabled"
 msgid "Disabled"
 msgstr "çevrimdışı"
 msgstr "çevrimdışı"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Unsubscribe"
 msgid "Unsubscribe"
 msgstr "Abonelikten Çık"
 msgstr "Abonelikten Çık"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe"
 msgid "Subscribe"
 msgstr "abone"
 msgstr "abone"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe with e-mail"
 msgid "Subscribe with e-mail"
 msgstr "E-posta ile abone ol"
 msgstr "E-posta ile abone ol"
 
 
@@ -2220,11 +2289,11 @@ msgstr "Son ileti"
 msgid "Options"
 msgid "Options"
 msgstr "Seçenkler"
 msgstr "Seçenkler"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid "Add poll"
 msgid "Add poll"
 msgstr "Anket ekle"
 msgstr "Anket ekle"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid ""
 msgid ""
 "There is %(threads)s new or updated thread. Click this message to show it."
 "There is %(threads)s new or updated thread. Click this message to show it."
 msgid_plural ""
 msgid_plural ""
@@ -2249,7 +2318,7 @@ msgstr ""
 msgid "Change subscription"
 msgid "Change subscription"
 msgstr "Aboneliği değiştir"
 msgstr "Aboneliği değiştir"
 
 
-#: static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19
 msgid "Start thread"
 msgid "Start thread"
 msgstr "Konu başlat"
 msgstr "Konu başlat"
 
 
@@ -2329,7 +2398,7 @@ msgstr "Yerele sabitlenmiş konular"
 msgid "Unpin threads"
 msgid "Unpin threads"
 msgstr "Sabitlenmesi kaldırılmış konular"
 msgstr "Sabitlenmesi kaldırılmış konular"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Move threads"
 msgid "Move threads"
 msgstr "Konular taşı"
 msgstr "Konular taşı"
 
 
@@ -2365,7 +2434,7 @@ msgstr "Konular moderasyonu"
 msgid "One or more threads could not be deleted:"
 msgid "One or more threads could not be deleted:"
 msgstr "Bir veya daha fazla konular silinemedi:"
 msgstr "Bir veya daha fazla konular silinemedi:"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You can't move threads because there are no categories you are allowed to "
 "You can't move threads because there are no categories you are allowed to "
 "move them to."
 "move them to."
@@ -2380,11 +2449,11 @@ msgstr ""
 "Konular ı birleştirmek için bölüm içindeki konular a başlatma izni almanız "
 "Konular ı birleştirmek için bölüm içindeki konular a başlatma izni almanız "
 "gerekir."
 "gerekir."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Selected threads were moved."
 msgid "Selected threads were moved."
 msgstr "Seçilen konular taşındı."
 msgstr "Seçilen konular taşındı."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You need permission to start threads in category to be able to move threads "
 "You need permission to start threads in category to be able to move threads "
 "to it."
 "to it."
@@ -2392,51 +2461,51 @@ msgstr ""
 "Konular ı taşımak için bölüm içindeki konular a başlatma izni almanız "
 "Konular ı taşımak için bölüm içindeki konular a başlatma izni almanız "
 "gerekir."
 "gerekir."
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select all"
 msgid "Select all"
 msgstr "Tümünü seç"
 msgstr "Tümünü seç"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select none"
 msgid "Select none"
 msgstr "Birini seç"
 msgstr "Birini seç"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All"
 msgid "All"
 msgstr "Tümü"
 msgstr "Tümü"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All threads"
 msgid "All threads"
 msgstr "Tüm konular"
 msgstr "Tüm konular"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My"
 msgid "My"
 msgstr "Benim"
 msgstr "Benim"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My threads"
 msgid "My threads"
 msgstr "Benim konular"
 msgstr "Benim konular"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "New threads"
 msgid "New threads"
 msgstr "Yeni Konular"
 msgstr "Yeni Konular"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread"
 msgid "Unread"
 msgstr "Okunmamış"
 msgstr "Okunmamış"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread threads"
 msgid "Unread threads"
 msgstr "Okunmamış konular"
 msgstr "Okunmamış konular"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed"
 msgid "Subscribed"
 msgstr "Abone olundu"
 msgstr "Abone olundu"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed threads"
 msgid "Subscribed threads"
 msgstr "Abone olunan konular"
 msgstr "Abone olunan konular"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unapproved content"
 msgid "Unapproved content"
 msgstr "Onaylanmamış içerik"
 msgstr "Onaylanmamış içerik"
 
 
@@ -2453,7 +2522,8 @@ msgstr ""
 msgid "You have unread private threads!"
 msgid "You have unread private threads!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20 static/misago/js/misago.js:22
+#: static/misago/js/misago.js:20 static/misago/js/misago.js:21
+#: static/misago/js/misago.js:23
 msgid "Private threads"
 msgid "Private threads"
 msgstr "Özel Konular"
 msgstr "Özel Konular"
 
 
@@ -2461,67 +2531,67 @@ msgstr "Özel Konular"
 msgid "Are you sure you want to sign out?"
 msgid "Are you sure you want to sign out?"
 msgstr "Oturumu kapatmak istediğinizden emin misiniz?"
 msgstr "Oturumu kapatmak istediğinizden emin misiniz?"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "See your profile"
 msgid "See your profile"
 msgstr "Profil Gör"
 msgstr "Profil Gör"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change options"
 msgid "Change options"
 msgstr "Seçenekleri değiştir"
 msgstr "Seçenekleri değiştir"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change avatar"
 msgid "Change avatar"
 msgstr "Avatarı değiştir"
 msgstr "Avatarı değiştir"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Log out"
 msgid "Log out"
 msgstr "Çıkış yap"
 msgstr "Çıkış yap"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned until %(ban_expires)s"
 msgid "%(username)s is banned until %(ban_expires)s"
 msgstr "%(username)s kullanıcısı %(ban_expires)s e kadar yasaklanmıştır."
 msgstr "%(username)s kullanıcısı %(ban_expires)s e kadar yasaklanmıştır."
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned"
 msgid "%(username)s is banned"
 msgstr "%(username)s yasaklıdır."
 msgstr "%(username)s yasaklıdır."
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is hiding presence"
 msgid "%(username)s is hiding presence"
 msgstr "%(username)s gizli varlıktır."
 msgstr "%(username)s gizli varlıktır."
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online (hidden)"
 msgid "%(username)s is online (hidden)"
 msgstr "%(username)s çevrimiçidir (gizlenmiş)"
 msgstr "%(username)s çevrimiçidir (gizlenmiş)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgstr "%(username)s son görülmesi %(last_click)s (gizlenmiş)"
 msgstr "%(username)s son görülmesi %(last_click)s (gizlenmiş)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online"
 msgid "%(username)s is online"
 msgstr "%(username)s çevrimiçidir"
 msgstr "%(username)s çevrimiçidir"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s"
 msgid "%(username)s was last seen %(last_click)s"
 msgstr "%(username)s son görülmesi %(last_click)s"
 msgstr "%(username)s son görülmesi %(last_click)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Banned"
 msgid "Banned"
 msgstr "Yasaklanmış"
 msgstr "Yasaklanmış"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online (hidden)"
 msgid "Online (hidden)"
 msgstr "Çevrimiçi (gizlenmiş)"
 msgstr "Çevrimiçi (gizlenmiş)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline (hidden)"
 msgid "Offline (hidden)"
 msgstr "Çevrimdışı (gizlenmiş)"
 msgstr "Çevrimdışı (gizlenmiş)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online"
 msgid "Online"
 msgstr "Çevrimiçi"
 msgstr "Çevrimiçi"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline"
 msgid "Offline"
 msgstr "Çevrimdışı"
 msgstr "Çevrimdışı"
 
 
@@ -2535,19 +2605,19 @@ msgstr[1] "%(followers)s takipçiler"
 msgid "No users have posted any new messages during last %(days)s days."
 msgid "No users have posted any new messages during last %(days)s days."
 msgstr "Hiçbir kullanıcı son %(days)s gün içinde yeni mesaj göndermedi."
 msgstr "Hiçbir kullanıcı son %(days)s gün içinde yeni mesaj göndermedi."
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Rank"
 msgid "Rank"
 msgstr "Rütbe"
 msgstr "Rütbe"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Ranked posts"
 msgid "Ranked posts"
 msgstr "Rütbeli iletiler"
 msgstr "Rütbeli iletiler"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "Total posts"
 msgid "Total posts"
 msgstr "Toplam iletiler"
 msgstr "Toplam iletiler"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgstr[0] "son %(days)s günlerden en aktif posterleri %(posters)s"
 msgstr[0] "son %(days)s günlerden en aktif posterleri %(posters)s"
@@ -2579,7 +2649,7 @@ msgstr "evet"
 msgid "no"
 msgid "no"
 msgstr "hayır"
 msgstr "hayır"
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid ""
 msgid ""
 "Private threads are threads which only those that started them and those "
 "Private threads are threads which only those that started them and those "
 "they have invited may see and participate in."
 "they have invited may see and participate in."
@@ -2587,19 +2657,19 @@ msgstr ""
 "Özel konular, sadece onları başlatan ve katılmak için davet edilmiş "
 "Özel konular, sadece onları başlatan ve katılmak için davet edilmiş "
 "olanların görebileceği konular demektir."
 "olanların görebileceği konular demektir."
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid "You aren't participating in any private threads."
 msgid "You aren't participating in any private threads."
 msgstr "Özel konular, katılamazsın."
 msgstr "Özel konular, katılamazsın."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Lost connection with application."
 msgid "Lost connection with application."
 msgstr "Uygulamayla bağlantı kesildi."
 msgstr "Uygulamayla bağlantı kesildi."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Action link is invalid."
 msgid "Action link is invalid."
 msgstr "Aktivasyon linki geçersizdir."
 msgstr "Aktivasyon linki geçersizdir."
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Unknown error has occured."
 msgid "Unknown error has occured."
 msgstr "Bilinmeyen bir hata oluştu."
 msgstr "Bilinmeyen bir hata oluştu."
 
 
@@ -2636,15 +2706,23 @@ msgstr "Zaten bir anket üzerinde çalışıyorsun. Çöpe atmak ister misin?"
 msgid "You don't have permission to perform this action."
 msgid "You don't have permission to perform this action."
 msgstr "Bu eylemi gerçekleştirmek için iznin yok."
 msgstr "Bu eylemi gerçekleştirmek için iznin yok."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "You are banned"
 msgid "You are banned"
 msgstr "Yasaklandin."
 msgstr "Yasaklandin."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "This field is required."
 msgid "This field is required."
 msgstr "Bu alan gerekli."
 msgstr "Bu alan gerekli."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
+msgid "You have to accept the terms of service."
+msgstr ""
+
+#: static/misago/js/misago.js:25
+msgid "You have to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at least %(limit_value)s character (it has "
 "Ensure this value has at least %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2658,7 +2736,7 @@ msgstr[1] ""
 "Bu değerin en az %(limit_value)s karakterine sahip olduğundan emin olun "
 "Bu değerin en az %(limit_value)s karakterine sahip olduğundan emin olun "
 "(%(show_value)s olmalıdır)."
 "(%(show_value)s olmalıdır)."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at most %(limit_value)s character (it has "
 "Ensure this value has at most %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2672,7 +2750,7 @@ msgstr[1] ""
 "Bu değerin en çok %(limit_value)s karakterine sahip olduğundan emin olun "
 "Bu değerin en çok %(limit_value)s karakterine sahip olduğundan emin olun "
 "(%(show_value)s olmalıdır)."
 "(%(show_value)s olmalıdır)."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username must be at least %(limit_value)s character long."
 msgid "Username must be at least %(limit_value)s character long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgstr[0] ""
 msgstr[0] ""
@@ -2680,18 +2758,18 @@ msgstr[0] ""
 msgstr[1] ""
 msgstr[1] ""
 "Kullanıcı adı en az %(limit_value)s karakter uzunluğunda olmalıdır."
 "Kullanıcı adı en az %(limit_value)s karakter uzunluğunda olmalıdır."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgstr[0] "Kullanıcı adı %(limit_value)s karakterden uzun olamaz."
 msgstr[0] "Kullanıcı adı %(limit_value)s karakterden uzun olamaz."
 msgstr[1] "Kullanıcı adı %(limit_value)s karakterden uzun olamaz."
 msgstr[1] "Kullanıcı adı %(limit_value)s karakterden uzun olamaz."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username can only contain latin alphabet letters and digits."
 msgid "Username can only contain latin alphabet letters and digits."
 msgstr ""
 msgstr ""
 "Kullanıcı adı sadece latin alfabesindeki harfleri ve rakamları içerebilir."
 "Kullanıcı adı sadece latin alfabesindeki harfleri ve rakamları içerebilir."
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid_plural ""
 msgid_plural ""
 "Valid password must be at least %(limit_value)s characters long."
 "Valid password must be at least %(limit_value)s characters long."

BIN
misago/locale/zh_Hans/LC_MESSAGES/django.mo


+ 738 - 311
misago/locale/zh_Hans/LC_MESSAGES/django.po

@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-31 23:36+0000\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Neo Chang <me@neoto.xin>, 2017\n"
+"Last-Translator: cxgreat2014 <fwy1998@gmail.com>, 2018\n"
 "Language-Team: Chinese (China) (https://www.transifex.com/misago/teams/65369/zh_CN/)\n"
 "Language-Team: Chinese (China) (https://www.transifex.com/misago/teams/65369/zh_CN/)\n"
 "MIME-Version: 1.0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -25,7 +25,7 @@ msgstr ""
 msgid "Permissions"
 msgid "Permissions"
 msgstr "权限"
 msgstr "权限"
 
 
-#: acl/admin.py:33 users/forms/admin.py:414
+#: acl/admin.py:33 users/forms/admin.py:416
 msgid "User roles"
 msgid "User roles"
 msgstr "用户身份"
 msgstr "用户身份"
 
 
@@ -142,17 +142,17 @@ msgstr "您必须选择一个或者多个项目"
 msgid "Action is not allowed."
 msgid "Action is not allowed."
 msgstr "操作不被许可"
 msgstr "操作不被许可"
 
 
-#: admin/views/index.py:70
+#: admin/views/index.py:83
 #, python-format
 #, python-format
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgid "Outdated: %(current)s! (latest: %(latest)s)"
 msgstr "已过期:%(current)s!(最新:%(latest)s)"
 msgstr "已过期:%(current)s!(最新:%(latest)s)"
 
 
-#: admin/views/index.py:78
+#: admin/views/index.py:91
 #, python-format
 #, python-format
 msgid "Up to date! (%(current)s)"
 msgid "Up to date! (%(current)s)"
 msgstr "更新到 (%(current)s)"
 msgstr "更新到 (%(current)s)"
 
 
-#: admin/views/index.py:87
+#: admin/views/index.py:100
 msgid "Failed to connect to GitHub API. Try again later."
 msgid "Failed to connect to GitHub API. Try again later."
 msgstr "访问GitHub API失败,请稍候尝试"
 msgstr "访问GitHub API失败,请稍候尝试"
 
 
@@ -171,11 +171,11 @@ msgstr "版块层次"
 msgid "Category roles"
 msgid "Category roles"
 msgstr "版块身份"
 msgstr "版块身份"
 
 
-#: categories/forms.py:47 users/forms/admin.py:388
+#: categories/forms.py:47 users/forms/admin.py:390
 msgid "Name"
 msgid "Name"
 msgstr "名称"
 msgstr "名称"
 
 
-#: categories/forms.py:49 users/forms/admin.py:404
+#: categories/forms.py:49 users/forms/admin.py:406
 msgid "Description"
 msgid "Description"
 msgstr "描述"
 msgstr "描述"
 
 
@@ -183,7 +183,7 @@ msgstr "描述"
 msgid "Optional description explaining category intented purpose."
 msgid "Optional description explaining category intented purpose."
 msgstr "解释版块用途(可选)。"
 msgstr "解释版块用途(可选)。"
 
 
-#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:421
+#: categories/forms.py:56 categories/forms.py:68 users/forms/admin.py:423
 msgid "CSS class"
 msgid "CSS class"
 msgstr "CSS类"
 msgstr "CSS类"
 
 
@@ -201,7 +201,7 @@ msgstr "已关闭版块"
 msgid "Only members with valid permissions can post in closed categories."
 msgid "Only members with valid permissions can post in closed categories."
 msgstr "只有具备特定权限的成员可以在已经关闭的版块中发帖。"
 msgstr "只有具备特定权限的成员可以在已经关闭的版块中发帖。"
 
 
-#: categories/forms.py:75 templates/misago/admin/index.html:83
+#: categories/forms.py:75 templates/misago/admin/index.html:110
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/admin/users/delete.html:32 templates/misago/navbar.html:18
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/navbar.html:34 templates/misago/profile/threads.html:5
 #: templates/misago/profile/threads.html:8
 #: templates/misago/profile/threads.html:8
@@ -214,7 +214,7 @@ msgstr "只有具备特定权限的成员可以在已经关闭的版块中发帖
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0002_threads_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/migrations/0004_update_settings.py:16
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
 #: threads/permissions/threads.py:72 threads/permissions/threads.py:103
-#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:89
+#: threads/search.py:20 threads/viewmodels/thread.py:118 users/apps.py:97
 msgid "Threads"
 msgid "Threads"
 msgstr "主题帖"
 msgstr "主题帖"
 
 
@@ -511,7 +511,7 @@ msgstr "请求验证不可用"
 
 
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: core/forms.py:43 templates/misago/admin/users/edit.html:61
 #: templates/misago/admin/users/edit.html:78
 #: templates/misago/admin/users/edit.html:78
-#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:590
+#: templates/misago/admin/users/edit.html:184 users/forms/admin.py:604
 msgid "Yes"
 msgid "Yes"
 msgstr "是"
 msgstr "是"
 
 
@@ -525,7 +525,7 @@ msgstr "是"
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:164 threads/permissions/threads.py:178
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:189 threads/permissions/threads.py:205
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
 #: threads/permissions/threads.py:216 threads/permissions/threads.py:247
-#: users/forms/admin.py:591 users/models/user.py:145
+#: users/forms/admin.py:605 users/models/user.py:147
 msgid "No"
 msgid "No"
 msgstr "否"
 msgstr "否"
 
 
@@ -623,7 +623,72 @@ msgstr "必须包括字母或者数字"
 msgid "Value is too long."
 msgid "Value is too long."
 msgstr "过长"
 msgstr "过长"
 
 
+#: legal/admin.py:25 templates/misago/admin/users/edit.html:216
+msgid "Agreements"
+msgstr ""
+
+#: legal/api.py:18
+msgid "You have already accepted this agreement."
+msgstr ""
+
+#: legal/api.py:27
+msgid "You need to submit a valid choice."
+msgstr ""
+
+#: legal/forms.py:10 legal/forms.py:60
+#: templates/misago/admin/agreements/list.html:18
+#: templates/misago/admin/attachmenttypes/list.html:16
+#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:589
+msgid "Type"
+msgstr "类型"
+
+#: legal/forms.py:12 templates/misago/admin/agreements/list.html:16
+#: templates/misago/admin/ranks/list.html:17
+msgid "Title"
+msgstr "标题"
+
+#: legal/forms.py:13
+msgid "Optional, leave empty for agreement to be named after its type."
+msgstr ""
+
+#: legal/forms.py:17
+msgid "Set as active for its type"
+msgstr ""
+
+#: legal/forms.py:19
+msgid ""
+"If other agreement is already active for this type, it will be unset and "
+"replaced with this one. Misago will ask users who didn't accept this "
+"agreement to do so before allowing them to continue using the site's "
+"features."
+msgstr ""
+
+#: legal/forms.py:27
+msgid "Link"
+msgstr ""
+
+#: legal/forms.py:28
+msgid "If your agreement is located on other page, enter here a link to it."
+msgstr ""
+
+#: legal/forms.py:32
+msgid "Text"
+msgstr ""
+
+#: legal/forms.py:33
+msgid "You can use Markdown syntax for rich text elements."
+msgstr ""
+
+#: legal/forms.py:46
+msgid "Please fill in agreement link or text."
+msgstr ""
+
+#: legal/forms.py:65
+msgid "Content"
+msgstr ""
+
 #: legal/migrations/0001_initial.py:16
 #: legal/migrations/0001_initial.py:16
+#: legal/migrations/0003_create_agreements_from_settings.py:57
 msgid "Legal information"
 msgid "Legal information"
 msgstr "法律信息"
 msgstr "法律信息"
 
 
@@ -666,7 +731,7 @@ msgstr "您的论坛可以有自定义的服务条款页面。如果要创建它
 msgid "Policy title"
 msgid "Policy title"
 msgstr "政策标题"
 msgstr "政策标题"
 
 
-#: legal/migrations/0001_initial.py:64 legal/views.py:46
+#: legal/migrations/0001_initial.py:64 legal/models.py:43
 #: templates/misago/footer.html:27
 #: templates/misago/footer.html:27
 msgid "Privacy policy"
 msgid "Privacy policy"
 msgstr "隐私政策"
 msgstr "隐私政策"
@@ -690,21 +755,85 @@ msgid ""
 msgstr "您的论坛可以有隐私政策页面。可以在此处粘贴他的内容。可使用框架标记语言"
 msgstr "您的论坛可以有隐私政策页面。可以在此处粘贴他的内容。可使用框架标记语言"
 
 
 #: legal/migrations/0001_initial.py:105
 #: legal/migrations/0001_initial.py:105
+#: legal/migrations/0003_create_agreements_from_settings.py:62
 msgid "Footnote"
 msgid "Footnote"
 msgstr "补充说明"
 msgstr "补充说明"
 
 
 #: legal/migrations/0001_initial.py:106
 #: legal/migrations/0001_initial.py:106
+#: legal/migrations/0003_create_agreements_from_settings.py:63
 msgid "Short message displayed in forum footer."
 msgid "Short message displayed in forum footer."
 msgstr "展示在论坛底部的短消息"
 msgstr "展示在论坛底部的短消息"
 
 
 #: legal/migrations/0001_initial.py:107
 #: legal/migrations/0001_initial.py:107
+#: legal/migrations/0003_create_agreements_from_settings.py:64
 msgid "Forum footer"
 msgid "Forum footer"
 msgstr "论坛底部"
 msgstr "论坛底部"
 
 
-#: legal/views.py:65 templates/misago/footer.html:22
+#: legal/migrations/0003_create_agreements_from_settings.py:58
+msgid ""
+"Those settings allow you to set additional legal information for your forum."
+msgstr ""
+
+#: legal/models.py:42 templates/misago/footer.html:22
 msgid "Terms of service"
 msgid "Terms of service"
 msgstr "服务条款"
 msgstr "服务条款"
 
 
+#: legal/views/admin.py:17
+msgid "Requested agreement does not exist."
+msgstr ""
+
+#: legal/views/admin.py:29 threads/views/admin/attachments.py:24
+#: users/views/admin/bans.py:24 users/views/admin/datadownloads.py:20
+#: users/views/admin/users.py:56
+msgid "From newest"
+msgstr "从最新注册的"
+
+#: legal/views/admin.py:30 threads/views/admin/attachments.py:25
+#: users/views/admin/bans.py:25 users/views/admin/datadownloads.py:21
+#: users/views/admin/users.py:57
+msgid "From oldest"
+msgstr "从最早注册的"
+
+#: legal/views/admin.py:33
+msgid "With agreements: 0"
+msgstr ""
+
+#: legal/views/admin.py:34
+msgid "Select agreements"
+msgstr ""
+
+#: legal/views/admin.py:38
+msgid "Delete agreements"
+msgstr ""
+
+#: legal/views/admin.py:39
+msgid "Are you sure you want to delete those agreements?"
+msgstr ""
+
+#: legal/views/admin.py:49
+msgid "Selected agreements have been deleted."
+msgstr ""
+
+#: legal/views/admin.py:53
+#, python-format
+msgid "New agreement \"%(title)s\" has been saved."
+msgstr ""
+
+#: legal/views/admin.py:63
+#, python-format
+msgid "Agreement \"%(title)s\" has been edited."
+msgstr ""
+
+#: legal/views/admin.py:77
+#, python-format
+msgid "Agreement \"%(title)s\" has been deleted."
+msgstr ""
+
+#: legal/views/admin.py:85
+#, python-format
+msgid "Agreement \"%(title)s\" has been set as active for type \"%(type)s\"."
+msgstr ""
+
 #: markup/finalise.py:22
 #: markup/finalise.py:22
 #, python-format
 #, python-format
 msgid "%(title)s has written:"
 msgid "%(title)s has written:"
@@ -714,15 +843,15 @@ msgstr "%(title)s 说:"
 msgid "Quoted message:"
 msgid "Quoted message:"
 msgstr "引用消息"
 msgstr "引用消息"
 
 
-#: project_template/project_name/settings.py:388
+#: project_template/project_name/settings.py:424
 msgid "Personal"
 msgid "Personal"
 msgstr "个人"
 msgstr "个人"
 
 
-#: project_template/project_name/settings.py:397
+#: project_template/project_name/settings.py:433
 msgid "Contact"
 msgid "Contact"
 msgstr "联系"
 msgstr "联系"
 
 
-#: project_template/project_name/settings.py:405 users/models/ban.py:76
+#: project_template/project_name/settings.py:441 users/models/ban.py:76
 msgid "IP address"
 msgid "IP address"
 msgstr "IP地址"
 msgstr "IP地址"
 
 
@@ -821,6 +950,98 @@ msgstr "激活失败"
 msgid "Your account can't be activated at this time."
 msgid "Your account can't be activated at this time."
 msgstr "您的账号本次不能被激活。"
 msgstr "您的账号本次不能被激活。"
 
 
+#: templates/misago/admin/agreements/form.html:9
+#: templates/misago/admin/agreements/form.html:18
+#: templates/misago/admin/agreements/form.html:28
+#: templates/misago/admin/agreements/list.html:9
+msgid "New agreement"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:43
+#: templates/misago/admin/categoryroles/form.html:43
+#: templates/misago/admin/roles/form.html:43
+msgid "Basic settings"
+msgstr "基本设置"
+
+#: templates/misago/admin/agreements/form.html:51
+msgid "Agreement contents"
+msgstr ""
+
+#: templates/misago/admin/agreements/form.html:54
+msgid "Fill in one of the fields."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:19
+msgid "Created"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:20
+msgid "Modified"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:33
+#, python-format
+msgid "Active %(type)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:52
+#, python-format
+msgid "%(created_on)s by %(created_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:68
+#, python-format
+msgid "%(last_modified_on)s by %(last_modified_by)s"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:72
+msgid "never"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:78
+msgid "Set as active"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:88
+#: templates/misago/admin/attachmenttypes/list.html:54
+#: templates/misago/admin/bans/list.html:55
+#: templates/misago/admin/categories/list.html:66
+#: templates/misago/admin/categoryroles/list.html:27
+#: templates/misago/admin/ranks/list.html:99
+#: templates/misago/admin/roles/list.html:43
+#: templates/misago/admin/warnings/list.html:109
+#: templates/misago/poll/results.html:69
+#: templates/misago/profile/details.html:24
+#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
+msgid "Edit"
+msgstr "编辑"
+
+#: templates/misago/admin/agreements/list.html:94
+#: templates/misago/admin/bans/list.html:61
+msgid "Remove"
+msgstr "移除"
+
+#: templates/misago/admin/agreements/list.html:106
+msgid "No agreements matching search criteria have been found"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:108
+msgid "No agreements are currently set."
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:119
+msgid "Are you sure you want to set this agreement as active for its type?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:124
+msgid "Are you sure you want to delete this agreement?"
+msgstr ""
+
+#: templates/misago/admin/agreements/list.html:133
+#: templates/misago/admin/bans/list.html:95
+msgid "Search bans"
+msgstr "搜索封禁"
+
 #: templates/misago/admin/attachments/list.html:7
 #: templates/misago/admin/attachments/list.html:7
 msgid "Attachment"
 msgid "Attachment"
 msgstr "附件"
 msgstr "附件"
@@ -831,11 +1052,8 @@ msgstr "主题帖"
 
 
 #: templates/misago/admin/attachments/list.html:42
 #: templates/misago/admin/attachments/list.html:42
 #, python-format
 #, python-format
-msgid ""
-"%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s from "
-"%(uploader_ip)s."
+msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s %(uploaded_on)s."
 msgstr ""
 msgstr ""
-"%(filetype)s, %(size)s, 上传者%(uploader)s %(uploaded_on)s 源IP:%(uploader_ip)s."
 
 
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachments/list.html:53
 #: templates/misago/admin/attachmenttypes/list.html:47
 #: templates/misago/admin/attachmenttypes/list.html:47
@@ -885,11 +1103,6 @@ msgstr "基本选项"
 msgid "Availability"
 msgid "Availability"
 msgstr "可用性(权限)"
 msgstr "可用性(权限)"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:16
-#: templates/misago/admin/bans/list.html:17 users/forms/admin.py:575
-msgid "Type"
-msgstr "类型"
-
 #: templates/misago/admin/attachmenttypes/list.html:17
 #: templates/misago/admin/attachmenttypes/list.html:17
 msgid "Extensions"
 msgid "Extensions"
 msgstr "扩展"
 msgstr "扩展"
@@ -902,19 +1115,6 @@ msgstr "MIME类型"
 msgid "Files"
 msgid "Files"
 msgstr "文件"
 msgstr "文件"
 
 
-#: templates/misago/admin/attachmenttypes/list.html:54
-#: templates/misago/admin/bans/list.html:55
-#: templates/misago/admin/categories/list.html:66
-#: templates/misago/admin/categoryroles/list.html:27
-#: templates/misago/admin/ranks/list.html:99
-#: templates/misago/admin/roles/list.html:43
-#: templates/misago/admin/warnings/list.html:109
-#: templates/misago/poll/results.html:69
-#: templates/misago/profile/details.html:24
-#: templates/misago/thread/posts/post/footer.html:31 users/djangoadmin.py:54
-msgid "Edit"
-msgstr "编辑"
-
 #: templates/misago/admin/attachmenttypes/list.html:71
 #: templates/misago/admin/attachmenttypes/list.html:71
 msgid "No attachment types are currently defined."
 msgid "No attachment types are currently defined."
 msgstr "当前没有定义任何附件类型。"
 msgstr "当前没有定义任何附件类型。"
@@ -931,12 +1131,12 @@ msgid "New ban"
 msgstr "新的封禁"
 msgstr "新的封禁"
 
 
 #: templates/misago/admin/bans/form.html:43
 #: templates/misago/admin/bans/form.html:43
-#: templates/misago/admin/users/ban.html:53
+#: templates/misago/admin/users/ban.html:57
 msgid "Ban settings"
 msgid "Ban settings"
 msgstr "封禁设置"
 msgstr "封禁设置"
 
 
 #: templates/misago/admin/bans/form.html:52
 #: templates/misago/admin/bans/form.html:52
-#: templates/misago/admin/users/ban.html:60
+#: templates/misago/admin/users/ban.html:64
 msgid "Messages"
 msgid "Messages"
 msgstr "消息"
 msgstr "消息"
 
 
@@ -944,8 +1144,8 @@ msgstr "消息"
 msgid "Ban"
 msgid "Ban"
 msgstr "封禁"
 msgstr "封禁"
 
 
-#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:493
-#: users/forms/admin.py:546
+#: templates/misago/admin/bans/list.html:18 users/forms/admin.py:488
+#: users/forms/admin.py:560
 msgid "Expires on"
 msgid "Expires on"
 msgstr "过期于"
 msgstr "过期于"
 
 
@@ -958,10 +1158,6 @@ msgstr "%(check_type)s, 只允许注册"
 msgid "Never"
 msgid "Never"
 msgstr "从不"
 msgstr "从不"
 
 
-#: templates/misago/admin/bans/list.html:61
-msgid "Remove"
-msgstr "移除"
-
 #: templates/misago/admin/bans/list.html:73
 #: templates/misago/admin/bans/list.html:73
 msgid "No bans matching search criteria have been found"
 msgid "No bans matching search criteria have been found"
 msgstr "没有符合搜索要求的封禁"
 msgstr "没有符合搜索要求的封禁"
@@ -974,10 +1170,6 @@ msgstr "目前没有设置封禁"
 msgid "Are you sure you want to remove this ban?"
 msgid "Are you sure you want to remove this ban?"
 msgstr "确认移除此封禁?"
 msgstr "确认移除此封禁?"
 
 
-#: templates/misago/admin/bans/list.html:95
-msgid "Search bans"
-msgstr "搜索封禁"
-
 #: templates/misago/admin/base_thin.html:8
 #: templates/misago/admin/base_thin.html:8
 msgid "Misago Administration"
 msgid "Misago Administration"
 msgstr "论坛框架管理"
 msgstr "论坛框架管理"
@@ -1111,11 +1303,6 @@ msgstr "确认放弃所有更改?"
 msgid "New role"
 msgid "New role"
 msgstr "新身份"
 msgstr "新身份"
 
 
-#: templates/misago/admin/categoryroles/form.html:43
-#: templates/misago/admin/roles/form.html:43
-msgid "Basic settings"
-msgstr "基本设置"
-
 #: templates/misago/admin/categoryroles/list.html:16
 #: templates/misago/admin/categoryroles/list.html:16
 msgid "Category role"
 msgid "Category role"
 msgstr "版块身份"
 msgstr "版块身份"
@@ -1153,6 +1340,61 @@ msgstr ""
 msgid "Change settings"
 msgid "Change settings"
 msgstr "更改设置"
 msgstr "更改设置"
 
 
+#: templates/misago/admin/datadownloads/form.html:6
+#: templates/misago/admin/datadownloads/form.html:11
+#: templates/misago/admin/datadownloads/form.html:17
+msgid "Request new data downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:9
+msgid "Request new downloads"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:17
+#: templates/misago/admin/users/list.html:17 users/forms/admin.py:696
+msgid "User"
+msgstr "用户"
+
+#: templates/misago/admin/datadownloads/list.html:18 threads/forms.py:56
+#: users/forms/admin.py:691
+msgid "Status"
+msgstr "状态"
+
+#: templates/misago/admin/datadownloads/list.html:19
+msgid "Requested on"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:21 users/forms/admin.py:700
+msgid "Requested by"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:32
+#: templates/misago/admin/datadownloads/list.html:49
+#: templates/misago/admin/datadownloads/list.html:52
+#: templates/misago/admin/users/ban.html:35
+#: templates/misago/admin/users/edit.html:113
+#: templates/misago/admin/users/list.html:35
+#: templates/misago/userslists/active_posters.html:66
+msgid "Avatar"
+msgstr "头像"
+
+#: templates/misago/admin/datadownloads/list.html:73
+#: templates/misago/emails/data_download.html:11 users/apps.py:50
+msgid "Download data"
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:84
+msgid "No data downloads matching search criteria have been found."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:86
+msgid "No data downloads exist at the moment."
+msgstr ""
+
+#: templates/misago/admin/datadownloads/list.html:93
+msgid "Search data downloads"
+msgstr ""
+
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/admin/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 #: templates/misago/errorpages/403.html:5
 msgid "Page not available"
 msgid "Page not available"
@@ -1308,44 +1550,73 @@ msgstr "最后"
 msgid "Administration Home"
 msgid "Administration Home"
 msgstr "管理员主页"
 msgstr "管理员主页"
 
 
-#: templates/misago/admin/index.html:33
+#: templates/misago/admin/index.html:22
+msgid "System checks"
+msgstr ""
+
+#: templates/misago/admin/index.html:26
+msgid "MISAGO_ADDRESS setting appears to be correct."
+msgstr ""
+
+#: templates/misago/admin/index.html:30
+msgid "The settings.py value for MISAGO_ADDRESS appears to be incorrect."
+msgstr ""
+
+#: templates/misago/admin/index.html:38
+#, python-format
+msgid ""
+"Your MISAGO_ADDRESS is set to %(configured_address)s while correct value "
+"appears to be %(correct_address)s."
+msgstr ""
+
+#: templates/misago/admin/index.html:42 templates/misago/admin/index.html:47
+msgid ""
+"Misago uses this setting to build correct links in e-mails sent to site "
+"users."
+msgstr ""
+
+#: templates/misago/admin/index.html:46
+msgid "The settings.py is missing MISAGO_ADDRESS value."
+msgstr ""
+
+#: templates/misago/admin/index.html:60
 msgid "Misago version"
 msgid "Misago version"
 msgstr "论坛框架版本"
 msgstr "论坛框架版本"
 
 
-#: templates/misago/admin/index.html:56
+#: templates/misago/admin/index.html:83
 msgid "Check version"
 msgid "Check version"
 msgstr "检查版本"
 msgstr "检查版本"
 
 
-#: templates/misago/admin/index.html:62
+#: templates/misago/admin/index.html:89
 msgid "This feature requires \"packaging\" python module."
 msgid "This feature requires \"packaging\" python module."
 msgstr "此功能需要\"packaging\" Python模块"
 msgstr "此功能需要\"packaging\" Python模块"
 
 
-#: templates/misago/admin/index.html:76
+#: templates/misago/admin/index.html:103
 msgid "DB Contents"
 msgid "DB Contents"
 msgstr "数据库内容"
 msgstr "数据库内容"
 
 
-#: templates/misago/admin/index.html:87
+#: templates/misago/admin/index.html:114
 #: templates/misago/admin/users/delete.html:36
 #: templates/misago/admin/users/delete.html:36
-#: templates/misago/admin/users/list.html:23
+#: templates/misago/admin/users/list.html:24
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: templates/misago/profile/posts.html:5 templates/misago/profile/posts.html:8
 #: threads/migrations/0002_threads_settings.py:48
 #: threads/migrations/0002_threads_settings.py:48
-#: threads/migrations/0004_update_settings.py:48 users/apps.py:83
+#: threads/migrations/0004_update_settings.py:48 users/apps.py:91
 msgid "Posts"
 msgid "Posts"
 msgstr "发帖"
 msgstr "发帖"
 
 
-#: templates/misago/admin/index.html:91 templates/misago/navbar.html:40
+#: templates/misago/admin/index.html:118 templates/misago/navbar.html:40
 #: templates/misago/userslists/base.html:5
 #: templates/misago/userslists/base.html:5
-#: templates/misago/userslists/base.html:14 users/admin.py:70
+#: templates/misago/userslists/base.html:14 users/admin.py:80
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0002_users_settings.py:16
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 #: users/migrations/0006_update_settings.py:17 users/search.py:18
 msgid "Users"
 msgid "Users"
 msgstr "用户"
 msgstr "用户"
 
 
-#: templates/misago/admin/index.html:96
+#: templates/misago/admin/index.html:123
 msgid "Inactive users"
 msgid "Inactive users"
 msgstr "冻结用户"
 msgstr "冻结用户"
 
 
-#: templates/misago/admin/index.html:122
+#: templates/misago/admin/index.html:149
 msgid "Checking..."
 msgid "Checking..."
 msgstr "检查中…"
 msgstr "检查中…"
 
 
@@ -1373,7 +1644,7 @@ msgstr "請再試一次。"
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "用户名或电子邮件"
 msgstr "用户名或电子邮件"
 
 
-#: templates/misago/admin/login.html:62 users/forms/admin.py:60
+#: templates/misago/admin/login.html:62 users/forms/admin.py:62
 #: users/forms/auth.py:59
 #: users/forms/auth.py:59
 msgid "Password"
 msgid "Password"
 msgstr "密码"
 msgstr "密码"
@@ -1418,17 +1689,13 @@ msgid "Display and visibility"
 msgstr "显示和可见性"
 msgstr "显示和可见性"
 
 
 #: templates/misago/admin/ranks/list.html:16
 #: templates/misago/admin/ranks/list.html:16
-#: templates/misago/admin/users/list.html:21
+#: templates/misago/admin/users/list.html:22
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:95
 #: templates/misago/userslists/active_posters.html:106
 #: templates/misago/userslists/active_posters.html:106
-#: users/forms/admin.py:236
+#: users/forms/admin.py:238
 msgid "Rank"
 msgid "Rank"
 msgstr "级别"
 msgstr "级别"
 
 
-#: templates/misago/admin/ranks/list.html:17
-msgid "Title"
-msgstr "标题"
-
 #: templates/misago/admin/ranks/list.html:18
 #: templates/misago/admin/ranks/list.html:18
 msgid "Special"
 msgid "Special"
 msgstr "特别"
 msgstr "特别"
@@ -1470,7 +1737,7 @@ msgid "No user roles are currently defined."
 msgstr "目前没有定义用户身份。"
 msgstr "目前没有定义用户身份。"
 
 
 #: templates/misago/admin/users/ban.html:6
 #: templates/misago/admin/users/ban.html:6
-#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:72
+#: templates/misago/admin/users/ban.html:11 users/views/admin/users.py:73
 msgid "Ban users"
 msgid "Ban users"
 msgstr "封禁用户"
 msgstr "封禁用户"
 
 
@@ -1478,14 +1745,11 @@ msgstr "封禁用户"
 msgid "Ban selected users:"
 msgid "Ban selected users:"
 msgstr "封禁所选用户:"
 msgstr "封禁所选用户:"
 
 
-#: templates/misago/admin/users/ban.html:35
-#: templates/misago/admin/users/edit.html:113
-#: templates/misago/admin/users/list.html:34
-#: templates/misago/userslists/active_posters.html:66
-msgid "Avatar"
-msgstr "头像"
+#: templates/misago/admin/users/ban.html:48
+msgid "IP not available"
+msgstr ""
 
 
-#: templates/misago/admin/users/ban.html:72
+#: templates/misago/admin/users/ban.html:76
 msgid "Set bans"
 msgid "Set bans"
 msgstr "设置封禁"
 msgstr "设置封禁"
 
 
@@ -1580,6 +1844,18 @@ msgstr ""
 msgid "No staff message is available."
 msgid "No staff message is available."
 msgstr "没有可用的工作人员消息。"
 msgstr "没有可用的工作人员消息。"
 
 
+#: templates/misago/admin/users/edit.html:220
+msgid "Agreement"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:221
+msgid "Accepted on"
+msgstr ""
+
+#: templates/misago/admin/users/edit.html:239
+msgid "This user didn't accept any agreements."
+msgstr ""
+
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/list.html:9
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:6
 #: templates/misago/admin/users/new.html:11
 #: templates/misago/admin/users/new.html:11
@@ -1587,51 +1863,55 @@ msgstr "没有可用的工作人员消息。"
 msgid "New user"
 msgid "New user"
 msgstr "新用户"
 msgstr "新用户"
 
 
-#: templates/misago/admin/users/list.html:17
-msgid "User"
-msgstr "用户"
-
-#: templates/misago/admin/users/list.html:20
+#: templates/misago/admin/users/list.html:20 users/signals.py:30
 msgid "E-mail"
 msgid "E-mail"
 msgstr "电子邮件"
 msgstr "电子邮件"
 
 
-#: templates/misago/admin/users/list.html:22
+#: templates/misago/admin/users/list.html:21
+msgid "IP Address"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:23
 msgid "Joined"
 msgid "Joined"
 msgstr "加入"
 msgstr "加入"
 
 
-#: templates/misago/admin/users/list.html:39
+#: templates/misago/admin/users/list.html:40
 msgid "Is deleting their account"
 msgid "Is deleting their account"
 msgstr ""
 msgstr ""
 
 
-#: templates/misago/admin/users/list.html:43
+#: templates/misago/admin/users/list.html:44
 msgid "Is disabled by administrator"
 msgid "Is disabled by administrator"
 msgstr "被管理员禁用"
 msgstr "被管理员禁用"
 
 
-#: templates/misago/admin/users/list.html:54
+#: templates/misago/admin/users/list.html:55
 msgid "Requires activation by administrator"
 msgid "Requires activation by administrator"
 msgstr "需要管理员激活"
 msgstr "需要管理员激活"
 
 
-#: templates/misago/admin/users/list.html:56
+#: templates/misago/admin/users/list.html:57
 msgid "Has to activate account"
 msgid "Has to activate account"
 msgstr "必须激活账号"
 msgstr "必须激活账号"
 
 
-#: templates/misago/admin/users/list.html:63
+#: templates/misago/admin/users/list.html:64
 msgid "Super administrator"
 msgid "Super administrator"
 msgstr "超级管理员"
 msgstr "超级管理员"
 
 
-#: templates/misago/admin/users/list.html:65
+#: templates/misago/admin/users/list.html:66
 msgid "Administrator"
 msgid "Administrator"
 msgstr "管理员"
 msgstr "管理员"
 
 
-#: templates/misago/admin/users/list.html:90
+#: templates/misago/admin/users/list.html:78
+msgid "IP removed"
+msgstr ""
+
+#: templates/misago/admin/users/list.html:98
 msgid "Edit user"
 msgid "Edit user"
 msgstr "编辑用户"
 msgstr "编辑用户"
 
 
-#: templates/misago/admin/users/list.html:99
+#: templates/misago/admin/users/list.html:107
 msgid "No users matching search criteria have been found."
 msgid "No users matching search criteria have been found."
 msgstr "没有找到匹配搜索条件的用户。"
 msgstr "没有找到匹配搜索条件的用户。"
 
 
-#: templates/misago/admin/users/list.html:105
+#: templates/misago/admin/users/list.html:113
 msgid "Search users"
 msgid "Search users"
 msgstr "搜索用户"
 msgstr "搜索用户"
 
 
@@ -1835,6 +2115,29 @@ msgstr "要更改您的账号密码,请单击下面的链接:"
 msgid "Set new password"
 msgid "Set new password"
 msgstr "设置新密码"
 msgstr "设置新密码"
 
 
+#: templates/misago/emails/data_download.html:6
+#: templates/misago/emails/data_download.txt:6
+#, python-format
+msgid ""
+"%(user)s, you are receiving this message because your data is ready for "
+"download."
+msgstr ""
+
+#: templates/misago/emails/data_download.html:14
+#: templates/misago/emails/data_download.txt:15
+#, python-format
+msgid ""
+"This link will remain active for %(expires_in)s hour from the time this "
+"message has been sent."
+msgid_plural ""
+"This link will remain active for %(expires_in)s hours from the time this "
+"message has been sent."
+msgstr[0] ""
+
+#: templates/misago/emails/data_download.txt:10
+msgid "To download your data, click the following link:"
+msgstr ""
+
 #: templates/misago/emails/privatethread/added.html:9
 #: templates/misago/emails/privatethread/added.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
@@ -1920,9 +2223,9 @@ msgstr "您的账号被激活后,您可以通过以下链接登录。"
 #: templates/misago/emails/thread/reply.html:9
 #: templates/misago/emails/thread/reply.html:9
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread %(thread)s that you are subscribed to."
 "the thread %(thread)s that you are subscribed to."
-msgstr "%(user)s您收到这个消息,因为%(poster)s回复了您订阅的主题帖%(thread)s。"
+msgstr ""
 
 
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.html:14
 #: templates/misago/emails/thread/reply.txt:10
 #: templates/misago/emails/thread/reply.txt:10
@@ -1936,9 +2239,9 @@ msgstr "去回帖"
 #: templates/misago/emails/thread/reply.txt:6
 #: templates/misago/emails/thread/reply.txt:6
 #, python-format
 #, python-format
 msgid ""
 msgid ""
-"%(user)s, you are receiving this message because %(poster)s has replied to "
+"%(user)s, you are receiving this message because %(sender)s has replied to "
 "the thread \"%(thread)s\" that you are subscribed to."
 "the thread \"%(thread)s\" that you are subscribed to."
-msgstr "%(user)s,您收到这个消息,因为%(poster)s回复了您订阅的主题帖\"%(thread)s\"。"
+msgstr ""
 
 
 #: templates/misago/errorpages/403.html:40
 #: templates/misago/errorpages/403.html:40
 msgid "This page is not available."
 msgid "This page is not available."
@@ -2163,7 +2466,7 @@ msgstr "查看结果"
 
 
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:5
 #: templates/misago/profile/ban_details.html:8
 #: templates/misago/profile/ban_details.html:8
-#: templates/misago/profile/ban_details.html:15 users/apps.py:120
+#: templates/misago/profile/ban_details.html:15 users/apps.py:128
 msgid "Ban details"
 msgid "Ban details"
 msgstr "封禁细节"
 msgstr "封禁细节"
 
 
@@ -2208,7 +2511,7 @@ msgstr[0] "已发起 %(threads)s 主题帖。"
 
 
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:5
 #: templates/misago/profile/details.html:8
 #: templates/misago/profile/details.html:8
-#: templates/misago/profile/details.html:18 users/apps.py:107
+#: templates/misago/profile/details.html:18 users/apps.py:115
 msgid "Details"
 msgid "Details"
 msgstr "详情"
 msgstr "详情"
 
 
@@ -2236,7 +2539,7 @@ msgid "This error is caused by invalid post content manipulation."
 msgstr "此错误是由无效的帖子内容操作引起的。"
 msgstr "此错误是由无效的帖子内容操作引起的。"
 
 
 #: templates/misago/profile/followers.html:5
 #: templates/misago/profile/followers.html:5
-#: templates/misago/profile/followers.html:8 users/apps.py:95
+#: templates/misago/profile/followers.html:8 users/apps.py:103
 msgid "Followers"
 msgid "Followers"
 msgstr "关注者"
 msgstr "关注者"
 
 
@@ -2262,7 +2565,7 @@ msgid "%(username)s has no followers."
 msgstr "%(username)s没有关注者。"
 msgstr "%(username)s没有关注者。"
 
 
 #: templates/misago/profile/follows.html:5
 #: templates/misago/profile/follows.html:5
-#: templates/misago/profile/follows.html:8 users/apps.py:101
+#: templates/misago/profile/follows.html:8 users/apps.py:109
 msgid "Follows"
 msgid "Follows"
 msgstr "关注"
 msgstr "关注"
 
 
@@ -2343,7 +2646,7 @@ msgid "%(username)s started no threads."
 msgstr "%(username)s没有发起任何主题帖。"
 msgstr "%(username)s没有发起任何主题帖。"
 
 
 #: templates/misago/profile/username_history.html:5
 #: templates/misago/profile/username_history.html:5
-#: templates/misago/profile/username_history.html:8 users/apps.py:113
+#: templates/misago/profile/username_history.html:8 users/apps.py:121
 msgid "Username history"
 msgid "Username history"
 msgstr "用户名历史记录"
 msgstr "用户名历史记录"
 
 
@@ -2368,6 +2671,20 @@ msgstr "您的用户名从未更改。"
 msgid "%(username)s's username was never changed."
 msgid "%(username)s's username was never changed."
 msgstr "%(username)s的用户名从未改变。"
 msgstr "%(username)s的用户名从未改变。"
 
 
+#: templates/misago/required_agreement.html:9
+#, python-format
+msgid "Please review the updated %(agreement)s:"
+msgstr ""
+
+#: templates/misago/required_agreement.html:19
+msgid "here"
+msgstr ""
+
+#: templates/misago/required_agreement.html:21
+#, python-format
+msgid "Please review the updated %(agreement)s available %(link)s."
+msgstr ""
+
 #: templates/misago/search.html:5 templates/misago/search.html:8
 #: templates/misago/search.html:5 templates/misago/search.html:8
 msgid "Search site"
 msgid "Search site"
 msgstr "搜索网站"
 msgstr "搜索网站"
@@ -2483,10 +2800,6 @@ msgstr "被%(hidden_by)s隐藏于%(hidden_on)s。"
 msgid "By %(event_by)s on %(event_on)s."
 msgid "By %(event_by)s on %(event_on)s."
 msgstr "被%(event_by)s于%(event_on)s."
 msgstr "被%(event_by)s于%(event_on)s."
 
 
-#: templates/misago/thread/posts/event/info.html:34
-msgid "IP recorded"
-msgstr "IP记录"
-
 #: templates/misago/thread/posts/post/attachments.html:33
 #: templates/misago/thread/posts/post/attachments.html:33
 #, python-format
 #, python-format
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
 msgid "%(filetype)s, %(size)s, uploaded by %(uploader)s on %(uploaded_on)s."
@@ -2608,7 +2921,7 @@ msgstr[0] "%(replies)s条回帖,最后一条于 %(last_post_on)s。"
 
 
 #: templates/misago/thread/thread.html:24
 #: templates/misago/thread/thread.html:24
 msgid "Answered."
 msgid "Answered."
-msgstr ""
+msgstr "已回答。"
 
 
 #: templates/misago/thread/thread.html:24
 #: templates/misago/thread/thread.html:24
 msgid "Closed."
 msgid "Closed."
@@ -2632,7 +2945,7 @@ msgstr ""
 
 
 #: templates/misago/thread/toolbar-top.html:26
 #: templates/misago/thread/toolbar-top.html:26
 msgid "Best answer"
 msgid "Best answer"
-msgstr ""
+msgstr "最佳答案"
 
 
 #: templates/misago/threadslist/base.html:63
 #: templates/misago/threadslist/base.html:63
 msgid "There are no threads in this category."
 msgid "There are no threads in this category."
@@ -2693,7 +3006,7 @@ msgstr "新职位"
 
 
 #: templates/misago/threadslist/thread.html:59
 #: templates/misago/threadslist/thread.html:59
 msgid "Answered"
 msgid "Answered"
-msgstr ""
+msgstr "已回答"
 
 
 #: templates/misago/threadslist/thread.html:139
 #: templates/misago/threadslist/thread.html:139
 msgid "Poll"
 msgid "Poll"
@@ -2760,11 +3073,11 @@ msgstr "附件"
 msgid "Attachment types"
 msgid "Attachment types"
 msgstr "附件类型"
 msgstr "附件类型"
 
 
-#: threads/api/attachments.py:19
+#: threads/api/attachments.py:20
 msgid "You don't have permission to upload new files."
 msgid "You don't have permission to upload new files."
 msgstr "您没有上传新文件的权限。"
 msgstr "您没有上传新文件的权限。"
 
 
-#: threads/api/attachments.py:29
+#: threads/api/attachments.py:30
 msgid "No file has been uploaded."
 msgid "No file has been uploaded."
 msgstr "没有上传文件。"
 msgstr "没有上传文件。"
 
 
@@ -2772,24 +3085,24 @@ msgstr "没有上传文件。"
 msgid "Uploaded image was corrupted or invalid."
 msgid "Uploaded image was corrupted or invalid."
 msgstr "上传的图像已损坏或无效。"
 msgstr "上传的图像已损坏或无效。"
 
 
-#: threads/api/attachments.py:81
+#: threads/api/attachments.py:83
 msgid "You can't upload files of this type."
 msgid "You can't upload files of this type."
 msgstr "您无法上传此类型的文件。"
 msgstr "您无法上传此类型的文件。"
 
 
-#: threads/api/attachments.py:86
+#: threads/api/attachments.py:88
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 "You can't upload files larger than %(limit)s (your file has %(upload)s)."
 msgstr "您不能上传大于%(limit)s的文件(您的文件有%(upload)s)。"
 msgstr "您不能上传大于%(limit)s的文件(您的文件有%(upload)s)。"
 
 
-#: threads/api/attachments.py:96
+#: threads/api/attachments.py:98
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't upload files of this type larger than %(limit)s (your file has "
 "You can't upload files of this type larger than %(limit)s (your file has "
 "%(upload)s)."
 "%(upload)s)."
 msgstr "您不能上传大于%(limit)s的此类型的文件(您的文件有%(upload)s)。"
 msgstr "您不能上传大于%(limit)s的此类型的文件(您的文件有%(upload)s)。"
 
 
-#: threads/api/postendpoints/edits.py:89
+#: threads/api/postendpoints/edits.py:88
 msgid "Edits record is unavailable for this post."
 msgid "Edits record is unavailable for this post."
 msgstr "此帖子无法编辑记录。"
 msgstr "此帖子无法编辑记录。"
 
 
@@ -2805,12 +3118,12 @@ msgstr "您不能在此主题帖中移动帖子。"
 msgid "You can't like posts in this category."
 msgid "You can't like posts in this category."
 msgstr "您不能赞这个版块的帖子。"
 msgstr "您不能赞这个版块的帖子。"
 
 
-#: threads/api/postendpoints/patch_post.py:108
+#: threads/api/postendpoints/patch_post.py:107
 #: threads/api/threadendpoints/patch.py:130
 #: threads/api/threadendpoints/patch.py:130
 msgid "Content approval can't be reversed."
 msgid "Content approval can't be reversed."
 msgstr "内容审批不能撤销。"
 msgstr "内容审批不能撤销。"
 
 
-#: threads/api/postendpoints/patch_post.py:186
+#: threads/api/postendpoints/patch_post.py:185
 msgid "One or more posts to update could not be found."
 msgid "One or more posts to update could not be found."
 msgstr "无法找到一条或多条要更新的帖子。"
 msgstr "无法找到一条或多条要更新的帖子。"
 
 
@@ -2823,7 +3136,7 @@ msgstr "您不能从这条主题帖拆分帖子。"
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgid "You don't have permission to remove \"%(attachment)s\" attachment."
 msgstr "您没有权限删除 \"%(attachment)s\"附件。"
 msgstr "您没有权限删除 \"%(attachment)s\"附件。"
 
 
-#: threads/api/postingendpoint/attachments.py:128
+#: threads/api/postingendpoint/attachments.py:127
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "You can't attach more than %(limit_value)s file to single post (added "
 "You can't attach more than %(limit_value)s file to single post (added "
@@ -2893,11 +3206,11 @@ msgstr[0] "您不能再添加%(users)s用户到私人主题帖(您已经添加
 msgid "One or more users could not be found: %(usernames)s"
 msgid "One or more users could not be found: %(usernames)s"
 msgstr "找不到用户:%(usernames)s"
 msgstr "找不到用户:%(usernames)s"
 
 
-#: threads/api/postingendpoint/reply.py:81 threads/validators.py:80
+#: threads/api/postingendpoint/reply.py:83 threads/validators.py:80
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "您必须输入消息。"
 msgstr "您必须输入消息。"
 
 
-#: threads/api/postingendpoint/reply.py:103 threads/validators.py:41
+#: threads/api/postingendpoint/reply.py:105 threads/validators.py:41
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "您必须输入主题帖标题。"
 msgstr "您必须输入主题帖标题。"
 
 
@@ -2912,7 +3225,7 @@ msgstr "目前没有允许新主题帖的版块可供您使用。"
 
 
 #: threads/api/threadendpoints/patch.py:54
 #: threads/api/threadendpoints/patch.py:54
 msgid "Not a valid string."
 msgid "Not a valid string."
-msgstr ""
+msgstr "不是有效的字符串。"
 
 
 #: threads/api/threadendpoints/patch.py:74
 #: threads/api/threadendpoints/patch.py:74
 msgid "You can't change globally pinned threads weights in this category."
 msgid "You can't change globally pinned threads weights in this category."
@@ -2939,17 +3252,17 @@ msgstr "您没有权限打开此主题帖。"
 #: threads/api/threadendpoints/patch.py:301
 #: threads/api/threadendpoints/patch.py:301
 #: threads/api/threadendpoints/patch.py:331
 #: threads/api/threadendpoints/patch.py:331
 msgid "A valid integer is required."
 msgid "A valid integer is required."
-msgstr ""
+msgstr "需要一个有效的整数。"
 
 
 #: threads/api/threadendpoints/patch.py:219
 #: threads/api/threadendpoints/patch.py:219
 msgid "This post is already marked as thread's best answer."
 msgid "This post is already marked as thread's best answer."
-msgstr ""
+msgstr "这个帖子已被标记为该主题的最佳答案。"
 
 
 #: threads/api/threadendpoints/patch.py:252
 #: threads/api/threadendpoints/patch.py:252
 msgid ""
 msgid ""
 "This post can't be unmarked because it's not currently marked as best "
 "This post can't be unmarked because it's not currently marked as best "
 "answer."
 "answer."
-msgstr ""
+msgstr "这篇文章不能被取消标记,因为它目前没有被标记为最佳答案。"
 
 
 #: threads/api/threadendpoints/patch.py:277
 #: threads/api/threadendpoints/patch.py:277
 msgid "You have to enter new participant's username."
 msgid "You have to enter new participant's username."
@@ -2974,9 +3287,9 @@ msgstr "该用户已经是主题帖所有者。"
 
 
 #: threads/api/threadendpoints/patch.py:447
 #: threads/api/threadendpoints/patch.py:447
 msgid "One or more threads to update could not be found."
 msgid "One or more threads to update could not be found."
-msgstr ""
+msgstr "找不到一个或多个要更新的线程。"
 
 
-#: threads/api/threadpoll.py:53
+#: threads/api/threadpoll.py:54
 msgid "There's already a poll in this thread."
 msgid "There's already a poll in this thread."
 msgstr "此主题帖已存在一个调查。"
 msgstr "此主题帖已存在一个调查。"
 
 
@@ -3012,7 +3325,7 @@ msgstr "文件名包含"
 msgid "File type"
 msgid "File type"
 msgstr "文件类型"
 msgstr "文件类型"
 
 
-#: threads/forms.py:24 users/forms/admin.py:595
+#: threads/forms.py:24 users/forms/admin.py:609
 msgid "State"
 msgid "State"
 msgstr "状态"
 msgstr "状态"
 
 
@@ -3036,10 +3349,6 @@ msgstr "文件扩展名"
 msgid "Maximum allowed uploaded file size"
 msgid "Maximum allowed uploaded file size"
 msgstr "最大允许上传的大小"
 msgstr "最大允许上传的大小"
 
 
-#: threads/forms.py:56
-msgid "Status"
-msgstr "状态"
-
 #: threads/forms.py:57
 #: threads/forms.py:57
 msgid "Limit uploads to"
 msgid "Limit uploads to"
 msgstr "将上传权限限制于"
 msgstr "将上传权限限制于"
@@ -3090,7 +3399,7 @@ msgstr ""
 
 
 #: threads/mergeconflict.py:57
 #: threads/mergeconflict.py:57
 msgid "Unmark all best answers"
 msgid "Unmark all best answers"
-msgstr ""
+msgstr "取消标记所有最佳答案"
 
 
 #: threads/mergeconflict.py:76
 #: threads/mergeconflict.py:76
 msgid "Delete all polls"
 msgid "Delete all polls"
@@ -3218,7 +3527,7 @@ msgstr "可以下载附件"
 
 
 #: threads/permissions/bestanswers.py:29
 #: threads/permissions/bestanswers.py:29
 msgid "Best answers"
 msgid "Best answers"
-msgstr ""
+msgstr "最佳答案"
 
 
 #: threads/permissions/bestanswers.py:32
 #: threads/permissions/bestanswers.py:32
 msgid "Can mark posts as best answers"
 msgid "Can mark posts as best answers"
@@ -3292,13 +3601,13 @@ msgstr ""
 msgid ""
 msgid ""
 "You don't have permission to change this thread's marked answer because you "
 "You don't have permission to change this thread's marked answer because you "
 "are not a thread starter."
 "are not a thread starter."
-msgstr ""
+msgstr "因为您不是主题发起人,所有您无权更改此主题的最佳答案。"
 
 
 #: threads/permissions/bestanswers.py:221
 #: threads/permissions/bestanswers.py:221
 msgid ""
 msgid ""
 "You don't have permission to change this thread's best answer because a "
 "You don't have permission to change this thread's best answer because a "
 "moderator has protected it."
 "moderator has protected it."
-msgstr ""
+msgstr "您没有权限更改此主题的最佳答案,因为主持人已对其进行了保护。"
 
 
 #: threads/permissions/bestanswers.py:232
 #: threads/permissions/bestanswers.py:232
 msgid "You have to sign in to unmark best answers."
 msgid "You have to sign in to unmark best answers."
@@ -3648,7 +3957,7 @@ msgstr "允许比洪水攻击保护更频繁的发帖。"
 msgid "Can see threads"
 msgid "Can see threads"
 msgstr "可以看到主题帖"
 msgstr "可以看到主题帖"
 
 
-#: threads/permissions/threads.py:110 users/forms/admin.py:166
+#: threads/permissions/threads.py:110 users/forms/admin.py:168
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0002_users_settings.py:144
 #: users/migrations/0006_update_settings.py:130
 #: users/migrations/0006_update_settings.py:130
 msgid "Started threads"
 msgid "Started threads"
@@ -4525,6 +4834,14 @@ msgstr "存在不合法投票选项。"
 msgid "You have to make a choice."
 msgid "You have to make a choice."
 msgstr "您必须做出选择。"
 msgstr "您必须做出选择。"
 
 
+#: threads/signals.py:177
+msgid "Question"
+msgstr ""
+
+#: threads/signals.py:178
+msgid "Choices"
+msgstr ""
+
 #: threads/templatetags/misago_poststags.py:20
 #: threads/templatetags/misago_poststags.py:20
 #, python-format
 #, python-format
 msgid "%(user)s likes this."
 msgid "%(user)s likes this."
@@ -4654,23 +4971,13 @@ msgstr "您没有权限查看未批准的内容列表。"
 msgid "Requested attachment could not be found."
 msgid "Requested attachment could not be found."
 msgstr "无法找到请求的附件。"
 msgstr "无法找到请求的附件。"
 
 
-#: threads/views/admin/attachments.py:24 users/views/admin/bans.py:24
-#: users/views/admin/users.py:55
-msgid "From newest"
-msgstr "从最新注册的"
-
-#: threads/views/admin/attachments.py:25 users/views/admin/bans.py:25
-#: users/views/admin/users.py:56
-msgid "From oldest"
-msgstr "从最早注册的"
-
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
 #: threads/views/admin/attachments.py:26 users/views/admin/bans.py:26
-#: users/views/admin/users.py:57
+#: users/views/admin/users.py:58
 msgid "A to z"
 msgid "A to z"
 msgstr "用户名A到z"
 msgstr "用户名A到z"
 
 
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
 #: threads/views/admin/attachments.py:27 users/views/admin/bans.py:27
-#: users/views/admin/users.py:58
+#: users/views/admin/users.py:59
 msgid "Z to a"
 msgid "Z to a"
 msgstr "用户名Z到a"
 msgstr "用户名Z到a"
 
 
@@ -4739,33 +5046,37 @@ msgid ""
 "post."
 "post."
 msgstr "您必须有批准内容的权限才能前往第一条未批准的帖子。"
 msgstr "您必须有批准内容的权限才能前往第一条未批准的帖子。"
 
 
-#: users/admin.py:79
+#: users/admin.py:89
 msgid "User Accounts"
 msgid "User Accounts"
 msgstr "用户账号"
 msgstr "用户账号"
 
 
-#: users/admin.py:87
+#: users/admin.py:97
 msgid "Ranks"
 msgid "Ranks"
 msgstr "级别"
 msgstr "级别"
 
 
-#: users/admin.py:96
+#: users/admin.py:106
 msgid "Bans"
 msgid "Bans"
 msgstr "封禁"
 msgstr "封禁"
 
 
+#: users/admin.py:115
+msgid "Data downloads"
+msgstr ""
+
 #: users/api/auth.py:100
 #: users/api/auth.py:100
 #, python-format
 #, python-format
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgid "Activate %(user)s account on %(forum_name)s forums"
 msgstr "在%(forum_name)s论坛启用%(user)s账号"
 msgstr "在%(forum_name)s论坛启用%(user)s账号"
 
 
-#: users/api/auth.py:139
+#: users/api/auth.py:138
 #, python-format
 #, python-format
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgid "Change %(user)s password on %(forum_name)s forums"
 msgstr "在%(forum_name)s论坛更改%(user)s密码"
 msgstr "在%(forum_name)s论坛更改%(user)s密码"
 
 
-#: users/api/auth.py:180
+#: users/api/auth.py:178
 msgid "Form link is invalid. Please try again."
 msgid "Form link is invalid. Please try again."
 msgstr "表单链接无效。请再试一次。"
 msgstr "表单链接无效。请再试一次。"
 
 
-#: users/api/auth.py:181
+#: users/api/auth.py:179
 msgid "Your link has expired. Please request new one."
 msgid "Your link has expired. Please request new one."
 msgstr "您的链接已过期,请申请新的。"
 msgstr "您的链接已过期,请申请新的。"
 
 
@@ -4835,15 +5146,15 @@ msgstr "电子邮件更改确认链接已经发送到新地址。"
 msgid "Confirm password change on %(forum_name)s forums"
 msgid "Confirm password change on %(forum_name)s forums"
 msgstr "确认更改%(forum_name)s论坛的密码"
 msgstr "确认更改%(forum_name)s论坛的密码"
 
 
-#: users/api/userendpoints/changepassword.py:31
+#: users/api/userendpoints/changepassword.py:32
 msgid "Password change confirmation link was sent to your address."
 msgid "Password change confirmation link was sent to your address."
 msgstr "密码更改确认链接已经发送到您的地址。"
 msgstr "密码更改确认链接已经发送到您的地址。"
 
 
-#: users/api/userendpoints/create.py:22
+#: users/api/userendpoints/create.py:25
 msgid "New users registrations are currently closed."
 msgid "New users registrations are currently closed."
 msgstr "新用户注册目前已关闭。"
 msgstr "新用户注册目前已关闭。"
 
 
-#: users/api/userendpoints/create.py:53 users/social/pipeline.py:205
+#: users/api/userendpoints/create.py:61 users/social/pipeline.py:215
 msgid "Please try resubmitting the form."
 msgid "Please try resubmitting the form."
 msgstr "请重新尝试提交表单"
 msgstr "请重新尝试提交表单"
 
 
@@ -4868,38 +5179,54 @@ msgstr "更改用户名时出错,请再试一次。"
 msgid "You don't have permission to see other users name history."
 msgid "You don't have permission to see other users name history."
 msgstr "您没有权限查看其他用户名称历史记录。"
 msgstr "您没有权限查看其他用户名称历史记录。"
 
 
-#: users/api/users.py:54
+#: users/api/users.py:57
 msgid "You have to sign in to perform this action."
 msgid "You have to sign in to perform this action."
 msgstr "您必须登录才能执行此操作。"
 msgstr "您必须登录才能执行此操作。"
 
 
-#: users/api/users.py:100
+#: users/api/users.py:103
 msgid "You can't change other users avatars."
 msgid "You can't change other users avatars."
 msgstr "您不能改变其他用户的头像。 "
 msgstr "您不能改变其他用户的头像。 "
 
 
-#: users/api/users.py:107
+#: users/api/users.py:110
 msgid "You can't change other users options."
 msgid "You can't change other users options."
 msgstr "您不能更改其他用户选项。"
 msgstr "您不能更改其他用户选项。"
 
 
-#: users/api/users.py:112
+#: users/api/users.py:115
 msgid "Your forum options have been changed."
 msgid "Your forum options have been changed."
 msgstr "您的论坛设置已更改。"
 msgstr "您的论坛设置已更改。"
 
 
-#: users/api/users.py:119
+#: users/api/users.py:122
 msgid "You can't change other users names."
 msgid "You can't change other users names."
 msgstr "您不能更改其他用户名。"
 msgstr "您不能更改其他用户名。"
 
 
-#: users/api/users.py:126
+#: users/api/users.py:129
 msgid "You can't change other users signatures."
 msgid "You can't change other users signatures."
 msgstr "您不能更改其他用户签名。"
 msgstr "您不能更改其他用户签名。"
 
 
-#: users/api/users.py:133
+#: users/api/users.py:136
 msgid "You can't change other users passwords."
 msgid "You can't change other users passwords."
 msgstr "您不能更改其他用户的密码。"
 msgstr "您不能更改其他用户的密码。"
 
 
-#: users/api/users.py:140
+#: users/api/users.py:143
 msgid "You can't change other users e-mail addresses."
 msgid "You can't change other users e-mail addresses."
 msgstr "您不能更改其他用户的电子邮件地址。"
 msgstr "您不能更改其他用户的电子邮件地址。"
 
 
+#: users/api/users.py:225
+msgid "You can't request data downloads for other users."
+msgstr ""
+
+#: users/api/users.py:228
+msgid "You can't download your data."
+msgstr ""
+
+#: users/api/users.py:232
+msgid "You can't have more than one data download request at single time."
+msgstr ""
+
+#: users/api/users.py:278
+msgid "You can't see other users data downloads."
+msgstr ""
+
 #: users/apps.py:30
 #: users/apps.py:30
 msgid "Edit details"
 msgid "Edit details"
 msgstr "编辑详情"
 msgstr "编辑详情"
@@ -4912,11 +5239,11 @@ msgstr "更改用户名"
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "更改电子邮件或密码"
 msgstr "更改电子邮件或密码"
 
 
-#: users/apps.py:50
+#: users/apps.py:58
 msgid "Delete account"
 msgid "Delete account"
 msgstr ""
 msgstr ""
 
 
-#: users/apps.py:59
+#: users/apps.py:67
 msgid "Active poster"
 msgid "Active poster"
 msgstr ""
 msgstr ""
 
 
@@ -4973,294 +5300,294 @@ msgstr "编辑权限和组"
 msgid "Edit the user from Misago admin panel"
 msgid "Edit the user from Misago admin panel"
 msgstr "在论坛框架管理面版编辑用户"
 msgstr "在论坛框架管理面版编辑用户"
 
 
-#: users/forms/admin.py:21 users/models/ban.py:74
+#: users/forms/admin.py:23 users/models/ban.py:74 users/signals.py:29
 msgid "Username"
 msgid "Username"
 msgstr "用户名"
 msgstr "用户名"
 
 
-#: users/forms/admin.py:22
+#: users/forms/admin.py:24
 msgid "Custom title"
 msgid "Custom title"
 msgstr "自定义标题"
 msgstr "自定义标题"
 
 
-#: users/forms/admin.py:23 users/models/ban.py:75
+#: users/forms/admin.py:25 users/models/ban.py:75
 msgid "E-mail address"
 msgid "E-mail address"
 msgstr "电子邮件地址"
 msgstr "电子邮件地址"
 
 
-#: users/forms/admin.py:52
+#: users/forms/admin.py:54
 msgid "All registered members must have \"Member\" role."
 msgid "All registered members must have \"Member\" role."
 msgstr "所有注册的成员都必须具有“论坛成员”身份。"
 msgstr "所有注册的成员都必须具有“论坛成员”身份。"
 
 
-#: users/forms/admin.py:71
+#: users/forms/admin.py:73
 msgid "Is administrator"
 msgid "Is administrator"
 msgstr "是管理员"
 msgstr "是管理员"
 
 
-#: users/forms/admin.py:73
+#: users/forms/admin.py:75
 msgid ""
 msgid ""
 "Designates whether the user can log into admin sites. If Django admin site "
 "Designates whether the user can log into admin sites. If Django admin site "
 "is enabled, this user will need additional permissions assigned within it to"
 "is enabled, this user will need additional permissions assigned within it to"
 " admin Django modules."
 " admin Django modules."
 msgstr "指定用户是否可以登录到管理员站点。如果Django管理站点启用,用户将需要额外的Django模块的权限。"
 msgstr "指定用户是否可以登录到管理员站点。如果Django管理站点启用,用户将需要额外的Django模块的权限。"
 
 
-#: users/forms/admin.py:79
+#: users/forms/admin.py:81
 msgid "Is superuser"
 msgid "Is superuser"
 msgstr "是超级用户"
 msgstr "是超级用户"
 
 
-#: users/forms/admin.py:81
+#: users/forms/admin.py:83
 msgid ""
 msgid ""
 "Only administrators can access admin sites. In addition to admin site "
 "Only administrators can access admin sites. In addition to admin site "
 "access, superadmins can also change other members admin levels."
 "access, superadmins can also change other members admin levels."
 msgstr "只有管理员可以访问管理页面。另外,超级管理员可以改变其他成员的管理权限。"
 msgstr "只有管理员可以访问管理页面。另外,超级管理员可以改变其他成员的管理权限。"
 
 
-#: users/forms/admin.py:86
+#: users/forms/admin.py:88
 msgid "Is active"
 msgid "Is active"
 msgstr "未冻结"
 msgstr "未冻结"
 
 
-#: users/forms/admin.py:88
+#: users/forms/admin.py:90
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Turning this off "
 "Designates whether this user should be treated as active. Turning this off "
 "is non-destructible way to remove user accounts."
 "is non-destructible way to remove user accounts."
 msgstr "指定该用户是否应被视为未冻结状态。当需要删除用户账号时将它设为“否”来冻结用户账号即可保留数据。"
 msgstr "指定该用户是否应被视为未冻结状态。当需要删除用户账号时将它设为“否”来冻结用户账号即可保留数据。"
 
 
-#: users/forms/admin.py:92 users/forms/admin.py:123 users/forms/admin.py:151
+#: users/forms/admin.py:94 users/forms/admin.py:125 users/forms/admin.py:153
 msgid "Staff message"
 msgid "Staff message"
 msgstr "员工可见消息"
 msgstr "员工可见消息"
 
 
-#: users/forms/admin.py:94
+#: users/forms/admin.py:96
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user's account has "
 "Optional message for forum team members explaining why user's account has "
 "been disabled."
 "been disabled."
 msgstr "呈现给论坛管理团队的说明用户账号被封禁原因的消息。(可选)"
 msgstr "呈现给论坛管理团队的说明用户账号被封禁原因的消息。(可选)"
 
 
-#: users/forms/admin.py:99
+#: users/forms/admin.py:101
 msgid "Change password to"
 msgid "Change password to"
 msgstr "更改密码"
 msgstr "更改密码"
 
 
-#: users/forms/admin.py:106
+#: users/forms/admin.py:108
 msgid "Lock avatar"
 msgid "Lock avatar"
 msgstr "锁头像"
 msgstr "锁头像"
 
 
-#: users/forms/admin.py:108
+#: users/forms/admin.py:110
 msgid ""
 msgid ""
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "Setting this to yes will stop user from changing his/her avatar, and will "
 "reset his/her avatar to procedurally generated one."
 "reset his/her avatar to procedurally generated one."
 msgstr "设置为“是”将阻止用户更改其头像,并将会重置其头像(按照程序生成一个)。"
 msgstr "设置为“是”将阻止用户更改其头像,并将会重置其头像(按照程序生成一个)。"
 
 
-#: users/forms/admin.py:114 users/forms/admin.py:145 users/forms/admin.py:473
-#: users/forms/admin.py:526
+#: users/forms/admin.py:116 users/forms/admin.py:147 users/forms/admin.py:468
+#: users/forms/admin.py:540
 msgid "User message"
 msgid "User message"
 msgstr "用户可见消息"
 msgstr "用户可见消息"
 
 
-#: users/forms/admin.py:116
+#: users/forms/admin.py:118
 msgid ""
 msgid ""
 "Optional message for user explaining why he/she is banned form changing "
 "Optional message for user explaining why he/she is banned form changing "
 "avatar."
 "avatar."
 msgstr "用于向用户说明他被禁止更改头像的原因的消息(可选)。"
 msgstr "用于向用户说明他被禁止更改头像的原因的消息(可选)。"
 
 
-#: users/forms/admin.py:125
+#: users/forms/admin.py:127
 msgid ""
 msgid ""
 "Optional message for forum team members explaining why user is banned form "
 "Optional message for forum team members explaining why user is banned form "
 "changing avatar."
 "changing avatar."
 msgstr "呈现给论坛管理团队的用来说明用户被禁止更改头像的原因的消息(可选)。"
 msgstr "呈现给论坛管理团队的用来说明用户被禁止更改头像的原因的消息(可选)。"
 
 
-#: users/forms/admin.py:133
+#: users/forms/admin.py:135
 msgid "Signature contents"
 msgid "Signature contents"
 msgstr "签名内容"
 msgstr "签名内容"
 
 
-#: users/forms/admin.py:138
+#: users/forms/admin.py:140
 msgid "Lock signature"
 msgid "Lock signature"
 msgstr "锁定签名"
 msgstr "锁定签名"
 
 
-#: users/forms/admin.py:140
+#: users/forms/admin.py:142
 msgid ""
 msgid ""
 "Setting this to yes will stop user from making changes to his/her signature."
 "Setting this to yes will stop user from making changes to his/her signature."
 msgstr "将此设置为“是”将阻止用户更改其签名。"
 msgstr "将此设置为“是”将阻止用户更改其签名。"
 
 
-#: users/forms/admin.py:146
+#: users/forms/admin.py:148
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgid "Optional message to user explaining why his/hers signature is locked."
 msgstr "用来向用户说明其签名被锁定原因的消息。(可选)"
 msgstr "用来向用户说明其签名被锁定原因的消息。(可选)"
 
 
-#: users/forms/admin.py:152
+#: users/forms/admin.py:154
 msgid ""
 msgid ""
 "Optional message to team members explaining why user signature is locked."
 "Optional message to team members explaining why user signature is locked."
 msgstr "呈现给论坛管理团队的说明用户签名被锁定原因的消息。(可选)"
 msgstr "呈现给论坛管理团队的说明用户签名被锁定原因的消息。(可选)"
 
 
-#: users/forms/admin.py:157
+#: users/forms/admin.py:159
 msgid "Hides presence"
 msgid "Hides presence"
 msgstr "隐藏存在"
 msgstr "隐藏存在"
 
 
-#: users/forms/admin.py:160
+#: users/forms/admin.py:162
 msgid "Who can add user to private threads"
 msgid "Who can add user to private threads"
 msgstr "谁可以将用户添加到私有主题帖"
 msgstr "谁可以将用户添加到私有主题帖"
 
 
-#: users/forms/admin.py:169
+#: users/forms/admin.py:171
 msgid "Replid threads"
 msgid "Replid threads"
 msgstr "回复的主题帖"
 msgstr "回复的主题帖"
 
 
-#: users/forms/admin.py:219 users/serializers/moderation.py:42
+#: users/forms/admin.py:221 users/serializers/moderation.py:42
 #, python-format
 #, python-format
 msgid "Signature can't be longer than %(limit)s character."
 msgid "Signature can't be longer than %(limit)s character."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgid_plural "Signature can't be longer than %(limit)s characters."
 msgstr[0] "签名不能超过%(limit)s字符。"
 msgstr[0] "签名不能超过%(limit)s字符。"
 
 
-#: users/forms/admin.py:238
+#: users/forms/admin.py:240
 msgid ""
 msgid ""
 "Ranks are used to group and distinguish users. They are also used to add "
 "Ranks are used to group and distinguish users. They are also used to add "
 "permissions to groups of users."
 "permissions to groups of users."
 msgstr "级别用于分组和区分用户。它们也向用户组添加权限。"
 msgstr "级别用于分组和区分用户。它们也向用户组添加权限。"
 
 
-#: users/forms/admin.py:248
+#: users/forms/admin.py:250
 msgid "Roles"
 msgid "Roles"
 msgstr "身份"
 msgstr "身份"
 
 
-#: users/forms/admin.py:249
+#: users/forms/admin.py:251
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgid "Individual roles of this user. All users must have \"member\" role."
 msgstr "这个用户的个人身份。所有用户都必须有“论坛成员”的身份。"
 msgstr "这个用户的个人身份。所有用户都必须有“论坛成员”的身份。"
 
 
-#: users/forms/admin.py:307
+#: users/forms/admin.py:309
 msgid "Username starts with"
 msgid "Username starts with"
 msgstr "用户名前几位"
 msgstr "用户名前几位"
 
 
-#: users/forms/admin.py:308
+#: users/forms/admin.py:310
 msgid "E-mail starts with"
 msgid "E-mail starts with"
 msgstr "电子邮件前几位"
 msgstr "电子邮件前几位"
 
 
-#: users/forms/admin.py:309
+#: users/forms/admin.py:311
 msgid "Profile fields contain"
 msgid "Profile fields contain"
 msgstr "个人资料包含"
 msgstr "个人资料包含"
 
 
-#: users/forms/admin.py:310
+#: users/forms/admin.py:312
 msgid "Inactive only"
 msgid "Inactive only"
 msgstr "仅限已冻结"
 msgstr "仅限已冻结"
 
 
-#: users/forms/admin.py:311
+#: users/forms/admin.py:313
 msgid "Disabled only"
 msgid "Disabled only"
 msgstr "仅限关闭"
 msgstr "仅限关闭"
 
 
-#: users/forms/admin.py:312
+#: users/forms/admin.py:314
 msgid "Admins only"
 msgid "Admins only"
 msgstr "仅限管理员"
 msgstr "仅限管理员"
 
 
-#: users/forms/admin.py:313
+#: users/forms/admin.py:315
 msgid "Deleting their accounts"
 msgid "Deleting their accounts"
 msgstr ""
 msgstr ""
 
 
-#: users/forms/admin.py:355
+#: users/forms/admin.py:357
 msgid "All ranks"
 msgid "All ranks"
 msgstr "所有级别"
 msgstr "所有级别"
 
 
-#: users/forms/admin.py:362
+#: users/forms/admin.py:364
 msgid "All roles"
 msgid "All roles"
 msgstr "所有身份"
 msgstr "所有身份"
 
 
-#: users/forms/admin.py:369
+#: users/forms/admin.py:371
 msgid "Has rank"
 msgid "Has rank"
 msgstr "具有级别"
 msgstr "具有级别"
 
 
-#: users/forms/admin.py:375
+#: users/forms/admin.py:377
 msgid "Has role"
 msgid "Has role"
 msgstr "拥有身份"
 msgstr "拥有身份"
 
 
-#: users/forms/admin.py:391
+#: users/forms/admin.py:393
 msgid ""
 msgid ""
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "Short and descriptive name of all users with this rank. \"The Team\" or "
 "\"Game Masters\" are good examples."
 "\"Game Masters\" are good examples."
 msgstr "该级别的用户的短的描述性名字。\"团队\"或者\"游戏大师”都是好的例子。"
 msgstr "该级别的用户的短的描述性名字。\"团队\"或者\"游戏大师”都是好的例子。"
 
 
-#: users/forms/admin.py:396
+#: users/forms/admin.py:398
 msgid "User title"
 msgid "User title"
 msgstr "用户名"
 msgstr "用户名"
 
 
-#: users/forms/admin.py:399
+#: users/forms/admin.py:401
 msgid ""
 msgid ""
 "Optional, singular version of rank name displayed by user names. For example"
 "Optional, singular version of rank name displayed by user names. For example"
 " \"GM\" or \"Dev\"."
 " \"GM\" or \"Dev\"."
 msgstr "通过用户名展示的级别名称。例如“游戏大师”或“开发”(可选)。"
 msgstr "通过用户名展示的级别名称。例如“游戏大师”或“开发”(可选)。"
 
 
-#: users/forms/admin.py:409
+#: users/forms/admin.py:411
 msgid ""
 msgid ""
 "Optional description explaining function or status of members distincted "
 "Optional description explaining function or status of members distincted "
 "with this rank."
 "with this rank."
 msgstr "用于解释此级别成员的功能和地位的描述 (可选)"
 msgstr "用于解释此级别成员的功能和地位的描述 (可选)"
 
 
-#: users/forms/admin.py:418
+#: users/forms/admin.py:420
 msgid "Rank can give additional roles to users with it."
 msgid "Rank can give additional roles to users with it."
 msgstr "级别可以为用户提供额外身份。"
 msgstr "级别可以为用户提供额外身份。"
 
 
-#: users/forms/admin.py:423
+#: users/forms/admin.py:425
 msgid "Optional css class added to content belonging to this rank owner."
 msgid "Optional css class added to content belonging to this rank owner."
 msgstr "可选的css类,添加到该等级的用户的内容中。"
 msgstr "可选的css类,添加到该等级的用户的内容中。"
 
 
-#: users/forms/admin.py:426
+#: users/forms/admin.py:428
 msgid "Give rank dedicated tab on users list"
 msgid "Give rank dedicated tab on users list"
 msgstr "给用户列表添加级别专用标签"
 msgstr "给用户列表添加级别专用标签"
 
 
-#: users/forms/admin.py:429
+#: users/forms/admin.py:431
 msgid ""
 msgid ""
 "Selecting this option will make users with this rank easily discoverable by "
 "Selecting this option will make users with this rank easily discoverable by "
 "others through dedicated page on forum users list."
 "others through dedicated page on forum users list."
 msgstr "选择此选项将使得具有此级别的用户可以轻松地被其他人在论坛用户列表专用页上发现。"
 msgstr "选择此选项将使得具有此级别的用户可以轻松地被其他人在论坛用户列表专用页上发现。"
 
 
-#: users/forms/admin.py:454
+#: users/forms/admin.py:456
 msgid "This name collides with other rank."
 msgid "This name collides with other rank."
 msgstr "与其他级别重名。"
 msgstr "与其他级别重名。"
 
 
-#: users/forms/admin.py:461
+#: users/forms/admin.py:463
 msgid "Values to ban"
 msgid "Values to ban"
 msgstr "封禁的值"
 msgstr "封禁的值"
 
 
-#: users/forms/admin.py:464 users/forms/admin.py:579
+#: users/forms/admin.py:471
+msgid "Optional message displayed to users instead of default one."
+msgstr "用来代替默认消息显示给用户的消息。(可选)"
+
+#: users/forms/admin.py:474 users/forms/admin.py:484 users/forms/admin.py:546
+#: users/forms/admin.py:556
+msgid "Message can't be longer than 1000 characters."
+msgstr "消息不能超过1000个字符。"
+
+#: users/forms/admin.py:478 users/forms/admin.py:550
+msgid "Team message"
+msgstr "团队讯息"
+
+#: users/forms/admin.py:481 users/forms/admin.py:553
+msgid "Optional ban message for moderators and administrators."
+msgstr "呈现给管理员和版主的封禁消息。(可选)"
+
+#: users/forms/admin.py:490
+msgid "Leave this field empty for set bans to never expire."
+msgstr "将此字段留空,以使封禁永不到期。"
+
+#: users/forms/admin.py:499 users/forms/admin.py:593
 msgid "Usernames"
 msgid "Usernames"
 msgstr "用户名"
 msgstr "用户名"
 
 
-#: users/forms/admin.py:465 users/forms/admin.py:580
+#: users/forms/admin.py:500 users/forms/admin.py:594
 msgid "E-mails"
 msgid "E-mails"
 msgstr "电子邮件"
 msgstr "电子邮件"
 
 
-#: users/forms/admin.py:466
+#: users/forms/admin.py:501
 msgid "E-mail domains"
 msgid "E-mail domains"
 msgstr "电子邮件域"
 msgstr "电子邮件域"
 
 
-#: users/forms/admin.py:467
+#: users/forms/admin.py:507
 msgid "IP addresses"
 msgid "IP addresses"
 msgstr "IP地址"
 msgstr "IP地址"
 
 
-#: users/forms/admin.py:468
+#: users/forms/admin.py:508
 msgid "First segment of IP addresses"
 msgid "First segment of IP addresses"
 msgstr "IP地址第一段"
 msgstr "IP地址第一段"
 
 
-#: users/forms/admin.py:469
+#: users/forms/admin.py:509
 msgid "First two segments of IP addresses"
 msgid "First two segments of IP addresses"
 msgstr "前两个IP地址段"
 msgstr "前两个IP地址段"
 
 
-#: users/forms/admin.py:476
-msgid "Optional message displayed to users instead of default one."
-msgstr "用来代替默认消息显示给用户的消息。(可选)"
-
-#: users/forms/admin.py:479 users/forms/admin.py:489 users/forms/admin.py:532
-#: users/forms/admin.py:542
-msgid "Message can't be longer than 1000 characters."
-msgstr "消息不能超过1000个字符。"
-
-#: users/forms/admin.py:483 users/forms/admin.py:536
-msgid "Team message"
-msgstr "团队讯息"
-
-#: users/forms/admin.py:486 users/forms/admin.py:539
-msgid "Optional ban message for moderators and administrators."
-msgstr "呈现给管理员和版主的封禁消息。(可选)"
-
-#: users/forms/admin.py:495
-msgid "Leave this field empty for set bans to never expire."
-msgstr "将此字段留空,以使封禁永不到期。"
-
-#: users/forms/admin.py:501
+#: users/forms/admin.py:515
 msgid "Check type"
 msgid "Check type"
 msgstr "检查类型"
 msgstr "检查类型"
 
 
-#: users/forms/admin.py:506
+#: users/forms/admin.py:520
 msgid "Restrict this ban to registrations"
 msgid "Restrict this ban to registrations"
 msgstr "此封禁仅限于注册时"
 msgstr "此封禁仅限于注册时"
 
 
-#: users/forms/admin.py:508
+#: users/forms/admin.py:522
 msgid ""
 msgid ""
 "Changing this to yes will make this ban check be only performed on "
 "Changing this to yes will make this ban check be only performed on "
 "registration step. This is good if you want to block certain registrations "
 "registration step. This is good if you want to block certain registrations "
@@ -5268,61 +5595,84 @@ msgid ""
 "existing users."
 "existing users."
 msgstr "设置为“是”可以使得该封禁只在注册步骤生效。例如,这能帮助您阻止来自近期被攻击的电子邮件提供商的用户注册,而不影响现有的用户。"
 msgstr "设置为“是”可以使得该封禁只在注册步骤生效。例如,这能帮助您阻止来自近期被攻击的电子邮件提供商的用户注册,而不影响现有的用户。"
 
 
-#: users/forms/admin.py:514
+#: users/forms/admin.py:528
 msgid "Banned value"
 msgid "Banned value"
 msgstr "被封禁的值"
 msgstr "被封禁的值"
 
 
-#: users/forms/admin.py:517
+#: users/forms/admin.py:531
 msgid ""
 msgid ""
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "This value is case-insensitive and accepts asterisk (*) for rought matches. "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "For example, making IP ban for value \"83.*\" will ban all IP addresses "
 "beginning with \"83.\"."
 "beginning with \"83.\"."
 msgstr "这个值不区分大小写,并接受*作为通配符。例如,\"83.*\"的封禁将会禁止所有以\"83.\"开头的IP地址。"
 msgstr "这个值不区分大小写,并接受*作为通配符。例如,\"83.*\"的封禁将会禁止所有以\"83.\"开头的IP地址。"
 
 
-#: users/forms/admin.py:522
+#: users/forms/admin.py:536
 msgid "Banned value can't be longer than 250 characters."
 msgid "Banned value can't be longer than 250 characters."
 msgstr "被封禁的值不能超过250个字符。"
 msgstr "被封禁的值不能超过250个字符。"
 
 
-#: users/forms/admin.py:529
+#: users/forms/admin.py:543
 msgid "Optional message displayed to user instead of default one."
 msgid "Optional message displayed to user instead of default one."
 msgstr "代替默认消息显示给用户。(可选)"
 msgstr "代替默认消息显示给用户。(可选)"
 
 
-#: users/forms/admin.py:548
+#: users/forms/admin.py:562
 msgid "Leave this field empty for this ban to never expire."
 msgid "Leave this field empty for this ban to never expire."
 msgstr "不填写此字段,则封禁永不过期。"
 msgstr "不填写此字段,则封禁永不过期。"
 
 
-#: users/forms/admin.py:568
+#: users/forms/admin.py:582
 msgid "Banned value is too vague."
 msgid "Banned value is too vague."
 msgstr "被封禁的值太含糊。"
 msgstr "被封禁的值太含糊。"
 
 
-#: users/forms/admin.py:578
+#: users/forms/admin.py:592
 msgid "All bans"
 msgid "All bans"
 msgstr "所有封禁"
 msgstr "所有封禁"
 
 
-#: users/forms/admin.py:581
+#: users/forms/admin.py:595
 msgid "IPs"
 msgid "IPs"
 msgstr "IPs"
 msgstr "IPs"
 
 
-#: users/forms/admin.py:584
+#: users/forms/admin.py:598
 msgid "Banned value begins with"
 msgid "Banned value begins with"
 msgstr "封禁值开头"
 msgstr "封禁值开头"
 
 
-#: users/forms/admin.py:586
+#: users/forms/admin.py:600
 msgid "Registration only"
 msgid "Registration only"
 msgstr "仅限注册"
 msgstr "仅限注册"
 
 
-#: users/forms/admin.py:589 users/forms/admin.py:598
+#: users/forms/admin.py:603 users/forms/admin.py:612
 msgid "Any"
 msgid "Any"
 msgstr "任何"
 msgstr "任何"
 
 
-#: users/forms/admin.py:599
+#: users/forms/admin.py:613
 msgid "Active"
 msgid "Active"
 msgstr "活动的"
 msgstr "活动的"
 
 
-#: users/forms/admin.py:600
+#: users/forms/admin.py:614 users/models/datadownload.py:26
 msgid "Expired"
 msgid "Expired"
 msgstr "已过期"
 msgstr "已过期"
 
 
+#: users/forms/admin.py:649
+msgid "Usernames or emails"
+msgstr ""
+
+#: users/forms/admin.py:651
+msgid ""
+"Enter every item in new line. Duplicates will be ignored. This field is case"
+" insensitive. Depending on site configuration and amount of data to archive "
+"it may take up to few days for requests to complete. E-mail will "
+"notification will be sent to every user once their download is ready."
+msgstr ""
+
+#: users/forms/admin.py:667
+#, python-format
+msgid ""
+"You may not enter more than 20 items at single time (You have entered "
+"%(show_value)s)."
+msgstr ""
+
+#: users/forms/admin.py:684
+msgid "One or more specified users could not be found."
+msgstr ""
+
 #: users/forms/auth.py:16
 #: users/forms/auth.py:16
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "填写两个字段。"
 msgstr "填写两个字段。"
@@ -5379,18 +5729,27 @@ msgid ""
 "request new password."
 "request new password."
 msgstr "管理员必须激活您的账号,您才能申请新密码。"
 msgstr "管理员必须激活您的账号,您才能申请新密码。"
 
 
-#: users/forms/register.py:27
+#: users/forms/register.py:34
 msgid "This usernane is not allowed."
 msgid "This usernane is not allowed."
 msgstr "此用户名不允许。"
 msgstr "此用户名不允许。"
 
 
-#: users/forms/register.py:38 users/validators.py:41
+#: users/forms/register.py:45 users/validators.py:41
 msgid "This e-mail address is not allowed."
 msgid "This e-mail address is not allowed."
 msgstr "该电子邮件地址是不允许的。"
 msgstr "该电子邮件地址是不允许的。"
 
 
-#: users/forms/register.py:47
+#: users/forms/register.py:51
+msgid "This agreement is required."
+msgstr ""
+
+#: users/forms/register.py:60
 msgid "New registrations from this IP address are not allowed."
 msgid "New registrations from this IP address are not allowed."
 msgstr "不允许从该IP地址新注册。"
 msgstr "不允许从该IP地址新注册。"
 
 
+#: users/management/commands/prepareuserdatadownloads.py:34
+#, python-format
+msgid "%(user)s, your data download is ready"
+msgstr ""
+
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0002_users_settings.py:18
 #: users/migrations/0006_update_settings.py:19
 #: users/migrations/0006_update_settings.py:19
 msgid ""
 msgid ""
@@ -5614,7 +5973,7 @@ msgid "Enter each answer in new line. Answers are case-insensitive."
 msgstr "在新行中输入每个答案。答案不区分大小写。"
 msgstr "在新行中输入每个答案。答案不区分大小写。"
 
 
 #: users/migrations/0004_default_ranks.py:17
 #: users/migrations/0004_default_ranks.py:17
-#: users/migrations/0004_default_ranks.py:18 users/models/user.py:111
+#: users/migrations/0004_default_ranks.py:18 users/models/user.py:113
 msgid "Forum team"
 msgid "Forum team"
 msgstr "论坛团队"
 msgstr "论坛团队"
 
 
@@ -5627,47 +5986,59 @@ msgstr "团队"
 msgid "Members"
 msgid "Members"
 msgstr "论坛成员"
 msgstr "论坛成员"
 
 
-#: users/models/user.py:37
+#: users/models/datadownload.py:23
+msgid "Pending"
+msgstr ""
+
+#: users/models/datadownload.py:24
+msgid "Processing"
+msgstr ""
+
+#: users/models/datadownload.py:25
+msgid "Ready"
+msgstr ""
+
+#: users/models/user.py:38
 msgid "User must have an email address."
 msgid "User must have an email address."
 msgstr "用户必须有一个电子邮件地址。"
 msgstr "用户必须有一个电子邮件地址。"
 
 
-#: users/models/user.py:146
+#: users/models/user.py:148
 msgid "Notify"
 msgid "Notify"
 msgstr "通知"
 msgstr "通知"
 
 
-#: users/models/user.py:147
+#: users/models/user.py:149
 msgid "Notify with e-mail"
 msgid "Notify with e-mail"
 msgstr "通过电子邮件通知"
 msgstr "通过电子邮件通知"
 
 
-#: users/models/user.py:155
+#: users/models/user.py:157
 msgid "Everybody"
 msgid "Everybody"
 msgstr "大家"
 msgstr "大家"
 
 
-#: users/models/user.py:156
+#: users/models/user.py:158
 msgid "Users I follow"
 msgid "Users I follow"
 msgstr "我关注的用户"
 msgstr "我关注的用户"
 
 
-#: users/models/user.py:157
+#: users/models/user.py:159
 msgid "Nobody"
 msgid "Nobody"
 msgstr "没有人"
 msgstr "没有人"
 
 
-#: users/models/user.py:175
+#: users/models/user.py:177
 msgid "joined on"
 msgid "joined on"
 msgstr "加入了"
 msgstr "加入了"
 
 
-#: users/models/user.py:190
+#: users/models/user.py:191
 msgid "staff status"
 msgid "staff status"
 msgstr "员工状态"
 msgstr "员工状态"
 
 
-#: users/models/user.py:192
+#: users/models/user.py:193
 msgid "Designates whether the user can log into admin sites."
 msgid "Designates whether the user can log into admin sites."
 msgstr "指定用户是否可以登录管理站点。"
 msgstr "指定用户是否可以登录管理站点。"
 
 
-#: users/models/user.py:199
+#: users/models/user.py:200
 msgid "active"
 msgid "active"
 msgstr "未冻结"
 msgstr "未冻结"
 
 
-#: users/models/user.py:203
+#: users/models/user.py:204
 msgid ""
 msgid ""
 "Designates whether this user should be treated as active. Unselect this "
 "Designates whether this user should be treated as active. Unselect this "
 "instead of deleting accounts."
 "instead of deleting accounts."
@@ -6018,11 +6389,7 @@ msgstr ""
 msgid "Join IP"
 msgid "Join IP"
 msgstr "创建时IP"
 msgstr "创建时IP"
 
 
-#: users/profilefields/default.py:99
-msgid "Last IP"
-msgstr "最后登录IP"
-
-#: users/registration.py:9
+#: users/registration.py:11
 #, python-format
 #, python-format
 msgid "Welcome on %(forum_name)s forums!"
 msgid "Welcome on %(forum_name)s forums!"
 msgstr "欢迎来到%(forum_name)s论坛!"
 msgstr "欢迎来到%(forum_name)s论坛!"
@@ -6064,14 +6431,30 @@ msgstr "您必须输入新的电子邮件地址。"
 msgid "New e-mail is same as current one."
 msgid "New e-mail is same as current one."
 msgstr "新电子邮件与当前电子邮件相同。"
 msgstr "新电子邮件与当前电子邮件相同。"
 
 
-#: users/social/pipeline.py:74
+#: users/signals.py:31
+msgid "Joined on"
+msgstr ""
+
+#: users/signals.py:32
+msgid "Joined from ip"
+msgstr ""
+
+#: users/signals.py:72
+msgid "New username"
+msgstr ""
+
+#: users/signals.py:73
+msgid "Old username"
+msgstr ""
+
+#: users/social/pipeline.py:77
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "The e-mail address associated with your %(backend)s account is not available"
 "The e-mail address associated with your %(backend)s account is not available"
 " for use on this site."
 " for use on this site."
 msgstr ""
 msgstr ""
 
 
-#: users/social/pipeline.py:83
+#: users/social/pipeline.py:86
 #, python-format
 #, python-format
 msgid ""
 msgid ""
 "Your account has to be activated by site administrator before you will be "
 "Your account has to be activated by site administrator before you will be "
@@ -6165,6 +6548,42 @@ msgstr "封禁\"%(name)s\"已经被编辑。"
 msgid "Ban \"%(name)s\" has been removed."
 msgid "Ban \"%(name)s\" has been removed."
 msgstr "封禁\"%(name)s\"已经被移除。"
 msgstr "封禁\"%(name)s\"已经被移除。"
 
 
+#: users/views/admin/datadownloads.py:23
+msgid "With data downloads: 0"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:24
+msgid "Select data downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:28
+msgid "Expire downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:30
+msgid "Are you sure you want to set selected data downloads as expired?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:34
+msgid "Delete downloads"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:36
+msgid "Are you sure you want to delete selected data downloads?"
+msgstr ""
+
+#: users/views/admin/datadownloads.py:51
+msgid "Selected data downloads have been set as expired."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:57
+msgid "Selected data downloads have been deleted."
+msgstr ""
+
+#: users/views/admin/datadownloads.py:68
+msgid "Data downloads have been requested for specified users."
+msgstr ""
+
 #: users/views/admin/ranks.py:16
 #: users/views/admin/ranks.py:16
 msgid "Requested rank does not exist."
 msgid "Requested rank does not exist."
 msgstr "请求的级别不存在。"
 msgstr "请求的级别不存在。"
@@ -6214,92 +6633,100 @@ msgstr "级别“%(name)s\"已经是默认等级。"
 msgid "Rank \"%(name)s\" has been made default."
 msgid "Rank \"%(name)s\" has been made default."
 msgstr "级别”%(name)s\"已经被设置成默认。"
 msgstr "级别”%(name)s\"已经被设置成默认。"
 
 
-#: users/views/admin/users.py:59
+#: users/views/admin/users.py:60
 msgid "Biggest posters"
 msgid "Biggest posters"
 msgstr "最少发帖。"
 msgstr "最少发帖。"
 
 
-#: users/views/admin/users.py:60
+#: users/views/admin/users.py:61
 msgid "Smallest posters"
 msgid "Smallest posters"
 msgstr "最多发帖"
 msgstr "最多发帖"
 
 
-#: users/views/admin/users.py:62
+#: users/views/admin/users.py:63
 msgid "With users: 0"
 msgid "With users: 0"
 msgstr "用户:0"
 msgstr "用户:0"
 
 
-#: users/views/admin/users.py:63
+#: users/views/admin/users.py:64
 msgid "Select users"
 msgid "Select users"
 msgstr "选择用户"
 msgstr "选择用户"
 
 
-#: users/views/admin/users.py:67
+#: users/views/admin/users.py:68
 msgid "Activate accounts"
 msgid "Activate accounts"
 msgstr "激活账号"
 msgstr "激活账号"
 
 
-#: users/views/admin/users.py:77
+#: users/views/admin/users.py:78
+msgid "Request data download"
+msgstr ""
+
+#: users/views/admin/users.py:83
 msgid "Delete accounts"
 msgid "Delete accounts"
 msgstr "删除账号"
 msgstr "删除账号"
 
 
-#: users/views/admin/users.py:79
+#: users/views/admin/users.py:85
 msgid "Are you sure you want to delete selected users?"
 msgid "Are you sure you want to delete selected users?"
 msgstr "您确定要删除所选用户吗?"
 msgstr "您确定要删除所选用户吗?"
 
 
-#: users/views/admin/users.py:83
+#: users/views/admin/users.py:89
 msgid "Delete all"
 msgid "Delete all"
 msgstr "删除所有"
 msgstr "删除所有"
 
 
-#: users/views/admin/users.py:86
+#: users/views/admin/users.py:92
 msgid ""
 msgid ""
 "Are you sure you want to delete selected users? This will also delete all "
 "Are you sure you want to delete selected users? This will also delete all "
 "content associated with their accounts."
 "content associated with their accounts."
 msgstr "您确定要删除所选用户吗?这也会删除所有和此账号关联的内容。"
 msgstr "您确定要删除所选用户吗?这也会删除所有和此账号关联的内容。"
 
 
-#: users/views/admin/users.py:107
+#: users/views/admin/users.py:113
 msgid "You have to select inactive users."
 msgid "You have to select inactive users."
 msgstr "您必须选择已冻结用户。"
 msgstr "您必须选择已冻结用户。"
 
 
-#: users/views/admin/users.py:114
+#: users/views/admin/users.py:120
 #, python-format
 #, python-format
 msgid "Your account on %(forum_name)s forums has been activated"
 msgid "Your account on %(forum_name)s forums has been activated"
 msgstr "您在 %(forum_name)s 论坛上的账号已经被激活。"
 msgstr "您在 %(forum_name)s 论坛上的账号已经被激活。"
 
 
-#: users/views/admin/users.py:119
+#: users/views/admin/users.py:125
 msgid "Selected users accounts have been activated."
 msgid "Selected users accounts have been activated."
 msgstr "选中的用户已经被激活。"
 msgstr "选中的用户已经被激活。"
 
 
-#: users/views/admin/users.py:125
+#: users/views/admin/users.py:131
 #, python-format
 #, python-format
 msgid "%(user)s is super admin and can't be banned."
 msgid "%(user)s is super admin and can't be banned."
 msgstr "%(user)s是超级管理员,不能被封禁。"
 msgstr "%(user)s是超级管理员,不能被封禁。"
 
 
-#: users/views/admin/users.py:186
+#: users/views/admin/users.py:194
 msgid "Selected users have been banned."
 msgid "Selected users have been banned."
 msgstr "选中的用户已经被封禁。"
 msgstr "选中的用户已经被封禁。"
 
 
-#: users/views/admin/users.py:201 users/views/admin/users.py:215
-#: users/views/admin/users.py:331
+#: users/views/admin/users.py:212
+msgid "Data download requests have been placed for selected users."
+msgstr ""
+
+#: users/views/admin/users.py:217 users/views/admin/users.py:230
+#: users/views/admin/users.py:346
 msgid "You can't delete yourself."
 msgid "You can't delete yourself."
 msgstr "您不能删除自己。"
 msgstr "您不能删除自己。"
 
 
-#: users/views/admin/users.py:203 users/views/admin/users.py:217
-#: users/views/admin/users.py:334
+#: users/views/admin/users.py:219 users/views/admin/users.py:232
+#: users/views/admin/users.py:349
 #, python-format
 #, python-format
 msgid "%(user)s is admin and can't be deleted."
 msgid "%(user)s is admin and can't be deleted."
 msgstr "%(user)s是管理员,不能被删除。"
 msgstr "%(user)s是管理员,不能被删除。"
 
 
-#: users/views/admin/users.py:209
+#: users/views/admin/users.py:225
 msgid "Selected users have been deleted."
 msgid "Selected users have been deleted."
 msgstr "选中的用户已经被删除"
 msgstr "选中的用户已经被删除"
 
 
-#: users/views/admin/users.py:232
+#: users/views/admin/users.py:247
 #, python-format
 #, python-format
 msgid "New user \"%(user)s\" has been registered."
 msgid "New user \"%(user)s\" has been registered."
 msgstr "新用户\"%(user)s\"已经被注册。"
 msgstr "新用户\"%(user)s\"已经被注册。"
 
 
-#: users/views/admin/users.py:261
+#: users/views/admin/users.py:276
 #, python-format
 #, python-format
 msgid "User \"%(user)s\" has been edited."
 msgid "User \"%(user)s\" has been edited."
 msgstr "用户\"%(user)s\"已经被编辑。"
 msgstr "用户\"%(user)s\"已经被编辑。"
 
 
-#: users/views/admin/users.py:328
+#: users/views/admin/users.py:343
 msgid "This action can't be accessed directly."
 msgid "This action can't be accessed directly."
 msgstr ""
 msgstr ""
 
 

BIN
misago/locale/zh_Hans/LC_MESSAGES/djangojs.mo


+ 300 - 222
misago/locale/zh_Hans/LC_MESSAGES/djangojs.po

@@ -8,9 +8,9 @@ msgid ""
 msgstr ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-05-20 21:20+0200\n"
+"POT-Creation-Date: 2018-08-19 15:33+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: mayne <dreama9ain@gmail.com>, 2017\n"
+"Last-Translator: cxgreat2014 <fwy1998@gmail.com>, 2018\n"
 "Language-Team: Chinese (China) (https://www.transifex.com/misago/teams/65369/zh_CN/)\n"
 "Language-Team: Chinese (China) (https://www.transifex.com/misago/teams/65369/zh_CN/)\n"
 "MIME-Version: 1.0\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -39,8 +39,30 @@ msgid "Promise can't be resolved itself"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:1
 #: static/misago/js/misago.js:1
-msgid "By registering you agree to site's terms and conditions."
-msgstr "通过注册,您同意网站的条款和条件。"
+msgid "the terms of service"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "the privacy policy"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "I have read and accept %(agreement)s."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid ""
+"Declining will result in immediate deactivation and deletion of your "
+"account. This action is not reversible."
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Decline"
+msgstr ""
+
+#: static/misago/js/misago.js:1
+msgid "Accept and continue"
+msgstr ""
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
@@ -48,11 +70,12 @@ msgstr "通过注册,您同意网站的条款和条件。"
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:12
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:13 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Close"
 msgid "Close"
 msgstr "未订阅"
 msgstr "未订阅"
 
 
-#: static/misago/js/misago.js:1 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:1 static/misago/js/misago.js:6
 msgid "Add participant"
 msgid "Add participant"
 msgstr "添加参与者"
 msgstr "添加参与者"
 
 
@@ -70,9 +93,10 @@ msgstr "要添加用户"
 
 
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:1 static/misago/js/misago.js:2
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:6 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:6 static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Cancel"
 msgid "Cancel"
 msgstr "取消"
 msgstr "取消"
 
 
@@ -192,8 +216,8 @@ msgid "Generate my individual avatar"
 msgstr "自动生成"
 msgstr "自动生成"
 
 
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
 #: static/misago/js/misago.js:2 static/misago/js/misago.js:4
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "Ok"
 msgid "Ok"
 msgstr "Ok"
 msgstr "Ok"
 
 
@@ -261,39 +285,39 @@ msgstr "插入代码"
 msgid "Emphase selection"
 msgid "Emphase selection"
 msgstr "重点选择"
 msgstr "重点选择"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert horizontal ruler"
 msgid "Insert horizontal ruler"
 msgstr "插入水平尺"
 msgstr "插入水平尺"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link to image"
 msgid "Enter link to image"
 msgstr "输入图像链接"
 msgstr "输入图像链接"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter image label (optional)"
 msgid "Enter image label (optional)"
 msgstr "输入图片标签(可选)"
 msgstr "输入图片标签(可选)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert image"
 msgid "Insert image"
 msgstr "插入图像"
 msgstr "插入图像"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link address"
 msgid "Enter link address"
 msgstr "输入链接地址"
 msgstr "输入链接地址"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter link label (optional)"
 msgid "Enter link label (optional)"
 msgstr "输入链接标签(可选)"
 msgstr "输入链接标签(可选)"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert link"
 msgid "Insert link"
 msgstr "插入链接"
 msgstr "插入链接"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Enter quote autor, prefix usernames with @"
 msgid "Enter quote autor, prefix usernames with @"
 msgstr "输入报价autor,前缀用户名@"
 msgstr "输入报价autor,前缀用户名@"
 
 
-#: static/misago/js/misago.js:2
+#: static/misago/js/misago.js:3
 msgid "Insert quote"
 msgid "Insert quote"
 msgstr "插入报价"
 msgstr "插入报价"
 
 
@@ -325,7 +349,7 @@ msgstr "撤消删除"
 msgid "Error uploading %(filename)s"
 msgid "Error uploading %(filename)s"
 msgstr "上传错误%(filename)s"
 msgstr "上传错误%(filename)s"
 
 
-#: static/misago/js/misago.js:3 static/misago/js/misago.js:8
+#: static/misago/js/misago.js:3 static/misago/js/misago.js:9
 msgid "Dismiss"
 msgid "Dismiss"
 msgstr "解散"
 msgstr "解散"
 
 
@@ -342,7 +366,7 @@ msgid "Protected"
 msgstr "受保护"
 msgstr "受保护"
 
 
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:3 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Protect"
 msgid "Protect"
 msgstr "保护"
 msgstr "保护"
 
 
@@ -369,7 +393,7 @@ msgstr "(成功)"
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:17
 #: static/misago/js/misago.js:17
 msgid "Best answer"
 msgid "Best answer"
-msgstr ""
+msgstr "最佳答案"
 
 
 #: static/misago/js/misago.js:4
 #: static/misago/js/misago.js:4
 msgid ""
 msgid ""
@@ -377,7 +401,7 @@ msgid ""
 " deleted during the merge."
 " deleted during the merge."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:18
 msgid "Poll"
 msgid "Poll"
 msgstr "调查"
 msgstr "调查"
 
 
@@ -392,12 +416,13 @@ msgid "Are you sure you want to delete all polls?"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Merge threads"
 msgid "Merge threads"
 msgstr "合并主题帖"
 msgstr "合并主题帖"
 
 
 #: static/misago/js/misago.js:4
 #: static/misago/js/misago.js:4
 msgid "Search returned no results."
 msgid "Search returned no results."
-msgstr ""
+msgstr "没有找到任何结果。"
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:14
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:14
 msgid "Search"
 msgid "Search"
@@ -416,8 +441,7 @@ msgstr ""
 msgid "%(title)s, joined on %(joined_on)s"
 msgid "%(title)s, joined on %(joined_on)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "Change username"
 msgid "Change username"
 msgstr "更改用户名"
 msgstr "更改用户名"
 
 
@@ -448,7 +472,7 @@ msgstr[0] "已使用更改次数于%(name_changes_expire)s天后重新可用。"
 msgid "Your new username is same as current one."
 msgid "Your new username is same as current one."
 msgstr "您的新用户名与当前用户名相同。"
 msgstr "您的新用户名与当前用户名相同。"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:4 static/misago/js/misago.js:13
 msgid "New username"
 msgid "New username"
 msgstr "新用户名"
 msgstr "新用户名"
 
 
@@ -457,15 +481,15 @@ msgid "Your username has been changed successfully."
 msgstr "您的用户名已成功更改。"
 msgstr "您的用户名已成功更改。"
 
 
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
 #: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change your options"
 msgid "Change your options"
 msgstr "更改您的选项"
 msgstr "更改您的选项"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5
 msgid "Enter your password to confirm account deletion."
 msgid "Enter your password to confirm account deletion."
-msgstr ""
+msgstr "输入您的密码以确认删除您的账户。"
 
 
-#: static/misago/js/misago.js:4 static/misago/js/misago.js:5
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:13
 msgid "Delete account"
 msgid "Delete account"
 msgstr "删除帐户"
 msgstr "删除帐户"
 
 
@@ -473,35 +497,82 @@ msgstr "删除帐户"
 msgid ""
 msgid ""
 "You are going to delete your account. This action is nonreversible, and will"
 "You are going to delete your account. This action is nonreversible, and will"
 " result in following data being deleted:"
 " result in following data being deleted:"
-msgstr ""
+msgstr "您将要删除您的帐户。此操作是不可逆的,并且会导致以下数据被删除:"
 
 
 #: static/misago/js/misago.js:5
 #: static/misago/js/misago.js:5
 msgid ""
 msgid ""
 "Stored IP addresses associated with content that you have posted will be "
 "Stored IP addresses associated with content that you have posted will be "
 "deleted."
 "deleted."
-msgstr ""
+msgstr "与您发布的内容相关联的IP地址记录将被删除。"
 
 
 #: static/misago/js/misago.js:5
 #: static/misago/js/misago.js:5
 msgid ""
 msgid ""
 "Your username will become available for other user to rename to or for new "
 "Your username will become available for other user to rename to or for new "
 "user to register their account with."
 "user to register their account with."
-msgstr ""
+msgstr "您的用户名将可供其他用户重新命名,或供新用户注册其帐户。"
 
 
 #: static/misago/js/misago.js:5
 #: static/misago/js/misago.js:5
 msgid "Your e-mail will become available for use in new account registration."
 msgid "Your e-mail will become available for use in new account registration."
-msgstr ""
+msgstr "您的电子邮件将可用于新帐户注册。"
 
 
 #: static/misago/js/misago.js:5
 #: static/misago/js/misago.js:5
 msgid ""
 msgid ""
 "All your posted content will NOT be deleted, but username associated with it"
 "All your posted content will NOT be deleted, but username associated with it"
 " will be changed to one shared by all deleted accounts."
 " will be changed to one shared by all deleted accounts."
-msgstr ""
+msgstr "您发布的所有内容都不会被删除,但与其关联的用户名将被更改为由所有已删除帐户共享的用户名。"
 
 
 #: static/misago/js/misago.js:5
 #: static/misago/js/misago.js:5
 msgid "Delete my account"
 msgid "Delete my account"
+msgstr "删除我的帐户"
+
+#: static/misago/js/misago.js:5
+msgid "Your request for data download has been registered."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:5 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:5
+msgid "Download your data"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"To download your data from the site, click the \"Request data download\" "
+"button. Depending on amount of data to be archived and number of users "
+"wanting to download their data at same time it may take up to few days for "
+"your download to be prepared. An e-mail with notification will be sent to "
+"you when your data is ready to be downloaded."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid ""
+"The download will only be available for limited amount of time, after which "
+"it will be deleted from the site and marked as expired."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Requested on"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "You have no data downloads."
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Request data download"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is being prepared"
+msgstr ""
+
+#: static/misago/js/misago.js:5
+msgid "Download is expired"
+msgstr ""
+
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:12
 msgid "Your details have been updated."
 msgid "Your details have been updated."
 msgstr "您的信息已更新"
 msgstr "您的信息已更新"
 
 
@@ -584,7 +655,7 @@ msgstr "我发起的主题帖"
 msgid "Threads I reply to"
 msgid "Threads I reply to"
 msgstr "我回复的主题帖"
 msgstr "我回复的主题帖"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:5 static/misago/js/misago.js:6
 msgid "Change email or password"
 msgid "Change email or password"
 msgstr "更改电子邮件或密码"
 msgstr "更改电子邮件或密码"
 
 
@@ -592,11 +663,11 @@ msgstr "更改电子邮件或密码"
 msgid ""
 msgid ""
 "You need to set a password for your account to be able to change your "
 "You need to set a password for your account to be able to change your "
 "username or email."
 "username or email."
-msgstr ""
+msgstr "您需要为您的帐户设置密码才能更改您的用户名或电子邮件地址。"
 
 
 #: static/misago/js/misago.js:5
 #: static/misago/js/misago.js:5
 msgid "Set password"
 msgid "Set password"
-msgstr ""
+msgstr "设置密码"
 
 
 #: static/misago/js/misago.js:5 static/misago/js/misago.js:15
 #: static/misago/js/misago.js:5 static/misago/js/misago.js:15
 msgid "Fill out all fields."
 msgid "Fill out all fields."
@@ -634,7 +705,7 @@ msgstr "新密码"
 msgid "Repeat password"
 msgid "Repeat password"
 msgstr "重复输入密码"
 msgstr "重复输入密码"
 
 
-#: static/misago/js/misago.js:5
+#: static/misago/js/misago.js:6
 msgid "Change forgotten password"
 msgid "Change forgotten password"
 msgstr "忘记密码"
 msgstr "忘记密码"
 
 
@@ -814,20 +885,20 @@ msgid "%(votes)s vote."
 msgid_plural "%(votes)s votes."
 msgid_plural "%(votes)s votes."
 msgstr[0] "%(votes)s票"
 msgstr[0] "%(votes)s票"
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Votes are public."
 msgid "Votes are public."
 msgstr "投票是公开的。"
 msgstr "投票是公开的。"
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid "%(votes)s vote, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgid_plural "%(votes)s votes, %(proc)s% of total."
 msgstr[0] "%(votes)s投票,%(proc)s占总数的百分比。"
 msgstr[0] "%(votes)s投票,%(proc)s占总数的百分比。"
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "Your choice."
 msgid "Your choice."
 msgstr "您的选择。"
 msgstr "您的选择。"
 
 
-#: static/misago/js/misago.js:6
+#: static/misago/js/misago.js:7
 msgid "%(votes)s user has voted for this choice."
 msgid "%(votes)s user has voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgid_plural "%(votes)s users have voted for this choice."
 msgstr[0] "%(votes)s用户已经投票选择了这个选择。"
 msgstr[0] "%(votes)s用户已经投票选择了这个选择。"
@@ -844,9 +915,8 @@ msgstr "投票"
 msgid "See votes"
 msgid "See votes"
 msgstr "查看票数"
 msgstr "查看票数"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:15
 msgid "Edit"
 msgid "Edit"
 msgstr "编辑"
 msgstr "编辑"
 
 
@@ -856,8 +926,7 @@ msgid ""
 msgstr "您确定要删除此调查吗?该操作是不可逆的。"
 msgstr "您确定要删除此调查吗?该操作是不可逆的。"
 
 
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
 #: static/misago/js/misago.js:7 static/misago/js/misago.js:9
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Delete"
 msgid "Delete"
 msgstr "删除"
 msgstr "删除"
 
 
@@ -920,27 +989,27 @@ msgstr "帖子已被恢复到以前的状态。"
 msgid "See previous change"
 msgid "See previous change"
 msgstr "看到以前的变化"
 msgstr "看到以前的变化"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "By %(edited_by)s %(edited_on)s."
 msgid "By %(edited_by)s %(edited_on)s."
 msgstr " %(edited_by) 于 s%(edited_on)s 编辑。"
 msgstr " %(edited_by) 于 s%(edited_on)s 编辑。"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This post's contents cannot be displayed."
 msgid "This post's contents cannot be displayed."
 msgstr "此帖的内容无法显示。"
 msgstr "此帖的内容无法显示。"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "This error is caused by invalid post content manipulation."
 msgid "This error is caused by invalid post content manipulation."
 msgstr "此错误是由不合法的帖子内容操作引起的。"
 msgstr "此错误是由不合法的帖子内容操作引起的。"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "posted %(posted_on)s"
 msgid "posted %(posted_on)s"
 msgstr "发布于 %(posted_on)s"
 msgstr "发布于 %(posted_on)s"
 
 
-#: static/misago/js/misago.js:7 static/misago/js/misago.js:11
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:11
 msgid "Removed user"
 msgid "Removed user"
 msgstr "被移除用户"
 msgstr "被移除用户"
 
 
-#: static/misago/js/misago.js:7
+#: static/misago/js/misago.js:8
 msgid "See post"
 msgid "See post"
 msgstr "查看帖子"
 msgstr "查看帖子"
 
 
@@ -961,7 +1030,7 @@ msgstr "没有用户赞这条帖子。"
 msgid "Are you sure you want to discard changes?"
 msgid "Are you sure you want to discard changes?"
 msgstr "您确定要放弃更改吗?"
 msgstr "您确定要放弃更改吗?"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "You have to enter a message."
 msgid "You have to enter a message."
 msgstr "您必须输入消息。"
 msgstr "您必须输入消息。"
 
 
@@ -993,11 +1062,12 @@ msgstr "您确定要丢弃私人主题帖吗?"
 msgid "You have to enter at least one recipient."
 msgid "You have to enter at least one recipient."
 msgstr "您必须至少输入一个收件人。"
 msgstr "您必须至少输入一个收件人。"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:15
 msgid "You have to enter thread title."
 msgid "You have to enter thread title."
 msgstr "您必须输入主题帖标题。"
 msgstr "您必须输入主题帖标题。"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Your thread has been posted."
 msgid "Your thread has been posted."
 msgstr "您的主题帖已发起。"
 msgstr "您的主题帖已发起。"
 
 
@@ -1005,12 +1075,13 @@ msgstr "您的主题帖已发起。"
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgid "Comma separated list of user names, eg.: Danny, Lisa"
 msgstr "逗号分隔的用户名列表,例如:Danny,Lisa"
 msgstr "逗号分隔的用户名列表,例如:Danny,Lisa"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:19
 msgid "Thread title"
 msgid "Thread title"
 msgstr "主题帖标题"
 msgstr "主题帖标题"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:8 static/misago/js/misago.js:9
 msgid "Post thread"
 msgid "Post thread"
 msgstr "发起主题帖"
 msgstr "发起主题帖"
 
 
@@ -1018,35 +1089,35 @@ msgstr "发起主题帖"
 msgid "Are you sure you want to discard thread?"
 msgid "Are you sure you want to discard thread?"
 msgstr "您确定要丢弃主题帖吗?"
 msgstr "您确定要丢弃主题帖吗?"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18
 msgid "Closed"
 msgid "Closed"
 msgstr "已关闭"
 msgstr "已关闭"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:16
 msgid "Open"
 msgid "Open"
 msgstr "打开"
 msgstr "打开"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:21
 msgid "Hidden"
 msgid "Hidden"
 msgstr "隐藏"
 msgstr "隐藏"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Not hidden"
 msgid "Not hidden"
 msgstr "不隐藏"
 msgstr "不隐藏"
 
 
-#: static/misago/js/misago.js:8
+#: static/misago/js/misago.js:9
 msgid "Unpinned"
 msgid "Unpinned"
 msgstr "取消置顶"
 msgstr "取消置顶"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned locally"
 msgid "Pinned locally"
 msgstr "版块内置顶"
 msgstr "版块内置顶"
 
 
-#: static/misago/js/misago.js:8 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:18 static/misago/js/misago.js:19
 msgid "Pinned globally"
 msgid "Pinned globally"
@@ -1089,12 +1160,12 @@ msgid_plural ""
 msgstr[0] "发帖内容最多包含%(limit_value)s个字符(现有%(show_value)s)。"
 msgstr[0] "发帖内容最多包含%(limit_value)s个字符(现有%(show_value)s)。"
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Hide"
 msgid "Hide"
 msgstr "隐藏"
 msgstr "隐藏"
 
 
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
 #: static/misago/js/misago.js:9 static/misago/js/misago.js:10
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Unhide"
 msgid "Unhide"
 msgstr "取消隐藏"
 msgstr "取消隐藏"
 
 
@@ -1116,10 +1187,6 @@ msgid "By %(event_by)s %(event_on)s."
 msgstr " %(event_by)s 于 %(event_on)s。"
 msgstr " %(event_by)s 于 %(event_on)s。"
 
 
 #: static/misago/js/misago.js:9
 #: static/misago/js/misago.js:9
-msgid "IP recorded"
-msgstr "IP记录"
-
-#: static/misago/js/misago.js:9
 msgid "Thread title has been changed from %(old_title)s."
 msgid "Thread title has been changed from %(old_title)s."
 msgstr "主题帖标题已更改%(old_title)s。"
 msgstr "主题帖标题已更改%(old_title)s。"
 
 
@@ -1208,23 +1275,23 @@ msgstr "您确定要删除这个帖子?这个操作是不可逆的!"
 msgid "Post has been deleted."
 msgid "Post has been deleted."
 msgstr "帖子已被删除。"
 msgstr "帖子已被删除。"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link to this post:"
 msgid "Permament link to this post:"
 msgstr "该帖的永久链接:"
 msgstr "该帖的永久链接:"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Permament link"
 msgid "Permament link"
 msgstr "永久链接"
 msgstr "永久链接"
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Mark as best answer"
 msgid "Mark as best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9
+#: static/misago/js/misago.js:10
 msgid "Unmark best answer"
 msgid "Unmark best answer"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:9 static/misago/js/misago.js:10
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:11
 msgid "This post was edited %(edits)s time."
 msgid "This post was edited %(edits)s time."
 msgid_plural "This post was edited %(edits)s times."
 msgid_plural "This post was edited %(edits)s times."
 msgstr[0] "此帖子被编辑了%(edits)s次"
 msgstr[0] "此帖子被编辑了%(edits)s次"
@@ -1233,17 +1300,15 @@ msgstr[0] "此帖子被编辑了%(edits)s次"
 msgid "Changes history"
 msgid "Changes history"
 msgstr "改变历史"
 msgstr "改变历史"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Approve"
 msgid "Approve"
 msgstr "批准"
 msgstr "批准"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Move"
 msgid "Move"
 msgstr "移动"
 msgstr "移动"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 msgid "Split"
 msgid "Split"
 msgstr "分裂"
 msgstr "分裂"
 
 
@@ -1256,6 +1321,7 @@ msgid "Move post"
 msgstr "移动帖子"
 msgstr "移动帖子"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You have to enter link to the other thread."
 msgid "You have to enter link to the other thread."
 msgstr "您必须输入到另一个主题帖的链接。"
 msgstr "您必须输入到另一个主题帖的链接。"
 
 
@@ -1305,7 +1371,7 @@ msgid "Close thread"
 msgstr "关闭主题帖"
 msgstr "关闭主题帖"
 
 
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
 #: static/misago/js/misago.js:10 static/misago/js/misago.js:16
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19
 msgid "Category"
 msgid "Category"
 msgstr "版块"
 msgstr "版块"
 
 
@@ -1352,32 +1418,32 @@ msgid "%(users)s and %(likes)s other user like this."
 msgid_plural "%(users)s and %(likes)s other users like this."
 msgid_plural "%(users)s and %(likes)s other users like this."
 msgstr[0] "%(users)s 和 %(likes)s 其他用户赞这个。"
 msgstr[0] "%(users)s 和 %(likes)s 其他用户赞这个。"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Liked"
 msgid "Liked"
 msgstr "赞过"
 msgstr "赞过"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "Like"
 msgid "Like"
 msgstr "赞"
 msgstr "赞"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
 msgid "Reply"
 msgid "Reply"
 msgstr "回复"
 msgstr "回复"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "New post"
 msgid "New post"
 msgstr "新帖子"
 msgstr "新帖子"
 
 
-#: static/misago/js/misago.js:10 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:20
 msgid "New"
 msgid "New"
 msgstr "最新"
 msgstr "最新"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "This post is protected and may not be edited."
 msgid "This post is protected and may not be edited."
 msgstr "这篇文章是受保护的,不可以被编辑。"
 msgstr "这篇文章是受保护的,不可以被编辑。"
 
 
-#: static/misago/js/misago.js:10
+#: static/misago/js/misago.js:11
 msgid "protected"
 msgid "protected"
 msgstr "受保护"
 msgstr "受保护"
 
 
@@ -1423,65 +1489,64 @@ msgstr "你没有与其他用户分享任何详情"
 msgid "%(username)s is not sharing any details with others."
 msgid "%(username)s is not sharing any details with others."
 msgstr "%(username)s没有与其他用户分享任何详情"
 msgstr "%(username)s没有与其他用户分享任何详情"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
 msgid "Details"
 msgid "Details"
 msgstr "详情"
 msgstr "详情"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s's details have been updated."
 msgid "%(username)s's details have been updated."
 msgstr "%(username)s的信息已更新"
 msgstr "%(username)s的信息已更新"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have no started threads."
 msgid "You have no started threads."
 msgstr "您还没有发起任何主题帖。"
 msgstr "您还没有发起任何主题帖。"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s started no threads."
 msgid "%(username)s started no threads."
 msgstr "%(username)s没有发起主题帖。"
 msgstr "%(username)s没有发起主题帖。"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have started %(threads)s thread."
 msgid "You have started %(threads)s thread."
 msgid_plural "You have started %(threads)s threads."
 msgid_plural "You have started %(threads)s threads."
 msgstr[0] "您已经发起了%(threads)s 条主题帖。"
 msgstr[0] "您已经发起了%(threads)s 条主题帖。"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has started %(threads)s thread."
 msgid "%(username)s has started %(threads)s thread."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgid_plural "%(username)s has started %(threads)s threads."
 msgstr[0] "%(username)s已发起%(threads)s主题帖。"
 msgstr[0] "%(username)s已发起%(threads)s主题帖。"
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:13
 msgid "Loading..."
 msgid "Loading..."
 msgstr "正在加载..."
 msgstr "正在加载..."
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:12 static/misago/js/misago.js:19
 #: static/misago/js/misago.js:20
 #: static/misago/js/misago.js:20
 msgid "Threads"
 msgid "Threads"
 msgstr "主题帖"
 msgstr "主题帖"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted no messages."
 msgid "You have posted no messages."
 msgstr "您没有发布过任何消息。"
 msgstr "您没有发布过任何消息。"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s posted no messages."
 msgid "%(username)s posted no messages."
 msgstr "%(username)s没有留言"
 msgstr "%(username)s没有留言"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "You have posted %(posts)s message."
 msgid "You have posted %(posts)s message."
 msgid_plural "You have posted %(posts)s messages."
 msgid_plural "You have posted %(posts)s messages."
 msgstr[0] "您已经发布过%(posts)s 条消息。"
 msgstr[0] "您已经发布过%(posts)s 条消息。"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "%(username)s has posted %(posts)s message."
 msgid "%(username)s has posted %(posts)s message."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgid_plural "%(username)s has posted %(posts)s messages."
 msgstr[0] "%(username)s已发布%(posts)s消息。"
 msgstr[0] "%(username)s已发布%(posts)s消息。"
 
 
-#: static/misago/js/misago.js:11
+#: static/misago/js/misago.js:12
 msgid "Posts"
 msgid "Posts"
 msgstr "发帖"
 msgstr "发帖"
 
 
-#: static/misago/js/misago.js:11 static/misago/js/misago.js:12
+#: static/misago/js/misago.js:12
 msgid "Show more (%(more)s)"
 msgid "Show more (%(more)s)"
 msgstr "展示更多 (%(more)s)"
 msgstr "展示更多 (%(more)s)"
 
 
@@ -1567,6 +1632,7 @@ msgid "Joined %(joined_on)s"
 msgstr "加入%(joined_on)s"
 msgstr "加入%(joined_on)s"
 
 
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
 #: static/misago/js/misago.js:12 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Moderation"
 msgid "Moderation"
 msgstr "调整"
 msgstr "调整"
 
 
@@ -1620,41 +1686,41 @@ msgstr "呈现给论坛管理团队的用于说明禁止用户改变头像的原
 msgid "Avatar controls"
 msgid "Avatar controls"
 msgstr "头像限制"
 msgstr "头像限制"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Username has been changed."
 msgid "Username has been changed."
 msgstr "用户名已更改。"
 msgstr "用户名已更改。"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account, threads, posts and other content has been deleted."
 "%(username)s's account, threads, posts and other content has been deleted."
 msgstr "%(username)s 的帐号,主题,帖子等内容均已被删除。"
 msgstr "%(username)s 的帐号,主题,帖子等内容均已被删除。"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid ""
 msgid ""
 "%(username)s's account has been deleted and other content has been hidden."
 "%(username)s's account has been deleted and other content has been hidden."
 msgstr "%(username)s 的帐户已被删除,其他内容均已被隐藏。"
 msgstr "%(username)s 的帐户已被删除,其他内容均已被隐藏。"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete %(username)s"
 msgid "Delete %(username)s"
 msgstr "删除 %(username)s"
 msgstr "删除 %(username)s"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Please wait... (%(countdown)ss)"
 msgid "Please wait... (%(countdown)ss)"
 msgstr "请稍候... (%(countdown)ss)"
 msgstr "请稍候... (%(countdown)ss)"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "User content"
 msgid "User content"
 msgstr "用户内容"
 msgstr "用户内容"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Delete together with user's account"
 msgid "Delete together with user's account"
 msgstr "与用户的帐户一起删除"
 msgstr "与用户的帐户一起删除"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Hide after deleting user's account"
 msgid "Hide after deleting user's account"
 msgstr "删除用户帐户后隐藏"
 msgstr "删除用户帐户后隐藏"
 
 
-#: static/misago/js/misago.js:12
+#: static/misago/js/misago.js:13
 msgid "Return to users list"
 msgid "Return to users list"
 msgstr "返回用户列表"
 msgstr "返回用户列表"
 
 
@@ -1717,75 +1783,74 @@ msgstr "由于某些错误,目前无法注册。"
 msgid "Register"
 msgid "Register"
 msgstr "注册"
 msgstr "注册"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Join with %(site)s"
 msgid "Join with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Or create forum account:"
 msgid "Or create forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:15
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Username"
 msgid "Username"
 msgstr "用户名"
 msgstr "用户名"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "E-mail"
 msgid "E-mail"
 msgstr "电子邮件"
 msgstr "电子邮件"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid "Password"
 msgid "Password"
 msgstr "密码"
 msgstr "密码"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Register account"
 msgid "Register account"
 msgstr "注册账号"
 msgstr "注册账号"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but you need to activate it "
 "%(username)s, your account has been created but you need to activate it "
 "before you will be able to sign in."
 "before you will be able to sign in."
 msgstr "%(username)s,您的帐户已创建,但您需要激活它之后才可以登录。"
 msgstr "%(username)s,您的帐户已创建,但您需要激活它之后才可以登录。"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:15
 msgid ""
 msgid ""
 "%(username)s, your account has been created but board administrator will "
 "%(username)s, your account has been created but board administrator will "
 "have to activate it before you will be able to sign in."
 "have to activate it before you will be able to sign in."
 msgstr "%(username)s,您的帐户已创建,但必须在管理员激活它之后才可以登录。"
 msgstr "%(username)s,您的帐户已创建,但必须在管理员激活它之后才可以登录。"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid ""
 msgid ""
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "We have sent an e-mail to %(email)s with link that you have to click to "
 "activate your account."
 "activate your account."
 msgstr "我们已向 %(email)s 发送了一封带有激活链接的电子邮件。"
 msgstr "我们已向 %(email)s 发送了一封带有激活链接的电子邮件。"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgid "We will send an e-mail to %(email)s when this takes place."
 msgstr "届时,我们将向 %(email)s 发送一封电子邮件。"
 msgstr "届时,我们将向 %(email)s 发送一封电子邮件。"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Registration complete"
 msgid "Registration complete"
 msgstr "注册完成"
 msgstr "注册完成"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:14 static/misago/js/misago.js:25
 msgid "Enter a valid email address."
 msgid "Enter a valid email address."
 msgstr "输入一个有效的电子邮件地址。"
 msgstr "输入一个有效的电子邮件地址。"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Your e-mail address"
 msgid "Your e-mail address"
 msgstr "您的电子邮件地址"
 msgstr "您的电子邮件地址"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Send link"
 msgid "Send link"
 msgstr "发送链接"
 msgstr "发送链接"
 
 
-#: static/misago/js/misago.js:13
+#: static/misago/js/misago.js:14
 msgid "Activation link was sent to %(email)s"
 msgid "Activation link was sent to %(email)s"
 msgstr "激活链接已发送至 %(email)s"
 msgstr "激活链接已发送至 %(email)s"
 
 
-#: static/misago/js/misago.js:13 static/misago/js/misago.js:14
+#: static/misago/js/misago.js:14
 msgid "Request another link"
 msgid "Request another link"
 msgstr "重新发送链接"
 msgstr "重新发送链接"
 
 
@@ -1850,41 +1915,41 @@ msgstr "没有找到匹配搜索查询的用户。"
 msgid "Enter at least two characters to search users."
 msgid "Enter at least two characters to search users."
 msgstr "输入至少两个字符以搜索用户。"
 msgstr "输入至少两个字符以搜索用户。"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Fill out both fields."
 msgid "Fill out both fields."
 msgstr "填写两个字段。"
 msgstr "填写两个字段。"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Activate account"
 msgid "Activate account"
 msgstr "激活帐号"
 msgstr "激活帐号"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Sign in with %(site)s"
 msgid "Sign in with %(site)s"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Or use your forum account:"
 msgid "Or use your forum account:"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Username or e-mail"
 msgid "Username or e-mail"
 msgstr "用户名或电子邮件"
 msgstr "用户名或电子邮件"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Forgot password?"
 msgid "Forgot password?"
 msgstr "忘记密码?"
 msgstr "忘记密码?"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid ""
 msgid ""
-"%(username)s, your account has been created and you has been signed in to "
+"%(username)s, your account has been created and you have been signed in to "
 "it."
 "it."
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Registration completed!"
 msgid "Registration completed!"
-msgstr ""
+msgstr "注册完成!"
 
 
-#: static/misago/js/misago.js:14
+#: static/misago/js/misago.js:15
 msgid "Return to forum index"
 msgid "Return to forum index"
 msgstr ""
 msgstr ""
 
 
@@ -1893,6 +1958,10 @@ msgid "Sign in with %(backend)s"
 msgstr ""
 msgstr ""
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
+msgid "You need to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:15
 msgid "Your e-mail address has been verified by %(backend)s."
 msgid "Your e-mail address has been verified by %(backend)s."
 msgstr ""
 msgstr ""
 
 
@@ -1902,7 +1971,7 @@ msgstr ""
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
 msgid "E-mail address"
 msgid "E-mail address"
-msgstr ""
+msgstr "电子邮件地址"
 
 
 #: static/misago/js/misago.js:15
 #: static/misago/js/misago.js:15
 msgid "Change title"
 msgid "Change title"
@@ -1913,7 +1982,7 @@ msgid "Edit title"
 msgstr "编辑标题"
 msgstr "编辑标题"
 
 
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
 #: static/misago/js/misago.js:15 static/misago/js/misago.js:17
-#: static/misago/js/misago.js:18 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:18 static/misago/js/misago.js:20
 msgid "Unapproved"
 msgid "Unapproved"
 msgstr "未批准"
 msgstr "未批准"
 
 
@@ -1921,7 +1990,7 @@ msgstr "未批准"
 msgid "Unapproved posts"
 msgid "Unapproved posts"
 msgstr "未批准的帖子"
 msgstr "未批准的帖子"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:17
+#: static/misago/js/misago.js:15 static/misago/js/misago.js:18
 msgid "%(replies)s reply"
 msgid "%(replies)s reply"
 msgid_plural "%(replies)s replies"
 msgid_plural "%(replies)s replies"
 msgstr[0] "%(replies)s回复"
 msgstr[0] "%(replies)s回复"
@@ -1942,19 +2011,19 @@ msgid ""
 "reversible!"
 "reversible!"
 msgstr "您确定要删除所选的帖子吗?这个动作不可逆的!"
 msgstr "您确定要删除所选的帖子吗?这个动作不可逆的!"
 
 
-#: static/misago/js/misago.js:15 static/misago/js/misago.js:16
+#: static/misago/js/misago.js:16
 msgid "Merge"
 msgid "Merge"
 msgstr "合并"
 msgstr "合并"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "Unprotect"
 msgid "Unprotect"
 msgstr "取消保护"
 msgstr "取消保护"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "%(username)s on %(posted_on)s"
 msgid "%(username)s on %(posted_on)s"
 msgstr "%(username)s于%(posted_on)s"
 msgstr "%(username)s于%(posted_on)s"
 
 
-#: static/misago/js/misago.js:15
+#: static/misago/js/misago.js:16
 msgid "One or more posts could not be changed:"
 msgid "One or more posts could not be changed:"
 msgstr "无法更改一条或多条帖子"
 msgstr "无法更改一条或多条帖子"
 
 
@@ -2014,37 +2083,37 @@ msgstr "版块内置顶"
 msgid "Unpin"
 msgid "Unpin"
 msgstr "取消置顶"
 msgstr "取消置顶"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Merge thread"
 msgid "Merge thread"
 msgstr "合并主题帖"
 msgstr "合并主题帖"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been merged with other one."
 msgid "Thread has been merged with other one."
 msgstr "主题帖已经与其他主题帖合并。"
 msgstr "主题帖已经与其他主题帖合并。"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Link to thread you want to merge with"
 msgid "Link to thread you want to merge with"
 msgstr "链接到您要合并的主题帖"
 msgstr "链接到您要合并的主题帖"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid ""
 msgid ""
 "Merge will delete current thread and move its contents to the thread "
 "Merge will delete current thread and move its contents to the thread "
 "specified here."
 "specified here."
 msgstr "合并将删除当前主题帖并将其内容移动到这里指定的主题帖"
 msgstr "合并将删除当前主题帖并将其内容移动到这里指定的主题帖"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Move thread"
 msgid "Move thread"
 msgstr "移动主题帖"
 msgstr "移动主题帖"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "You can't move this thread at the moment."
 msgid "You can't move this thread at the moment."
 msgstr "您现在不可以移动这个主题帖。"
 msgstr "您现在不可以移动这个主题帖。"
 
 
-#: static/misago/js/misago.js:16
+#: static/misago/js/misago.js:17
 msgid "Thread has been moved."
 msgid "Thread has been moved."
 msgstr "主题帖已被移动。"
 msgstr "主题帖已被移动。"
 
 
-#: static/misago/js/misago.js:16 static/misago/js/misago.js:19
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:20
 msgid "New category"
 msgid "New category"
 msgstr "新版块"
 msgstr "新版块"
 
 
@@ -2081,15 +2150,15 @@ msgstr "已订阅"
 msgid "Disabled"
 msgid "Disabled"
 msgstr "未订阅"
 msgstr "未订阅"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Unsubscribe"
 msgid "Unsubscribe"
 msgstr "取消订阅"
 msgstr "取消订阅"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe"
 msgid "Subscribe"
 msgstr "订阅"
 msgstr "订阅"
 
 
-#: static/misago/js/misago.js:17 static/misago/js/misago.js:18
+#: static/misago/js/misago.js:17 static/misago/js/misago.js:19
 msgid "Subscribe with e-mail"
 msgid "Subscribe with e-mail"
 msgstr "订阅电子邮件"
 msgstr "订阅电子邮件"
 
 
@@ -2099,7 +2168,7 @@ msgstr "转到第一个新帖"
 
 
 #: static/misago/js/misago.js:17
 #: static/misago/js/misago.js:17
 msgid "Go to best answer"
 msgid "Go to best answer"
-msgstr ""
+msgstr "转到最佳答案"
 
 
 #: static/misago/js/misago.js:17
 #: static/misago/js/misago.js:17
 msgid "Go to first unapproved post"
 msgid "Go to first unapproved post"
@@ -2121,11 +2190,11 @@ msgstr "最后的帖子"
 msgid "Options"
 msgid "Options"
 msgstr "选项"
 msgstr "选项"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid "Add poll"
 msgid "Add poll"
 msgstr "添加调查"
 msgstr "添加调查"
 
 
-#: static/misago/js/misago.js:17
+#: static/misago/js/misago.js:18
 msgid ""
 msgid ""
 "There is %(threads)s new or updated thread. Click this message to show it."
 "There is %(threads)s new or updated thread. Click this message to show it."
 msgid_plural ""
 msgid_plural ""
@@ -2139,13 +2208,13 @@ msgstr "新帖子"
 
 
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "Answered"
 msgid "Answered"
-msgstr ""
+msgstr "已回答"
 
 
 #: static/misago/js/misago.js:18
 #: static/misago/js/misago.js:18
 msgid "Change subscription"
 msgid "Change subscription"
 msgstr "更改订阅"
 msgstr "更改订阅"
 
 
-#: static/misago/js/misago.js:18
+#: static/misago/js/misago.js:19
 msgid "Start thread"
 msgid "Start thread"
 msgstr "发起主题帖"
 msgstr "发起主题帖"
 
 
@@ -2225,7 +2294,7 @@ msgstr "版块内置顶主题帖"
 msgid "Unpin threads"
 msgid "Unpin threads"
 msgstr "取消置顶主题帖"
 msgstr "取消置顶主题帖"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid "Move threads"
 msgid "Move threads"
 msgstr "移动主题帖"
 msgstr "移动主题帖"
 
 
@@ -2261,7 +2330,7 @@ msgstr "主题帖审核"
 msgid "One or more threads could not be deleted:"
 msgid "One or more threads could not be deleted:"
 msgstr "无法删除一条或多条主题贴"
 msgstr "无法删除一条或多条主题贴"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:19 static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You can't move threads because there are no categories you are allowed to "
 "You can't move threads because there are no categories you are allowed to "
 "move them to."
 "move them to."
@@ -2273,61 +2342,61 @@ msgid ""
 " to it."
 " to it."
 msgstr "您必须有权限在版块中发启主题帖,才可以向相应版块合并主题帖,。"
 msgstr "您必须有权限在版块中发启主题帖,才可以向相应版块合并主题帖,。"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Selected threads were moved."
 msgid "Selected threads were moved."
 msgstr "所选主题帖已移动。"
 msgstr "所选主题帖已移动。"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid ""
 msgid ""
 "You need permission to start threads in category to be able to move threads "
 "You need permission to start threads in category to be able to move threads "
 "to it."
 "to it."
 msgstr "您必须有权限在次版块中开启主题帖,才可以移动主题帖到相应版块,。"
 msgstr "您必须有权限在次版块中开启主题帖,才可以移动主题帖到相应版块,。"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select all"
 msgid "Select all"
 msgstr "全选"
 msgstr "全选"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Select none"
 msgid "Select none"
 msgstr "取消选择"
 msgstr "取消选择"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All"
 msgid "All"
 msgstr "所有"
 msgstr "所有"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "All threads"
 msgid "All threads"
 msgstr "所有主题帖"
 msgstr "所有主题帖"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My"
 msgid "My"
 msgstr "我的"
 msgstr "我的"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "My threads"
 msgid "My threads"
 msgstr "我的主题帖"
 msgstr "我的主题帖"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "New threads"
 msgid "New threads"
 msgstr "新主题帖"
 msgstr "新主题帖"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread"
 msgid "Unread"
 msgstr "未读"
 msgstr "未读"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unread threads"
 msgid "Unread threads"
 msgstr "未读主题帖"
 msgstr "未读主题帖"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed"
 msgid "Subscribed"
 msgstr "订阅"
 msgstr "订阅"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Subscribed threads"
 msgid "Subscribed threads"
 msgstr "订阅主题"
 msgstr "订阅主题"
 
 
-#: static/misago/js/misago.js:19
+#: static/misago/js/misago.js:20
 msgid "Unapproved content"
 msgid "Unapproved content"
 msgstr "未批准的内容"
 msgstr "未批准的内容"
 
 
@@ -2343,7 +2412,8 @@ msgstr "登录或注册来发起或参与讨论。"
 msgid "You have unread private threads!"
 msgid "You have unread private threads!"
 msgstr ""
 msgstr ""
 
 
-#: static/misago/js/misago.js:20 static/misago/js/misago.js:22
+#: static/misago/js/misago.js:20 static/misago/js/misago.js:21
+#: static/misago/js/misago.js:23
 msgid "Private threads"
 msgid "Private threads"
 msgstr "私人主题帖"
 msgstr "私人主题帖"
 
 
@@ -2351,67 +2421,67 @@ msgstr "私人主题帖"
 msgid "Are you sure you want to sign out?"
 msgid "Are you sure you want to sign out?"
 msgstr "您确定要退出吗?"
 msgstr "您确定要退出吗?"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "See your profile"
 msgid "See your profile"
 msgstr "个人档案"
 msgstr "个人档案"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change options"
 msgid "Change options"
 msgstr "更改设置"
 msgstr "更改设置"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Change avatar"
 msgid "Change avatar"
 msgstr "更改头像"
 msgstr "更改头像"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Log out"
 msgid "Log out"
 msgstr "退出"
 msgstr "退出"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned until %(ban_expires)s"
 msgid "%(username)s is banned until %(ban_expires)s"
 msgstr "%(username)s 已被封禁直到 %(ban_expires)s"
 msgstr "%(username)s 已被封禁直到 %(ban_expires)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is banned"
 msgid "%(username)s is banned"
 msgstr "%(username)s 已被封禁"
 msgstr "%(username)s 已被封禁"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is hiding presence"
 msgid "%(username)s is hiding presence"
 msgstr "%(username)s 在隐身"
 msgstr "%(username)s 在隐身"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online (hidden)"
 msgid "%(username)s is online (hidden)"
 msgstr "%(username)s 在线(隐身)"
 msgstr "%(username)s 在线(隐身)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgid "%(username)s was last seen %(last_click)s (hidden)"
 msgstr "%(username)s 最后一次出现于 %(last_click)s(隐身)"
 msgstr "%(username)s 最后一次出现于 %(last_click)s(隐身)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s is online"
 msgid "%(username)s is online"
 msgstr "%(username)s 在线"
 msgstr "%(username)s 在线"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "%(username)s was last seen %(last_click)s"
 msgid "%(username)s was last seen %(last_click)s"
 msgstr "%(username)s 最后一次出现于 %(last_click)s"
 msgstr "%(username)s 最后一次出现于 %(last_click)s"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Banned"
 msgid "Banned"
 msgstr "被封禁"
 msgstr "被封禁"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online (hidden)"
 msgid "Online (hidden)"
 msgstr "在线(隐身)"
 msgstr "在线(隐身)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline (hidden)"
 msgid "Offline (hidden)"
 msgstr "离线(隐身)"
 msgstr "离线(隐身)"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Online"
 msgid "Online"
 msgstr "在线"
 msgstr "在线"
 
 
-#: static/misago/js/misago.js:20
+#: static/misago/js/misago.js:21
 msgid "Offline"
 msgid "Offline"
 msgstr "离线"
 msgstr "离线"
 
 
@@ -2424,19 +2494,19 @@ msgstr[0] "%(followers)s的关注者"
 msgid "No users have posted any new messages during last %(days)s days."
 msgid "No users have posted any new messages during last %(days)s days."
 msgstr "已经%(days)s天没有用户发布消息。"
 msgstr "已经%(days)s天没有用户发布消息。"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Rank"
 msgid "Rank"
 msgstr "级别"
 msgstr "级别"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:21 static/misago/js/misago.js:22
 msgid "Ranked posts"
 msgid "Ranked posts"
 msgstr "有级别的帖子"
 msgstr "有级别的帖子"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "Total posts"
 msgid "Total posts"
 msgstr "帖子总数"
 msgstr "帖子总数"
 
 
-#: static/misago/js/misago.js:21
+#: static/misago/js/misago.js:22
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid "%(posters)s most active poster from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgid_plural "%(posters)s most active posters from last %(days)s days."
 msgstr[0] "%最近%(days)s天最活跃的发布者%(poster)s"
 msgstr[0] "%最近%(days)s天最活跃的发布者%(poster)s"
@@ -2466,25 +2536,25 @@ msgstr "是"
 msgid "no"
 msgid "no"
 msgstr "没有"
 msgstr "没有"
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid ""
 msgid ""
 "Private threads are threads which only those that started them and those "
 "Private threads are threads which only those that started them and those "
 "they have invited may see and participate in."
 "they have invited may see and participate in."
 msgstr "私人主题帖只有那些启动他们和那些他们已经邀请可以看到并参与。"
 msgstr "私人主题帖只有那些启动他们和那些他们已经邀请可以看到并参与。"
 
 
-#: static/misago/js/misago.js:22
+#: static/misago/js/misago.js:23
 msgid "You aren't participating in any private threads."
 msgid "You aren't participating in any private threads."
 msgstr "您没有参与任何私人主题帖。"
 msgstr "您没有参与任何私人主题帖。"
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Lost connection with application."
 msgid "Lost connection with application."
 msgstr "与应用程序的连接失败"
 msgstr "与应用程序的连接失败"
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Action link is invalid."
 msgid "Action link is invalid."
 msgstr "操作链接无效。"
 msgstr "操作链接无效。"
 
 
-#: static/misago/js/misago.js:23 static/misago/js/misago.js:24
+#: static/misago/js/misago.js:24
 msgid "Unknown error has occured."
 msgid "Unknown error has occured."
 msgstr "发生未知错误。"
 msgstr "发生未知错误。"
 
 
@@ -2520,15 +2590,23 @@ msgstr "您已经在编辑调查。确定要放弃吗?"
 msgid "You don't have permission to perform this action."
 msgid "You don't have permission to perform this action."
 msgstr "您没有执行此操作的权限。"
 msgstr "您没有执行此操作的权限。"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "You are banned"
 msgid "You are banned"
 msgstr "您被封禁了"
 msgstr "您被封禁了"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "This field is required."
 msgid "This field is required."
 msgstr "这是必填栏。"
 msgstr "这是必填栏。"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
+msgid "You have to accept the terms of service."
+msgstr ""
+
+#: static/misago/js/misago.js:25
+msgid "You have to accept the privacy policy."
+msgstr ""
+
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at least %(limit_value)s character (it has "
 "Ensure this value has at least %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2537,7 +2615,7 @@ msgid_plural ""
 "%(show_value)s)."
 "%(show_value)s)."
 msgstr[0] "确保此值至少有%(limit_value)s个字符(现有%(show_value)s)。"
 msgstr[0] "确保此值至少有%(limit_value)s个字符(现有%(show_value)s)。"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid ""
 msgid ""
 "Ensure this value has at most %(limit_value)s character (it has "
 "Ensure this value has at most %(limit_value)s character (it has "
 "%(show_value)s)."
 "%(show_value)s)."
@@ -2546,21 +2624,21 @@ msgid_plural ""
 "%(show_value)s)."
 "%(show_value)s)."
 msgstr[0] "确保此值至多为%(limit_value)s字符(现有%(show_value)s)。"
 msgstr[0] "确保此值至多为%(limit_value)s字符(现有%(show_value)s)。"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username must be at least %(limit_value)s character long."
 msgid "Username must be at least %(limit_value)s character long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgid_plural "Username must be at least %(limit_value)s characters long."
 msgstr[0] "用户名必须至少%(limit_value)s字符长"
 msgstr[0] "用户名必须至少%(limit_value)s字符长"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid "Username cannot be longer than %(limit_value)s character."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgid_plural "Username cannot be longer than %(limit_value)s characters."
 msgstr[0] "用户名不可以超过%(limit_value)s字符。"
 msgstr[0] "用户名不可以超过%(limit_value)s字符。"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Username can only contain latin alphabet letters and digits."
 msgid "Username can only contain latin alphabet letters and digits."
 msgstr "用户名只可以包含拉丁字母和数字。"
 msgstr "用户名只可以包含拉丁字母和数字。"
 
 
-#: static/misago/js/misago.js:24
+#: static/misago/js/misago.js:25
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid "Valid password must be at least %(limit_value)s character long."
 msgid_plural ""
 msgid_plural ""
 "Valid password must be at least %(limit_value)s characters long."
 "Valid password must be at least %(limit_value)s characters long."