Django Postman changelog
========================
+Version 2.1.0, December 2012
+----------------------------
+* Make the app compatible with the new 'Custom Auth Model' feature of Django 1.5
+* Add a setting: POSTMAN_SHOW_USER_AS
+* Remove the dependency to django-pagination in the default template set.
+* Add an optional auto_moderators parameter to the pm_write() API function.
+* Add a template for the autocomplete of multiple recipients in version 1.2.x of django-ajax-selects.
+
Version 2.0.0, August 2012
--------------------------
* Add an API.
Version 1.1.0, January 2012
---------------------------
-* Add POSTMAN_DISABLE_USER_EMAILING.
+* Add a setting: POSTMAN_DISABLE_USER_EMAILING.
* No need for an immediate rejection notification for a User.
* Add an ordering criteria.
# The short X.Y version.\r
version = '2.1'\r
# The full version, including alpha/beta/rc tags.\r
-release = '2.1.0a1'\r
+release = '2.1.0'\r
\r
# The language for content autogenerated by Sphinx. Refer to documentation\r
# for a list of supported languages.\r
\r
* The name of a property of User. For example: 'last_name'\r
* The name of a method of User. For example: 'get_full_name'\r
- * A function, receiving the User instance as the only parameter. For example: lambda u: u.get_profile().nickname\r
+ * A function, receiving the User instance as the only parameter. For example: ``lambda u: u.get_profile().nickname``\r
* ``None`` : the default text representation of the User (username) is used.\r
\r
*Defaults to*: None.\r
-"""A messaging application for Django"""
+"""
+A messaging application for Django
+"""
+from __future__ import unicode_literals
# following PEP 386: N.N[.N]+[{a|b|c|rc}N[.N]+][.postN][.devN]
VERSION = (2, 1, 0)
-PREREL = ('a', 1)
+PREREL = ()
POST = 0
DEV = 0
+
def get_version():
version = '.'.join(map(str, VERSION))
if PREREL:
+from __future__ import unicode_literals
+
from django import forms
from django.contrib import admin
from django.db import transaction
from postman.models import Message, PendingMessage
+
class MessageAdminForm(forms.ModelForm):
class Meta:
model = Message
self.initial_status = obj.moderation_status
return cleaned_data
+
class MessageAdmin(admin.ModelAdmin):
form = MessageAdminForm
search_fields = ('subject', 'body')
)}),
)
readonly_fields = (
- 'parent', 'thread', # no reason to change, and anyway too many objects
- 'moderation_date', 'moderation_by', # automatically set at status change
+ 'parent', 'thread', # no reason to change, and anyway too many objects
+ 'moderation_date', 'moderation_by', # automatically set at status change
)
radio_fields = {'moderation_status': admin.VERTICAL}
obj.update_parent(form.initial_status)
obj.notify_users(form.initial_status, is_auto_moderated=False)
+
class PendingMessageAdminForm(forms.ModelForm):
class Meta:
model = PendingMessage
obj.set_rejected()
return cleaned_data
+
class PendingMessageAdmin(MessageAdmin):
form = PendingMessageAdminForm
search_fields = ()
subject='New {0} at Our School: {1}'.format(e.type, e.title),
body=e.description)
"""
+from __future__ import unicode_literals
+
try:
- from django.utils.timezone import now # Django 1.4 aware datetimes
+ from django.utils.timezone import now # Django 1.4 aware datetimes
except ImportError:
from datetime import datetime
now = datetime.now
+from __future__ import unicode_literals
+
from postman.models import Message
+
def inbox(request):
"""Provide the count of unread messages for an authenticated user."""
if request.user.is_authenticated():
"""
Custom fields.
"""
+from __future__ import unicode_literals
from django.conf import settings
-from django.contrib.auth.models import User
+try:
+ from django.contrib.auth import get_user_model # Django 1.5
+except ImportError:
+ from postman.future_1_5 import get_user_model
from django.core.exceptions import ValidationError
from django.core.validators import EMPTY_VALUES
from django.forms.fields import CharField
from django.utils.translation import ugettext_lazy as _
+
class BasicCommaSeparatedUserField(CharField):
"""
An internal base class for CommaSeparatedUserField.
'max': _("Ensure this value has at most {limit_value} distinct items (it has {show_value})."),
'min': _("Ensure this value has at least {limit_value} distinct items (it has {show_value})."),
'filtered': _("Some usernames are rejected: {users}."),
- 'filtered_user': _("{user.username}"),
- 'filtered_user_with_reason': _("{user.username} ({reason})"),
+ 'filtered_user': _("{username}"),
+ 'filtered_user_with_reason': _("{username} ({reason})"),
}
def __init__(self, max=None, min=None, user_filter=None, *args, **kwargs):
def to_python(self, value):
"""Normalize data to an unordered list of distinct, non empty, whitespace-stripped strings."""
value = super(BasicCommaSeparatedUserField, self).to_python(value)
- if value in EMPTY_VALUES: # Return an empty list if no useful input was given.
+ if value in EMPTY_VALUES: # Return an empty list if no useful input was given.
return []
return list(set([name.strip() for name in value.split(',') if name and not name.isspace()]))
names = super(BasicCommaSeparatedUserField, self).clean(value)
if not names:
return []
- users = list(User.objects.filter(is_active=True, username__in=names))
- unknown_names = set(names) ^ set([u.username for u in users])
+ user_model = get_user_model()
+ users = list(user_model.objects.filter(is_active=True, **{'{0}__in'.format(user_model.USERNAME_FIELD): names}))
+ unknown_names = set(names) ^ set([u.get_username() for u in users])
errors = []
if unknown_names:
errors.append(self.error_messages['unknown'].format(users=', '.join(unknown_names)))
filtered_names.append(
self.error_messages[
'filtered_user_with_reason' if reason else 'filtered_user'
- ].format(user=u, reason=reason)
+ ].format(username=u.get_username(), reason=reason)
)
- except ValidationError, e:
+ except ValidationError as e:
users.remove(u)
errors.extend(e.messages)
if filtered_names:
app_name = d.get('name', 'ajax_select')
field_name = d.get('field', 'AutoCompleteField')
arg_name = d.get('arg_name', 'channel')
-arg_default = d.get('arg_default') # the minimum to declare to enable the feature
+arg_default = d.get('arg_default') # the minimum to declare to enable the feature
autocompleter_app = {}
if app_name in settings.INSTALLED_APPS and arg_default:
exchange_filter = staticmethod(my_exchange_filter)
"""
+from __future__ import unicode_literals
+
from django import forms
from django.conf import settings
-from django.contrib.auth.models import User
+try:
+ from django.contrib.auth import get_user_model # Django 1.5
+except ImportError:
+ from postman.future_1_5 import get_user_model
from django.db import transaction
from django.utils.translation import ugettext, ugettext_lazy as _
from postman.models import Message
from postman.utils import WRAP_WIDTH
+
class BaseWriteForm(forms.ModelForm):
"""The base class for other forms."""
class Meta:
error_messages = {
'filtered': _("Writing to some users is not possible: {users}."),
- 'filtered_user': _("{user.username}"),
- 'filtered_user_with_reason': _("{user.username} ({reason})"),
+ 'filtered_user': _("{username}"),
+ 'filtered_user_with_reason': _("{username} ({reason})"),
}
def clean_recipients(self):
"""Check no filter prohibit the exchange."""
filtered_names.append(
self.error_messages[
'filtered_user_with_reason' if reason else 'filtered_user'
- ].format(user=u, reason=reason)
+ ].format(username=u.get_username(), reason=reason)
)
- except forms.ValidationError, e:
+ except forms.ValidationError as e:
recipients.remove(u)
errors.extend(e.messages)
if filtered_names:
"""
recipients = self.cleaned_data.get('recipients', [])
- if parent and not parent.thread_id: # at the very first reply, make it a conversation
+ if parent and not parent.thread_id: # at the very first reply, make it a conversation
parent.thread = parent
parent.save()
# but delay the setting of parent.replied_at to the moderation step
initial_dates = self.instance.get_dates()
initial_status = self.instance.moderation_status
if recipient:
- if isinstance(recipient, User) and recipient in recipients:
+ if isinstance(recipient, get_user_model()) and recipient in recipients:
recipients.remove(recipient)
recipients.insert(0, recipient)
is_successful = True
for r in recipients:
- if isinstance(r, User):
+ if isinstance(r, get_user_model()):
self.instance.recipient = r
else:
self.instance.recipient = None
self.instance.email = r
- self.instance.pk = None # force_insert=True is not accessible from here
+ self.instance.pk = None # force_insert=True is not accessible from here
self.instance.auto_moderate(auto_moderators)
self.instance.clean_moderation(initial_status)
self.instance.clean_for_visitor()
self.instance.update_parent(initial_status)
self.instance.notify_users(initial_status)
# some resets for next reuse
- if not isinstance(r, User):
+ if not isinstance(r, get_user_model()):
self.instance.email = ''
self.instance.set_moderation(*initial_moderation)
self.instance.set_dates(*initial_dates)
return is_successful
+
class WriteForm(BaseWriteForm):
"""The form for an authenticated user, to compose a message."""
recipients = CommaSeparatedUserField(label=(_("Recipients"), _("Recipient")))
class Meta(BaseWriteForm.Meta):
fields = ('recipients', 'subject', 'body')
+
class AnonymousWriteForm(BaseWriteForm):
"""The form for an anonymous user, to compose a message."""
# The 'max' customization should not be permitted here.
can_overwrite_limits = False
email = forms.EmailField(label=_("Email"))
- recipients = CommaSeparatedUserField(label=(_("Recipients"), _("Recipient")), max=1) # one recipient is enough
+ recipients = CommaSeparatedUserField(label=(_("Recipients"), _("Recipient")), max=1) # one recipient is enough
class Meta(BaseWriteForm.Meta):
fields = ('email', 'recipients', 'subject', 'body')
+
class BaseReplyForm(BaseWriteForm):
"""The base class for a reply to a message."""
def __init__(self, *args, **kwargs):
def save(self, *args, **kwargs):
return super(BaseReplyForm, self).save(self.recipient, *args, **kwargs)
+
class QuickReplyForm(BaseReplyForm):
"""
The form to use in the view of a message or a conversation, for a quick reply.
"""
pass
+
allow_copies = not getattr(settings, 'POSTMAN_DISALLOW_COPIES_ON_REPLY', False)
class FullReplyForm(BaseReplyForm):
"""The complete reply form."""
--- /dev/null
+"""\r
+A forwards compatibility module.\r
+\r
+Implements some features of Django 1.5 related to the 'Custom User Model' feature\r
+when the application is run with a lower version of Django.\r
+"""\r
+\r
+from __future__ import unicode_literals\r
+\r
+from django.contrib.auth.models import User\r
+\r
+User.USERNAME_FIELD = 'username'\r
+User.get_username = lambda self: self.username\r
+\r
+def get_user_model():\r
+ return User\r
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2011-02-07 08:13+0100\n"
+"POT-Creation-Date: 2012-12-10 22:48+0100\n"
"PO-Revision-Date: 2011-02-07 08:13+0100\n"
"Last-Translator: turbonerd <eyad.alsibai@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: ar\n"
"Plural-Forms: nplurals=4; plural=(n == 1? 0 : (n == 2? 1 : (n <= 10? 2 : 3)))\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr ""
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr ""
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr ""
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr ""
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr ""
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr ""
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr ""
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr ""
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr ""
-#: .\admin.py:88 .\admin.py:164 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr ""
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr ""
-#: .\admin.py:98 .\admin.py:168
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr ""
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr ""
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr ""
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr ""
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr ""
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr ""
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr ""
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr ""
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr ""
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr ""
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr ""
-#: .\models.py:200
+#: .\models.py:242
msgid "subject"
msgstr "موضوع"
-#: .\models.py:201
+#: .\models.py:243
msgid "body"
msgstr ""
-#: .\models.py:202 .\models.py:284
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "مرسل"
-#: .\models.py:203 .\models.py:308
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr ""
-#: .\models.py:204
+#: .\models.py:246
msgid "visitor"
msgstr "زائر"
-#: .\models.py:205
+#: .\models.py:247
msgid "parent message"
msgstr ""
-#: .\models.py:206
+#: .\models.py:248
msgid "root message"
msgstr ""
-#: .\models.py:207
+#: .\models.py:249
msgid "sent at"
msgstr ""
-#: .\models.py:208
+#: .\models.py:250
msgid "read at"
msgstr ""
-#: .\models.py:209
+#: .\models.py:251
msgid "replied at"
msgstr ""
-#: .\models.py:210
+#: .\models.py:252
msgid "archived by sender"
msgstr ""
-#: .\models.py:211
+#: .\models.py:253
msgid "archived by recipient"
msgstr ""
-#: .\models.py:212
+#: .\models.py:254
msgid "deleted by sender at"
msgstr ""
-#: .\models.py:213
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr ""
-#: .\models.py:215
+#: .\models.py:257
msgid "status"
msgstr "حالة"
-#: .\models.py:217
+#: .\models.py:259
msgid "moderator"
msgstr ""
-#: .\models.py:218
+#: .\models.py:260
msgid "moderated at"
msgstr ""
-#: .\models.py:219
+#: .\models.py:261
msgid "rejection reason"
msgstr ""
-#: .\models.py:224
+#: .\models.py:266
msgid "message"
msgstr "رسالة"
-#: .\models.py:225
+#: .\models.py:267
msgid "messages"
msgstr "رسائل"
-#: .\models.py:336
+#: .\models.py:378
msgid "Undefined sender."
msgstr ""
-#: .\models.py:476
+#: .\models.py:523
msgid "pending message"
msgstr ""
-#: .\models.py:477
+#: .\models.py:524
msgid "pending messages"
msgstr ""
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{body}\n"
msgstr ""
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr ""
-#: .\views.py:129 .\views.py:189
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr ""
-#: .\views.py:131 .\views.py:191
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr ""
-#: .\views.py:278
+#: .\views.py:299
msgid "Select at least one object."
msgstr ""
-#: .\views.py:284
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr ""
-#: .\views.py:289
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr ""
-#: .\views.py:294
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr ""
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr ""
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr ""
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr ""
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr ""
"long term storage."
msgstr ""
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr ""
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr ""
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr ""
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr ""
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr ""
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr ""
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr ""
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr ""
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr ""
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr ""
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr ""
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr ""
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr ""
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr ""
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "موضوع"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr ""
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr ""
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr ""
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr ""
msgid "Received"
msgstr ""
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr ""
"storage, use instead the archive folder."
msgstr ""
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr ""
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ": "
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr ""
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr ""
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2011-02-07 08:48+0100\n"
+"POT-Creation-Date: 2012-12-10 22:52+0100\n"
"PO-Revision-Date: 2011-02-07 08:48+0100\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: da\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr ""
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr ""
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr ""
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr ""
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr ""
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr ""
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr ""
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr ""
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr ""
-#: .\admin.py:88 .\admin.py:164 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Beskeder"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr ""
-#: .\admin.py:98 .\admin.py:168
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr ""
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr ""
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr ""
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr ""
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr ""
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Modtager"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr ""
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr ""
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr ""
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr ""
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr ""
-#: .\models.py:200
+#: .\models.py:242
msgid "subject"
msgstr "emne"
-#: .\models.py:201
+#: .\models.py:243
msgid "body"
msgstr "indhold"
-#: .\models.py:202 .\models.py:284
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "afsender"
-#: .\models.py:203 .\models.py:308
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "modtager"
-#: .\models.py:204
+#: .\models.py:246
msgid "visitor"
msgstr ""
-#: .\models.py:205
+#: .\models.py:247
msgid "parent message"
msgstr "stambesked"
-#: .\models.py:206
+#: .\models.py:248
msgid "root message"
msgstr ""
-#: .\models.py:207
+#: .\models.py:249
msgid "sent at"
msgstr ""
-#: .\models.py:208
+#: .\models.py:250
msgid "read at"
msgstr ""
-#: .\models.py:209
+#: .\models.py:251
msgid "replied at"
msgstr ""
-#: .\models.py:210
+#: .\models.py:252
msgid "archived by sender"
msgstr ""
-#: .\models.py:211
+#: .\models.py:253
msgid "archived by recipient"
msgstr ""
-#: .\models.py:212
+#: .\models.py:254
msgid "deleted by sender at"
msgstr ""
-#: .\models.py:213
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr ""
-#: .\models.py:215
+#: .\models.py:257
msgid "status"
msgstr ""
-#: .\models.py:217
+#: .\models.py:259
msgid "moderator"
msgstr ""
-#: .\models.py:218
+#: .\models.py:260
msgid "moderated at"
msgstr ""
-#: .\models.py:219
+#: .\models.py:261
msgid "rejection reason"
msgstr ""
-#: .\models.py:224
+#: .\models.py:266
msgid "message"
msgstr "besked"
-#: .\models.py:225
+#: .\models.py:267
msgid "messages"
msgstr "beskeder"
-#: .\models.py:336
+#: .\models.py:378
msgid "Undefined sender."
msgstr ""
-#: .\models.py:476
+#: .\models.py:523
msgid "pending message"
msgstr ""
-#: .\models.py:477
+#: .\models.py:524
msgid "pending messages"
msgstr ""
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} skrev:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "SV: {subject}"
-#: .\views.py:129 .\views.py:189
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Besked sendt succesfuldt."
-#: .\views.py:131 .\views.py:191
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr ""
-#: .\views.py:278
+#: .\views.py:299
msgid "Select at least one object."
msgstr ""
-#: .\views.py:284
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr ""
-#: .\views.py:289
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr ""
-#: .\views.py:294
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr ""
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Besked modtaget"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Du har modtaget en besked"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Svar modtaget"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Du har modtaget et svar"
"long term storage."
msgstr ""
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr ""
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Indboks"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Sendte beskeder"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr ""
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr ""
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Papirkurv"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr ""
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr ""
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr ""
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Slet"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr ""
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Genskab"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Handling"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Afsender"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Emne"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Dato"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,j b,j/n/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr ""
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Send"
msgid "Received"
msgstr "Modtaget"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Svar"
"storage, use instead the archive folder."
msgstr ""
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr ""
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ": "
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr ""
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr ""
# German translation of django-postman.
# Copyright (C) 2010 Patrick Samson
# This file is distributed under the same license as the django-postman package.
-#
+#
# Translators:
# Patrick Samson <maxcom@laposte.net>, 2011.
# <simon@cowboyventure.com>, 2012.
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 22:54+0100\n"
"PO-Revision-Date: 2012-05-18 13:23+0000\n"
"Last-Translator: lonelycowboy <simon@cowboyventure.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "Sender und Empfänger können nicht beide undefiniert sein."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "Die Email des Besuchers ist zu lang."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Die Email des Besuchers fehlt."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "Das Lese-Datum muss neuer sein als das Sende-Datum."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr "Das Lösch-Datum muss neuer sein als das Sende-Datum."
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr "Das Lösch-Datum muss neuer sein als das Sende-Datum."
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "Das Antwort-Datum muss neuer sein als das Sende-Datum."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
-msgstr "Die Nachricht kann nicht beantwortet werden, bevor sie nicht gelesen wurde."
+msgstr ""
+"Die Nachricht kann nicht beantwortet werden, bevor sie nicht gelesen wurde."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "Das Antwort-Datum muss neuer sein als das Lese-Datum."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
-msgstr "Das Antwort-Datum kann nicht gesetzt werden, wenn nicht mindestens eine Antwort geschrieben wurde."
+msgstr ""
+"Das Antwort-Datum kann nicht gesetzt werden, wenn nicht mindestens eine "
+"Antwort geschrieben wurde."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
-msgstr "Auf diese Nachricht kann nicht geantwortet werden, ohne dass die Teil einer Konversation ist."
+msgstr ""
+"Auf diese Nachricht kann nicht geantwortet werden, ohne dass die Teil einer "
+"Konversation ist."
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Nachricht"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Daten"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "Moderierung"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Manche Nutzernamen sind unbekannt oder nicht mehr aktiv: {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
-msgstr "Stellen Sie sicher, dass dieser Wert aus höchstens {limit_value} Einzelteilen besteht (Er hat momentan {show_value})."
+msgstr ""
+"Stellen Sie sicher, dass dieser Wert aus höchstens {limit_value} "
+"Einzelteilen besteht (Er hat momentan {show_value})."
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
-msgstr "Stellen Sie sicher, dass dieser Wert aus mindestens {limit_value} Einzelteilen besteht (Er hat momentan {show_value})."
+msgstr ""
+"Stellen Sie sicher, dass dieser Wert aus mindestens {limit_value} "
+"Einzelteilen besteht (Er hat momentan {show_value})."
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Folgende Nutzernamen wurden abgelehnt: {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "Folgende Nutzer konnten nicht angeschrieben werden: {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Empfänger"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Empfänger"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "E-Mail"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Undefinierter Empfänger"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Zusätzliche Empfänger"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Zusätzlicher Empfänger"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "In Bearbeitung"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Akzeptiert"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Abgelehnt"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "betreff"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "inhalt"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "absender"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "empfänger"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "besucher"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "Übergeordnete nachricht"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "Ursprüngliche Nachricht"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "gesendet am"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "gelesen am"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "beantwortet am"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "vom absender archiviert"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "vom empfänger archiviert"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "vom absender gelöscht am"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "vom empfänger gelöscht am"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "status"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "Moderator"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr "Moderiert am"
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "Ablehnungsgrund"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "nachricht"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "nachrichten"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Undefinierter Sender."
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "Nachricht in Bearbeitung"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "Nachrichten in Bearbeitung"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} schrieb:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Re: {subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Nachricht erfolgreich gesendet."
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Die Nachricht wurde wegen mindestens einem Empfänger abgelehnt."
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "Wählen Sie mindestens ein Objekt aus."
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Nachrichten oder Konversationen erfolgreich archiviert."
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Nachrichten oder Konversationen erfolgreich gelöscht."
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Nachrichten oder Konversationen erfolgreich wiederhergestellt."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Nachricht abgelehnt."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Ihre Nachricht wurde abgelehnt"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Nachricht erhalten"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Du hast eine Nachricht erhalten"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Antwort erhalten"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Du hast eine Antwort erhalten"
msgid ""
"Messages in this folder will never be removed. You can use this folder for "
"long term storage."
-msgstr "Nachrichten in diesem Ordner werden nie gelöscht. Sie können diesen Ordner für Langzeitspeicherung verwenden."
+msgstr ""
+"Nachrichten in diesem Ordner werden nie gelöscht. Sie können diesen Ordner "
+"für Langzeitspeicherung verwenden."
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "Nachrichten"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Posteingang"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Gesendete Nachrichten"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Schreiben"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Archiven"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Papierkorb"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Sorry, diese Seite ist ungültig."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "nach Konversation"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "nach Nachricht"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Löschen"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Archivieren"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Wiederherstellen"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Aktion"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Absender"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Betreff"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Datum"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,j b,j/n/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Keine Nachrichten."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Senden"
#: .\templates\postman\email_visitor.txt.py:3
#, python-format
msgid "On %(date)s, you asked to send a message to the user '%(recipient)s'."
-msgstr "Am %(date)s baten Sie darum, eine Nachricht an Nutzer '%(recipient)s' zu schicken."
+msgstr ""
+"Am %(date)s baten Sie darum, eine Nachricht an Nutzer '%(recipient)s' zu "
+"schicken."
#: .\templates\postman\email_user.txt.py:5
#: .\templates\postman\email_visitor.txt.py:5
msgid "Received"
msgstr "Erhalten"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Antworten"
msgid ""
"Messages in this folder can be removed from time to time. For long term "
"storage, use instead the archive folder."
-msgstr "Nachrichten in diesem Ordner können von zu Zeit zu Zeit gelöscht werden. Verwenden Sie für die Langzeitspeicherung stattdessen den Archiv-Ordner."
+msgstr ""
+"Nachrichten in diesem Ordner können von zu Zeit zu Zeit gelöscht werden. "
+"Verwenden Sie für die Langzeitspeicherung stattdessen den Archiv-Ordner."
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Konversation"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr " :"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Zurück"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<Ich>"
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 22:57+0100\n"
"PO-Revision-Date: 2011-04-26 18:39+0000\n"
"Last-Translator: provetza <mgogoulos@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: el\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr ""
-"Ο αποστολέας και ο παραλήπτης δεν μπορούν να είναι και οι δυο "
-"απροσδιόριστοι."
+"Ο αποστολέας και ο παραλήπτης δεν μπορούν να είναι και οι δυο απροσδιόριστοι."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "Το e-mail του επισκέπτη είναι σε περίσσεια."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Το e-mail του επισκέπτη λείπει."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr ""
"Η ημερομηνία ανάγνωσης πρέπει να είναι μεταγενέστερη της ημερομηνίας "
"αποστολής."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
"Η ημερομηνία διαγραφής πρέπει να είναι μεταγενέστερη της ημερομηνίας "
"αποστολής."
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
"Η ημερομηνία διαγραφής από τον αποδέκτη πρέπει να είναι μεταγενέστερη της "
"ημερομηνίας αποστολής."
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr ""
"Η ημερομηνία ανταπόκρισης πρέπει να είναι μεταγενέστερη της ημερομηνίας "
"αποστολής."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "Το μήνυμα δεν μπορεί να απαντηθεί χωρίς να έχει πρώτα διαβάσει."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr ""
"Η ημερομηνία της απόκρισης πρέπει να είναι μεταγενέστερη της ημερομηνίας "
"ανάγνωσης."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr ""
"Η ημερομηνία της ανταπόκρισης δεν μπορεί να ρυθμιστεί χωρίς μια τουλάχιστον "
"απάντηση."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr "Το μήνυμα δεν μπορεί να απαντηθεί χωρίς να είναι σε μια συνομιλία."
-#: .\admin.py:88 .\admin.py:164 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Μήνυμα"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Ημερομηνίες"
-#: .\admin.py:98 .\admin.py:168
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "Τροποποίηση"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Μερικοί χρήστες είναι άγνωστοι ή δεν είναι πλεον ενεργοί: {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
"Βεβαιωθείτε ότι αυτή η τιμή έχει το πολύ {limit_value} διακριτές θέσεις "
"(έχει {show_value})."
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
"Βεβαιωθείτε ότι αυτή η τιμή έχει τουλάχιστον {limit_value} διακριτές θέσεις "
"(έχει {show_value})."
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Τα παρακάτω ονόματα απορρίπτονται: {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "Δεν ήταν εφικτή η αποστολή στους χρήστες: {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Αποδέκτες"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Αποδέκτης"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Email"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Απροσδιόριστος παραλήπτης."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Πρόσθετοι αποδέκτες"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Πρόσθετος παραλήπτης"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "Σε αναμονή"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Αποδεκτά"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Απορρίφθηκαν"
-#: .\models.py:200
+#: .\models.py:242
msgid "subject"
msgstr "θέμα"
-#: .\models.py:201
+#: .\models.py:243
msgid "body"
msgstr "σώμα"
-#: .\models.py:202 .\models.py:284
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "αποστολέας"
-#: .\models.py:203 .\models.py:308
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "αποδέκτης"
-#: .\models.py:204
+#: .\models.py:246
msgid "visitor"
msgstr "επισκέπτης"
-#: .\models.py:205
+#: .\models.py:247
msgid "parent message"
msgstr "μήνυμα γονέας"
-#: .\models.py:206
+#: .\models.py:248
msgid "root message"
msgstr "αρχικό μήνυμα"
-#: .\models.py:207
+#: .\models.py:249
msgid "sent at"
msgstr "εστάλη στις"
-#: .\models.py:208
+#: .\models.py:250
msgid "read at"
msgstr "διαβάστηκε στις"
-#: .\models.py:209
+#: .\models.py:251
msgid "replied at"
msgstr "απαντήθηκε σε"
-#: .\models.py:210
+#: .\models.py:252
msgid "archived by sender"
msgstr "αρχειοθέτηση ανά αποστολέα"
-#: .\models.py:211
+#: .\models.py:253
msgid "archived by recipient"
msgstr "αρχειοθέτηση ανά παραλήπτη"
-#: .\models.py:212
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "έχει διαγραφεί από τον αποστολέα στις"
-#: .\models.py:213
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "έχει διαγραφεί από τον αποδέκτη στις"
-#: .\models.py:215
+#: .\models.py:257
msgid "status"
msgstr "κατάσταση"
-#: .\models.py:217
+#: .\models.py:259
msgid "moderator"
msgstr "διαχειριστής"
-#: .\models.py:218
+#: .\models.py:260
msgid "moderated at"
msgstr "τροποποιήθηκε στις"
-#: .\models.py:219
+#: .\models.py:261
msgid "rejection reason"
msgstr "λόγος απόρριψης"
-#: .\models.py:224
+#: .\models.py:266
msgid "message"
msgstr "μήνυμα"
-#: .\models.py:225
+#: .\models.py:267
msgid "messages"
msgstr "μηνύματα"
-#: .\models.py:336
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Απροσδιόριστος αποστολέας."
-#: .\models.py:476
+#: .\models.py:523
msgid "pending message"
msgstr "μήνυμα εν αναμονή"
-#: .\models.py:477
+#: .\models.py:524
msgid "pending messages"
msgstr "μηνύματα που εκκρεμούν"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} έγραψε:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Re: {subject}"
-#: .\views.py:129 .\views.py:189
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Το μήνυμα έχει αποσταλεί με επιτυχία."
-#: .\views.py:131 .\views.py:191
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Το μήνυμα έχει απορριφθεί για τουλάχιστον έναν παραλήπτη."
-#: .\views.py:278
+#: .\views.py:299
msgid "Select at least one object."
msgstr "Επιλέξτε τουλάχιστον ένα αντικείμενο."
-#: .\views.py:284
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Μηνύματα ή συνομιλίες που έχουν αρχειοθετηθεί."
-#: .\views.py:289
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Μηνύματα ή συνομιλίες που έχουν διαγραφεί."
-#: .\views.py:294
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Μηνύματα ή συνομιλίες που έχουν ανακτηθεί."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Το μήνυμα έχει απορριφθεί"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Το μήνυμά σας έχει απορριφθεί"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Μήνυμα Ελήφθη"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Έχετε ένα μήνυμα"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Απάντηση ελήφθη"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Έχετε λάβει μια απάντηση"
"Τα μηνύματα σε αυτό το φάκελο δεν θα αφαιρεθούν ποτέ. Μπορείτε να τον "
"χρησιμοποιήσετε για μακροχρόνια αποθήκευση."
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "Μηνύματα"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Εισερχόμενα"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Απεσταλμένα"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Γράψτε"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Αρχεία"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Σκουπίδια"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Λυπούμαι, ο αριθμός αυτής της σελίδας δεν είναι έγκυρος."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "κατά συνομιλία"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "ανά μήνυμα"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Διαγράψτε"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Αρχείο"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Ξεδιαγράψτε"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Ενέργεια"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Αποστολέας"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Θέμα"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Ημερομηνία"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "g:i A,M j,n/j/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Δεν υπάρχουν μηνύματα."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Αποστολή"
#: .\templates\postman\email_visitor.txt.py:8
msgid "As a reminder, please find below the content of your message."
msgstr ""
-"Σαν υπενθύμιση, μπορείτε να βρείτε παρακάτω το περιεχόμενο του μηνύματός "
-"σας."
+"Σαν υπενθύμιση, μπορείτε να βρείτε παρακάτω το περιεχόμενο του μηνύματός σας."
#: .\templates\postman\email_visitor.txt.py:11
msgid "Please find below the answer from your correspondent."
#: .\templates\postman\email_visitor.txt.py:15
msgid "For more comfort, we encourage you to open an account on the site."
msgstr ""
-"Για περισσότερη άνεση, σας προτείνουμε να ανοίξετε ένα λογαριασμό στη "
-"σελίδα."
+"Για περισσότερη άνεση, σας προτείνουμε να ανοίξετε ένα λογαριασμό στη σελίδα."
#: .\templates\postman\inbox.html.py:3
msgid "Received Messages"
msgid "Received"
msgstr "Παρελήφθη"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Απάντηση"
"Τα μηνύματα σε αυτό το φάκελο ενδέχεται να αφαιρεθούν από καιρό σε καιρό. "
"Για μακροχρόνια αποθήκευση, χρησιμοποιήστε το φάκελο αρχειοθέτησης."
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Συνομιλία"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ":"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Επιστροφή"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<me>"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 23:00+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr ""
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr ""
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr ""
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr ""
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr ""
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr ""
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr ""
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr ""
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr ""
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr ""
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr ""
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr ""
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr ""
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr ""
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
msgstr ""
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
msgstr ""
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr ""
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr ""
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr ""
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr ""
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr ""
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr ""
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr ""
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr ""
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr ""
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr ""
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr ""
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr ""
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr ""
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr ""
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr ""
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr ""
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr ""
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr ""
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr ""
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr ""
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr ""
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr ""
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr ""
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr ""
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr ""
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr ""
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr ""
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr ""
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr ""
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr ""
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr ""
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr ""
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{body}\n"
msgstr ""
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr ""
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr ""
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr ""
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr ""
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr ""
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr ""
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr ""
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr ""
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr ""
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr ""
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr ""
"long term storage."
msgstr ""
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr ""
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr ""
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr ""
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr ""
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr ""
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr ""
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr ""
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr ""
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr ""
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr ""
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr ""
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr ""
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr ""
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr ""
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr ""
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr ""
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr ""
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr ""
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr ""
msgid "Received"
msgstr ""
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr ""
"storage, use instead the archive folder."
msgstr ""
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr ""
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ""
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr ""
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr ""
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 15:16+0100\n"
+"POT-Creation-Date: 2012-12-10 23:02+0100\n"
"PO-Revision-Date: 2012-10-19 14:04+0000\n"
"Last-Translator: matiasherranz <matiasherranz@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "Remitente y el destinatario no puede ser indefinido."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "Correo del visitante esta en exceso."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Correo del visitante no se encuentra."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "Fecha de lectura debe ser posterior a la fecha de envío."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
-"Fecha de eliminación por el remitente debe ser posterior a la fecha de "
-"envío."
+"Fecha de eliminación por el remitente debe ser posterior a la fecha de envío."
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
"Fecha de eliminación por el destinatario debe ser posterior a la fecha de "
"envío."
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "Fecha de respuesta debe ser posterior a la fecha de envío."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "El mensaje no puede ser respondido sin haberlo leído."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "Fecha de respuesta debe ser posterior a la fecha de lectura."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr "Fecha de respuesta no se puede establecer sin al menos una respuesta."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr "El mensaje no puede ser respondido sin estar en una conversación."
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Mensaje"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Fechas"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "Moderación"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Algunos usuarios son desconocidos o no están activos: {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
"Asegúrese de que este valor tiene mas de {limit_value} elementos distintos "
"(este tiene {show_value})."
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
"Asegúrese de que este valor tiene por lo menos {limit_value} elementos "
"distintos (este tiene {show_value})."
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Algunos usuarios son rechazados: {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "La escritura a algunos usuarios no es posible: {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Destinatarios"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Destinatario"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Correo"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Destinatario no definido."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Destinatarios adicionales"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Destinatario adicional"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "Pendiente"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Aceptado"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Rechazado"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "asunto"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "contenido"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "emisor"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "destinatario"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "visitante"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "mensaje padre"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "mensaje raíz"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "enviado a"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "leído a"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "respondido a"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "archivado por el remitente"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "archivado por el destinatario"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "eliminado por el remitente el"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "eliminado por el destinatario el"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "estado"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "moderador"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr "moderado el"
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "motivo de rechazo"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "mensaje"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "mensajes"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Remitente no definido."
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "mensaje pendiente"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "mensajes pendientes"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} scribió:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Re: {subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Mensaje enviado con éxito."
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Mensaje rechazado por al menos un destinatario."
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "Seleccione al menos un objeto."
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Mensajes o conversaciones archivado con éxito."
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Mensajes o conversaciones eliminado con éxito."
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Mensajes o conversaciones recuperado con éxito."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Mensaje rechazado"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Tu mensaje ha sido rechazada"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Mensaje recibido"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Ha recibido un mensaje"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Respuesta recibida"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Ha recibido una respuesta"
"Los mensajes en esta carpeta no serán eliminados. Puede utilizar esta "
"carpeta para el almacenamiento a largo plazo."
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "Mensajería"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Recibidos"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Mensajes enviados"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Escribe"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Archivos"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Papelera"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Lo sentimos, este número de la página no es válida."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "por conversación"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "por mensaje"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Eliminar"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Archivar"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Recuperar"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Acción"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Emisor"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Asunto"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Fecha"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,j b,j/n/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "No hay mensajes."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Enviar"
#: .\templates\postman\email_visitor.txt.py:3
#, python-format
msgid "On %(date)s, you asked to send a message to the user '%(recipient)s'."
-msgstr "En la fecha %(date)s, solicitaste que se envíe un mensaje al usuario '%(recipient)s'."
+msgstr ""
+"En la fecha %(date)s, solicitaste que se envíe un mensaje al usuario '%"
+"(recipient)s'."
#: .\templates\postman\email_user.txt.py:5
#: .\templates\postman\email_visitor.txt.py:5
#: .\templates\postman\email_user.txt.py:11
#, python-format
msgid "You have received a copy of a response from the user '%(sender)s'."
-msgstr ""
-"Usted ha recibido una copia de una respuesta del usuario '%(sender)s'."
+msgstr "Usted ha recibido una copia de una respuesta del usuario '%(sender)s'."
#: .\templates\postman\email_user.txt.py:13
#, python-format
#: .\templates\postman\email_visitor.txt.py:15
msgid "For more comfort, we encourage you to open an account on the site."
-msgstr ""
-"Para mayor comodidad, le recomendamos que abra una cuenta en el sitio."
+msgstr "Para mayor comodidad, le recomendamos que abra una cuenta en el sitio."
#: .\templates\postman\inbox.html.py:3
msgid "Received Messages"
msgid "Received"
msgstr "Recibido"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Responder"
msgid ""
"Messages in this folder can be removed from time to time. For long term "
"storage, use instead the archive folder."
-msgstr "Los mensajes en esta carpeta pueden ser borrados de tanto en tanto. No utilice esta carpeta para almacenamiento a largo plazo."
+msgstr ""
+"Los mensajes en esta carpeta pueden ser borrados de tanto en tanto. No "
+"utilice esta carpeta para almacenamiento a largo plazo."
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Conversación"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr " :"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Volver"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<usuario>"
# Persian IR translation of django-postman.
# Copyright (C) 2012 Patrick Samson
# This file is distributed under the same license as the django-postman package.
-#
+#
# Translators:
# Alireza Savand <alireza.savand@gmail.com>, 2012.
msgid ""
msgstr ""
"Project-Id-Version: django-postman\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 23:09+0100\n"
"PO-Revision-Date: 2012-05-20 13:00+0000\n"
"Last-Translator: Alireza Savand <alireza.savand@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: fa_IR\n"
"Plural-Forms: nplurals=1; plural=0\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "گیرنده و ارسال کننده نمیتوانند هر دو معرفی نشده باشند."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "ایمیل بازدیدکننده اضافی است."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "ایمیل بازدیدکننده گم شده."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "تاریخ خواندن پیام باید بعد از تاریخ ارسال آن باشد."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr ""
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "پیام نمی تواند ارسال شود بدون اینکه خوانده شود."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr ""
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr ""
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr ""
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "پیام"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "تاریخها"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "مدیریت"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "بعضی از نامکاربریها ناشناس هستند یا دیگر فعال نیستند : {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr ""
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "نوشتن برای برخی کاربران امکان پذیر نیست : {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "گیرندگان"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "گیرنده"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "ایمیل"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "گیرنده معرفی نشده."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "گیرندگان مضاعف"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "گیرنده مضاعف"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "در نوبت"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "قبول شده"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "در شده"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "موضوع"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "محتوا"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "ارسال کننده"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "گیرنده"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "بازدیدکننده"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "پیام بالاسری"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "پیام اصلی"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "ارسال شده در"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "خوانده شده در"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "جواب داده شده در"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "آرشیو شده توسط ارسال کننده"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "آرشیو شده توسط گیرنده"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "حذف شده توسط ارسال کننده در"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "حذف شده توسط گیرنده در"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "وضعیت"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "مدیر"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr "میدریت شده در"
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "دلیل رد شدن"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "پیام"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "پیامها"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "ارسال کننده معرفی نشده."
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "پیام در صف"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "پیامهای در صف"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr " <"
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} wrote:\n"
"{body}\n"
-msgstr "\n\n{sender} نوشت :\n{body}\n"
+msgstr ""
+"\n"
+"\n"
+"{sender} نوشت :\n"
+"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "در جواب: {subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "پیام با موفقیت ارسال شد."
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "پیام رد شد حداقل برای یک گیرنده."
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "حداقل یکی انتخاب کنید."
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "پیام یا بحث با موفقیت بایگانی شد."
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "پیام یا بحث با موفقیت حذف شد."
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "پیام یا بحث با موفقیت بازگردانی شد."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "پیام رد شد"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "پیام شما رد شد"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "پیام دریافت شد"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "شما یک پیام دریافت کردید"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "پاسخ دریافت شد"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "شما یک پاسخ دریافت کردید"
"long term storage."
msgstr ""
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "پیام نوشتن"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "صندوق"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "پیامهای ارسال شده"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "نوشتن"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "آرشیوها"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "سطل زباله"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "شرمنده، شماره این صفحه اشتباه است."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "توسط بحث"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "توسط پیام"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "حذف"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "آرشیو"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "برگرداندن"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "حرکت"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "ارسال کننده"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "موضوع"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "تاریخ"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "g:i A,M j,n/j/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "بودن پیام."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "ارسال"
#: .\templates\postman\email_visitor.txt.py:15
msgid "For more comfort, we encourage you to open an account on the site."
-msgstr "برای راحتی بیشتر پیشنهاد میدهیم، یک حساب کاربری روی این سایت ایجاد کنید."
+msgstr ""
+"برای راحتی بیشتر پیشنهاد میدهیم، یک حساب کاربری روی این سایت ایجاد کنید."
#: .\templates\postman\inbox.html.py:3
msgid "Received Messages"
msgid "Received"
msgstr "دریافت شده"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "پاسخ"
"storage, use instead the archive folder."
msgstr ""
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "بحث"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ":"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "برگرد"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<من>"
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 22:44+0100\n"
"PO-Revision-Date: 2010-12-15 17:19+0100\n"
"Last-Translator: Patrick Samson <maxcom@laposte.net>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=n>1;\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr ""
"Expéditeur et Destinataire ne peuvent pas être indéfinis tous les deux."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "Le courriel du visiteur est en trop."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Le courriel du visiteur est manquant."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "La date de lecture doit être postérieure à la date d'envoi."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
"La date de suppression par l'expéditeur doit être postérieure à la date "
"d'envoi."
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
"La date de suppression par le destinataire doit être postérieure à la date "
"d'envoi."
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "La date de réponse doit être postérieure à la date d'envoi."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "Le message ne peut pas être répondu sans avoir été lu."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "La date de réponse doit être postérieure à la date de lecture."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr ""
"La date de réponse ne peut pas être positionnée sans au moins une réponse."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr "Le message ne peut pas être répondu sans être dans une conversation."
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Message"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Dates"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "Modération"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Des noms d'utilisateur sont inconnus ou ne sont plus actifs : {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
"Assurez-vous que cette valeur a au plus {limit_value} éléments distincts "
"(elle en a {show_value})."
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
"Assurez-vous que cette valeur a au moins {limit_value} éléments distincts "
"(elle en a {show_value})."
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Des noms d'utilisateur sont rejetés : {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "Écrire à certains utilisateurs n'est pas possible : {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Destinataires"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Destinataire"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Courriel"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Destinataire indéfini."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Destinataires supplémentaires"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Destinataire supplémentaire"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "En attente"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Accepté"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Rejeté"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "objet"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "contenu"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "expéditeur"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "destinataire"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "visiteur"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "message parent"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "message racine"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "envoyé le"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "lu le"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "répondu le"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "archivé par l'expéditeur"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "archivé par le destinataire"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "supprimé par l'expéditeur le"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "supprimé par le destinataire le"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "état"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "modérateur"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr "modéré le"
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "motif de rejet"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "message"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "messages"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Expéditeur indéfini."
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "message en attente"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "messages en attente"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} a écrit :\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Re: {subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Message envoyé avec succès."
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Message rejeté pour au moins un destinataire."
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "Sélectionner au moins un objet."
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Messages ou conversations archivés avec succès."
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Messages ou conversations supprimés avec succès."
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Messages ou conversations restaurés avec succès."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Message Rejeté"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Votre message a été rejeté"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Message Reçu"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Vous avez reçu un message"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Réponse Reçue"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Vous avez reçu une réponse"
"Les messages dans ce dossier ne seront jamais supprimés. Vous pouvez "
"utiliser ce dossier pour un stockage à long terme."
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "Messagerie"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Boîte de réception"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Messages envoyés"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Écrire"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Archives"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Corbeille"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Désolé, ce numéro de page est invalide."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "par conversation"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "par message"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Supprimer"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Archiver"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Restaurer"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Action"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Expéditeur"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Objet"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Date"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,j b,j/n/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Pas de message."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Envoyer"
msgid "Received"
msgstr "Reçu"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Répondre"
"Les messages dans ce dossier peuvent être retirés de temps en temps. Pour un "
"stockage à long terme, utilisez plutôt le dossier d'archivage."
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Conversation"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr " :"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Retour"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<moi>"
msgstr ""
"Project-Id-Version: django-postman\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 15:44+0100\n"
+"POT-Creation-Date: 2012-12-10 23:11+0100\n"
"PO-Revision-Date: 2011-01-20 20:35+0000\n"
"Last-Translator: yohanboniface <yohanboniface@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: it\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr ""
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "La mail del visitatore è piena."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Manca la mail del visitatore."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "La data di lettura deve essere successiva alla data di invio."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "La data di risposta deve essere successiva alla data di invio."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "È impossibile rispondere al messaggio se non è stato letto."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "La data di risposta deve essere successiva alla data di lettura."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
-msgstr "La data di risposta non può essere impostata senza almeno una risposta."
+msgstr ""
+"La data di risposta non può essere impostata senza almeno una risposta."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr ""
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Messaggio"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Date"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr ""
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Alcuni utenti sono sconosciuti o non attivi: {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
"Assicurarsi che questo valore abbia al massimo {limit_value} elementi "
"distinti (ora ne ha {show_value})."
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
"Assicurarsi che questo valore abbia almeno {limit_value} elementi distinti "
"(ora ne ha {show_value})."
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Alcuni utenti sono stati rifiutati: {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "Non è possibile scrivere ad alcuni utenti: {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Destinatari"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Destinatario"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Posta"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Destinatario non specificato."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Destinatari aggiunti"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Destinatario aggiunto"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "In attesa"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Accettato"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Rifiutato"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "oggetto"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "contenuto"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "mittente"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "destinatario"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "visitatore"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr ""
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "messaggio iniziale"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "inviato il"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "letto il"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "risposto il"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "archiviato dal mittente"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "archiviato dal destinatario"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "cancellati dal mittente il"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "cancellati dal destinatario il"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "stato"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "moderatore"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr ""
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "ragione del rifiuto"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "messaggio"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "messaggi"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Mittente non definito."
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "messaggio in sospeso"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "messaggi in sospeso"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} ha scritto:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Re: {subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Messaggio inviato con successo."
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Messaggio rifiutato per almeno un destinatario."
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "Selezionare almeno un oggetto."
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Messaggi o conversazioni archiviati con successo."
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Messaggi o conversazioni eliminati con successo."
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Messaggi o conversazioni recuperati con successo."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Messaggio rifiutato"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Il tuo messaggio è stato respinto"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Messaggio ricevuto"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Hai ricevuto un messaggio"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Risposta ricevuta"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Hai ricevuto una risposta"
"I messaggi in questa cartella non saranno mai rimossi. È possibile "
"utilizzare questa cartella per archiviarli."
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "Scrivendo"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Posta in arrivo"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Messaggi inviati"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Scrivi"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Archivi"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Cestino"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Spiacenti, questo numero di pagina non è valido."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "per conversazione"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "per messaggio"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Eliminare"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Archiviare"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Ripristinare"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Azione"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Mittente"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Soggetto"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Data"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,j b,j/n/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Nessun messaggio."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Invia"
#: .\templates\postman\email_visitor.txt.py:3
#, python-format
msgid "On %(date)s, you asked to send a message to the user '%(recipient)s'."
-msgstr "Il %(date)s, hai chiesto di inviare un messaggio all'utente '%(recipient)s'."
+msgstr ""
+"Il %(date)s, hai chiesto di inviare un messaggio all'utente '%(recipient)s'."
#: .\templates\postman\email_user.txt.py:5
#: .\templates\postman\email_visitor.txt.py:5
#: .\templates\postman\email_visitor.txt.py:8
msgid "As a reminder, please find below the content of your message."
-msgstr "Come promemoria, puoi trovare qui di seguito il contenuto del messaggio."
+msgstr ""
+"Come promemoria, puoi trovare qui di seguito il contenuto del messaggio."
#: .\templates\postman\email_visitor.txt.py:11
msgid "Please find below the answer from your correspondent."
msgid "Received"
msgstr "Ricevuto"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Rispondi"
"Messages in this folder can be removed from time to time. For long term "
"storage, use instead the archive folder."
msgstr ""
-"I messaggi in questa cartella possono essere rimossi di volta in volta. "
-"Per la conservazione a lungo termine, utilizzare invece la cartella di "
-"archivio."
+"I messaggi in questa cartella possono essere rimossi di volta in volta. Per "
+"la conservazione a lungo termine, utilizzare invece la cartella di archivio."
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Conversazione"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr " :"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Indietro"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<me>"
# Copyright (C) 2010 Patrick Samson
# This file is distributed under the same license as the django-postman package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
+#
msgid ""
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 23:13+0100\n"
"PO-Revision-Date: 2010-12-27 15:10+0000\n"
"Last-Translator: psam <maxcom@laposte.net>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: nl\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr ""
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr ""
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr ""
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr ""
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr ""
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr ""
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr ""
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr ""
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr ""
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr ""
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr ""
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Bericht"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Data"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr ""
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr ""
-#: .\fields.py:23
-msgid "Ensure this value has at most {limit_value} distinct items (it has {show_value})."
+#: .\fields.py:28
+msgid ""
+"Ensure this value has at most {limit_value} distinct items (it has "
+"{show_value})."
msgstr ""
-#: .\fields.py:24
-msgid "Ensure this value has at least {limit_value} distinct items (it has {show_value})."
+#: .\fields.py:29
+msgid ""
+"Ensure this value has at least {limit_value} distinct items (it has "
+"{show_value})."
msgstr ""
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr ""
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr ""
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Ontvangers"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Ontvanger"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "E-mail"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr ""
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr ""
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr ""
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr ""
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr ""
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "onderwerp"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "inhoud"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "verstuurder"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "ontvanger"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "bezoeker"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "hoofdbericht"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr ""
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "verstuurd op"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "gelezen op"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "beantwoord op"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr ""
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr ""
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr ""
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr ""
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr ""
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr ""
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr ""
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr ""
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "bericht"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "berichten"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr ""
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr ""
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr ""
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} schreef:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Antw: {subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Bericht succesvol verstuurd."
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr ""
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr ""
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Berichten of conversaties succesvol gearchiveerd."
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Berichten of conversaties succesvol verwijderd."
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Berichten of conversaties succesvol hersteld."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr ""
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Bericht ontvangen"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "U hebt een bericht ontvangen"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Antwoord ontvangen"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "U hebt een antwoord ontvangen"
msgstr ""
#: .\templates\postman\archives.html.py:7
-msgid "Messages in this folder will never be removed. You can use this folder for long term storage."
+msgid ""
+"Messages in this folder will never be removed. You can use this folder for "
+"long term storage."
msgstr ""
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr ""
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Postvak In"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Verzonden berichten"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Schrijven"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Archieven"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Prullenbak"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Sorry, deze pagina is ongeldig."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "op conversatie"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "per bericht"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Verwijderen"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Archiveren"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Herstellen"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Actie"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Verstuurder"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Onderwerp"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Datum"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,j b,j/n/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Geen berichten."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Verzenden"
msgid "Received"
msgstr "Ontvangen"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Beantwoorden"
msgstr "Verwijderde berichten"
#: .\templates\postman\trash.html.py:10
-msgid "Messages in this folder can be removed from time to time. For long term storage, use instead the archive folder."
+msgid ""
+"Messages in this folder can be removed from time to time. For long term "
+"storage, use instead the archive folder."
msgstr ""
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Conversatie"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr " :"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Terug"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<mij>"
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2011-02-07 09:21+0100\n"
+"POT-Creation-Date: 2012-12-10 23:14+0100\n"
"PO-Revision-Date: 2012-07-27 09:58+0000\n"
"Last-Translator: Marek Polanski <m.polanski@epoczta.pl>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: pl\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "Nadawca i Odbiorca nie mogą być niezdefiniowani."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr ""
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Brakuje adresu email gościa."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "Data odczytania musi być późniejsza niż data wysłania."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr "Data usunięcia przez nadawcę musi być późniejsza niż data wysłania."
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr "Data usunięcia przez odbiorcę musi być późniejsza niż data wysłania."
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "Data odpowiedzi musi być późniejsza niż data wysłania."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "Nie można odpowiedzieć na wiadomość przed jej przeczytaniem."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "Data odpowiedzi musi być późniejsza niż data przeczytania."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
-msgstr "Data odpowiedzi nie może być ustawiona bez przynajmniej jednej odpowiedzi."
+msgstr ""
+"Data odpowiedzi nie może być ustawiona bez przynajmniej jednej odpowiedzi."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr "Nie można odpowiedzieć na wiadomość nie będącą w konwersacji."
-#: .\admin.py:88 .\admin.py:164 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Wiadomość"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Daty"
-#: .\admin.py:98 .\admin.py:168
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "Moderacja"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Część nazw użytkowników jest nieznana lub obecnie nieaktywna: {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Niektóre nazwy użytkowników zostały odrzucone: {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "Nie można wysłać do niektórych użytkowników: {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Odbiorcy"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Odbiorca"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Poczta"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Niezdefiniowany odbiorca."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Dodatkowi odbiorcy"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Dodatkowy odbiorca"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "W toku"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Zaakceptowana"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Odrzucona"
-#: .\models.py:200
+#: .\models.py:242
msgid "subject"
msgstr "temat"
-#: .\models.py:201
+#: .\models.py:243
msgid "body"
msgstr "treść"
-#: .\models.py:202 .\models.py:284
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "nadawca"
-#: .\models.py:203 .\models.py:308
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "odbiorca"
-#: .\models.py:204
+#: .\models.py:246
msgid "visitor"
msgstr "gość"
-#: .\models.py:205
+#: .\models.py:247
msgid "parent message"
msgstr "poprzednia wiadomość"
-#: .\models.py:206
+#: .\models.py:248
msgid "root message"
msgstr "wiadomość nadrzędna"
-#: .\models.py:207
+#: .\models.py:249
msgid "sent at"
msgstr "data wysłania"
-#: .\models.py:208
+#: .\models.py:250
msgid "read at"
msgstr "data przeczytania"
-#: .\models.py:209
+#: .\models.py:251
msgid "replied at"
msgstr "data odpowiedzi"
-#: .\models.py:210
+#: .\models.py:252
msgid "archived by sender"
msgstr "zarchiwizowana przez nadawcę"
-#: .\models.py:211
+#: .\models.py:253
msgid "archived by recipient"
msgstr "zarchiwizowana przez odbiorcę"
-#: .\models.py:212
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "data usunięcia przez nadawcę"
-#: .\models.py:213
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "data usunięcia przez odbiorc"
-#: .\models.py:215
+#: .\models.py:257
msgid "status"
msgstr "status"
-#: .\models.py:217
+#: .\models.py:259
msgid "moderator"
msgstr "moderator"
-#: .\models.py:218
+#: .\models.py:260
msgid "moderated at"
msgstr ""
-#: .\models.py:219
+#: .\models.py:261
msgid "rejection reason"
msgstr "powód odrzucenia"
-#: .\models.py:224
+#: .\models.py:266
msgid "message"
msgstr "wiadomość"
-#: .\models.py:225
+#: .\models.py:267
msgid "messages"
msgstr "wiadomości"
-#: .\models.py:336
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Nieokreślony nadawca."
-#: .\models.py:476
+#: .\models.py:523
msgid "pending message"
msgstr "wiadomość w toku"
-#: .\models.py:477
+#: .\models.py:524
msgid "pending messages"
msgstr "wiadomości w toku"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} napisał:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Odp: {subject}"
-#: .\views.py:129 .\views.py:189
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Wiadomość wysłana."
-#: .\views.py:131 .\views.py:191
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Wiadomość została odrzucona dla przynajmniej jednego odbiorcy."
-#: .\views.py:278
+#: .\views.py:299
msgid "Select at least one object."
msgstr "Wybierz przynajmniej jeden obiekt."
-#: .\views.py:284
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Wiadomości lub konwersacje pomyślnie zarchiwizowane."
-#: .\views.py:289
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Wiadomości lub konwersacje pomyślnie usunięte."
-#: .\views.py:294
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Wiadomości lub konwersacje pomyślnie przywrócone."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Wiadomość odrzucona"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Twoja wiadomość została odrzucona"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Wiadomość otrzymana"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Otrzymałeś wiadomość"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Odpowiedź otrzymana"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Dostałeś odpowiedź"
msgid ""
"Messages in this folder will never be removed. You can use this folder for "
"long term storage."
-msgstr "Wiadomości z tego folderu nigdy nie będą usuwane. Możesz używać go do przechowywania wiadomości przez długi czas."
+msgstr ""
+"Wiadomości z tego folderu nigdy nie będą usuwane. Możesz używać go do "
+"przechowywania wiadomości przez długi czas."
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr ""
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Wiadomości otrzymane"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Wiadomości wysłane"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Napisz"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Archiwa"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Kosz"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Niestety ten numer strony jest nieprawidłowy."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr ""
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr ""
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Usuń"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Archiwizuj"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Odzyskaj"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Akcja"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Nadawca"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Temat"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Data"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,j b,j/n/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Brak wiadomości."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Wyślij"
#: .\templates\postman\email_visitor.txt.py:3
#, python-format
msgid "On %(date)s, you asked to send a message to the user '%(recipient)s'."
-msgstr "Dnia %(date)s prosiłeś o wysłanie wiadomości do użytkownika '%(recipient)s'."
+msgstr ""
+"Dnia %(date)s prosiłeś o wysłanie wiadomości do użytkownika '%(recipient)s'."
#: .\templates\postman\email_user.txt.py:5
#: .\templates\postman\email_visitor.txt.py:5
msgid ""
"Note: This message is issued by an automated system.\n"
"Do not reply, this would not be taken into account."
-msgstr "Uwaga: Ta wiadomość została wysłana automatycznie.\nNie odpisuj na nią, ponieważ nie będzie to wzięte pod uwagę."
+msgstr ""
+"Uwaga: Ta wiadomość została wysłana automatycznie.\n"
+"Nie odpisuj na nią, ponieważ nie będzie to wzięte pod uwagę."
#: .\templates\postman\email_user_subject.txt.py:1
#: .\templates\postman\email_visitor_subject.txt.py:1
msgid "Received"
msgstr "Otrzymane"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Odpowiedz"
msgid ""
"Messages in this folder can be removed from time to time. For long term "
"storage, use instead the archive folder."
-msgstr "Wiadomości w tym folderze mogą być usuwane co jakiś czas. Do przechowywania długoterminowego użyj folderu archiwum."
+msgstr ""
+"Wiadomości w tym folderze mogą być usuwane co jakiś czas. Do przechowywania "
+"długoterminowego użyj folderu archiwum."
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Konwersacja"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ": "
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Wróć"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<ja>"
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2011-02-07 09:30+0100\n"
+"POT-Creation-Date: 2012-12-10 23:16+0100\n"
"PO-Revision-Date: 2012-08-09 12:39+0000\n"
"Last-Translator: Vasiliy <vasiliy.korchagin@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: ru\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "Отправитель и получатель не могут быть не определены вместе."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "Почта посетителя переполнена."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Нет адреса электронной почты посетителя."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "Дата прочтения должна быть позже даты посылки."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr "Дата удаления отправителем должна быть позже даты отправления."
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr "Дата удаления получателем должна быть позже даты отправления."
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "Дата ответа должна быть позже даты отправления."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "Нельзя ответить на сообщение, не прочитав его."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "Дата ответа должна быть позже даты прочтения."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr "Дата ответа не может быть установлена без хотя бы одного ответа."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr "Нельзя ответить на сообщение, не находясь в беседе."
-#: .\admin.py:88 .\admin.py:164 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Сообщение"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Даты"
-#: .\admin.py:98 .\admin.py:168
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "Модерация"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Некоторые пользователи неизвестны или больше не активны: {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
"Проверьте, что это значение имеет не больше {limit_value} разных пунктов "
"(сейчас их {show_value})."
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
"Проверьте, что это значение имеет не меньше {limit_value} разных пунктов "
"(сейчас их {show_value})."
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Некоторые имена пользователей были отклонены: {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "Нельзя написать некоторым пользователям: {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Получатели"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Получатель"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Email"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Неопределенный получатель."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Дополнительные получатели"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Дополнительный получатель"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "В ожидании"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Принято"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Отклонено"
-#: .\models.py:200
+#: .\models.py:242
msgid "subject"
msgstr "тема"
-#: .\models.py:201
+#: .\models.py:243
msgid "body"
msgstr "сообщение"
-#: .\models.py:202 .\models.py:284
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "отправитель"
-#: .\models.py:203 .\models.py:308
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "получатель"
-#: .\models.py:204
+#: .\models.py:246
msgid "visitor"
msgstr "посетитель"
-#: .\models.py:205
+#: .\models.py:247
msgid "parent message"
msgstr "предыдущее сообщение"
-#: .\models.py:206
+#: .\models.py:248
msgid "root message"
msgstr "начальное сообщение"
-#: .\models.py:207
+#: .\models.py:249
msgid "sent at"
msgstr "послано в"
-#: .\models.py:208
+#: .\models.py:250
msgid "read at"
msgstr "прочитано в"
-#: .\models.py:209
+#: .\models.py:251
msgid "replied at"
msgstr "отвечено в"
-#: .\models.py:210
+#: .\models.py:252
msgid "archived by sender"
msgstr "архивировано отправителем"
-#: .\models.py:211
+#: .\models.py:253
msgid "archived by recipient"
msgstr "архивировано получателем"
-#: .\models.py:212
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "удалено отправителем в"
-#: .\models.py:213
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "удалено получателем в"
-#: .\models.py:215
+#: .\models.py:257
msgid "status"
msgstr "статус"
-#: .\models.py:217
+#: .\models.py:259
msgid "moderator"
msgstr "модератор"
-#: .\models.py:218
+#: .\models.py:260
msgid "moderated at"
msgstr "изменено в"
-#: .\models.py:219
+#: .\models.py:261
msgid "rejection reason"
msgstr "причина отказа"
-#: .\models.py:224
+#: .\models.py:266
msgid "message"
msgstr "сообщение"
-#: .\models.py:225
+#: .\models.py:267
msgid "messages"
msgstr "сообщения"
-#: .\models.py:336
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Неопределенный отправитель."
-#: .\models.py:476
+#: .\models.py:523
msgid "pending message"
msgstr "сообщение в ожидании"
-#: .\models.py:477
+#: .\models.py:524
msgid "pending messages"
msgstr "сообщения в ожидании"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} написал:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Re: {subject}"
-#: .\views.py:129 .\views.py:189
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Сообщение успешно отправлено."
-#: .\views.py:131 .\views.py:191
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Сообщение отклонено по крайней мере для одного получателя."
-#: .\views.py:278
+#: .\views.py:299
msgid "Select at least one object."
msgstr "Выберите по крайней мере один объект."
-#: .\views.py:284
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "Сообщения или беседы успешно заархивированы."
-#: .\views.py:289
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "Сообщения или беседы успешно удалены."
-#: .\views.py:294
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "Сообщения или беседы успешно восстановлены."
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Сообщение отклонено"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Ваше сообщение было отклонено"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Сообщение получено"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Вы получили сообщение"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Получен ответ"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Вы получили ответ"
"Сообщения в этой папке никогда не будут удалены. Вы можете использовать эту "
"папку как длительное хранилище сообщений."
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "Обмен сообщениями"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Входящие"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Посланные сообщения"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Написать"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Архивы"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Удалённые"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Извините, страницы с таким номером не существует."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "по беседам"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "по сообщениям"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Удалить"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Архивировать"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Восстановить"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Действий"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Отправителя"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Тема"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Дата"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "g:i A,M j,n/j/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Сообщений нет."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Отправить"
#: .\templates\postman\email_visitor.txt.py:15
msgid "For more comfort, we encourage you to open an account on the site."
-msgstr ""
-"Для большего удобства, мы рекомендуем вам зарегистрироваться на сайте."
+msgstr "Для большего удобства, мы рекомендуем вам зарегистрироваться на сайте."
#: .\templates\postman\inbox.html.py:3
msgid "Received Messages"
msgid "Received"
msgstr "Получено"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Ответить"
"Сообщения в этой папке могут быть удалены время от времени. Для длительного "
"хранения сообщения используйте архив."
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Беседа"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ": "
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Назад"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<me>"
msgstr ""
"Project-Id-Version: django-postman\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 23:17+0100\n"
"PO-Revision-Date: 2012-08-30 00:57+0000\n"
"Last-Translator: Ahmet Emre Aladağ <emre@woramo.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: tr\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "Gönderen ve Alıcı beraber belirlenmemiş olamaz."
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "Ziyaretçinin e-postası fazla."
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "Ziyaretçini e-postası kayıp."
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "Okuma tarihi gönderme tarihinden geç olmalı."
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr "Gönderen tarafından silme tarihi gönderme tarihinden geç olmalı."
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr "Alıcı tarafından silme tarihi gönderme tarihinden geç olmalı."
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "Cevap tarihi, gönderi taihinden geç olmalı."
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "Mesaj okunmuş olmadan cevaplanamaz."
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "Cevap tarihi, gönderi taihinden geç olmalı."
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr "En az bir cevap olmadan, cevap tarihi belirlenemez."
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr ""
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "Mesaj"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "Tarihler"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "Moderasyon"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "Bazı kullanıcı adları bilinmiyor yada artık aktif değiller: {users}."
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
-msgstr "Bu değerin en çok {limit_value} farklı öğesi ({show_value} si var) olduğuna emin olun."
+msgstr ""
+"Bu değerin en çok {limit_value} farklı öğesi ({show_value} si var) olduğuna "
+"emin olun."
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
msgstr ""
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "Bazı kullanıcı adları reddedildi: {users}."
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "Bazı kullanıcılıara yazmak mümkün değil: {users}."
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "Alıcılar"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "Alıcı"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Eposta"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "Belirsiz alıcı."
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "Ek alıcılar"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "Ek alıcı"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "Bekleyenler"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "Kabul edildi"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "Reddedildi"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "konu"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "gövde"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "gönderen"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "alıcı"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "ziyaretçi"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "ana mesaj"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "kök mesaj"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "de gönderildi"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "de okundu"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "de cevaplandı"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "kullanıcı tarafından arşivlendi"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "alıcı tarafından arşivlendi"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "de gönderen tarafından silindi"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "de alıcı tarafından silindi"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "durum"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "moderatör"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr ""
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "reddedilme sebebi"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "mesaj"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "mesajlar"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "Belirsiz gönderen."
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "bekleyen mesaj"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "bekleyen mesajlar"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} wrote:\n"
"{body}\n"
-msgstr "\n\n{sender} yazdı:\n{body}\n"
+msgstr ""
+"\n"
+"\n"
+"{sender} yazdı:\n"
+"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "Ynt: {subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "Mesaj başarıyla gönderildi."
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "Mesaj en az bir alıcı için reddedildi."
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "En az bir öğe seçin."
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr ""
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr ""
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr ""
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "Mesaj Reddedildi"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "Mesajınız reddedildi"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "Mesaj Alındı"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "Bir mesaj aldınız"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "Cevap Alındı"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "Bir mesaj aldınız"
"long term storage."
msgstr ""
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "Mesajlaşma"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "Gelen Kutusu"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "Gönderilen Mesajlar"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "Yaz"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "Arşivler"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "Çöp Kutusu"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "Üzgünüz, bu sayfa numarası geçersiz."
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "sohbete göre"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "mesaja göre"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "Sil"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "Arşiv"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "Silmeyi geri al"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "Eylem"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "Gönderici"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "Konu"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "Tarih"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr ""
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "Mesaj yok."
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "Gönder"
#: .\templates\postman\email_visitor.txt.py:3
#, python-format
msgid "On %(date)s, you asked to send a message to the user '%(recipient)s'."
-msgstr "%(date)s tarihinde, '%(recipient)s' kullanıcısına mesaj göndermek istediniz."
+msgstr ""
+"%(date)s tarihinde, '%(recipient)s' kullanıcısına mesaj göndermek istediniz."
#: .\templates\postman\email_user.txt.py:5
#: .\templates\postman\email_visitor.txt.py:5
msgid "Received"
msgstr "Alındı"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "Cevapla"
"storage, use instead the archive folder."
msgstr ""
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "Sohbet"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ":"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "Geri"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<ben>"
# Copyright (C) 2011 Patrick Samson
# This file is distributed under the same license as the django-postman package.
# mikecool <genewoo@gmail.com>, 2011.
-#
+#
msgid ""
msgstr ""
"Project-Id-Version: django-postman 1.0.x\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 23:19+0100\n"
"PO-Revision-Date: 2011-02-03 08:41+0000\n"
"Last-Translator: mikecool <genewoo@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "寄件人和收件人不能同时未定义。"
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "游客的电子邮件过量。"
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "游客的电子邮件为空。"
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "阅读日期必须晚于发送日期。"
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr "寄件人的删除日期必须晚于发送日期。"
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr "收件人的删除日期必须晚于发送日期。"
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "回应日期必须晚于发送日期。"
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "该消息不能被回复而没有被阅读过。"
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "回应日期必须晚于阅读日期。"
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr "设置回应日期时至少需要有一个答复。"
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr "该消息未在对话中所以不能被回复。"
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "消息"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "日期"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "适度"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "有些用户名是未知的或非活动的:{users}。"
-#: .\fields.py:23
-msgid "Ensure this value has at most {limit_value} distinct items (it has {show_value})."
+#: .\fields.py:28
+msgid ""
+"Ensure this value has at most {limit_value} distinct items (it has "
+"{show_value})."
msgstr "确保该值至多{limit_value}个不同的项目(有{show_value}个)。"
-#: .\fields.py:24
-msgid "Ensure this value has at least {limit_value} distinct items (it has {show_value})."
+#: .\fields.py:29
+msgid ""
+"Ensure this value has at least {limit_value} distinct items (it has "
+"{show_value})."
msgstr "确保该值至少{limit_value}个不同的项目(有{show_value}个)。"
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "一些用户名被拒绝:{users}。"
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "不可能写给一些用户:{users}。"
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "收件人"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "收件人"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "电子邮件"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "未定义的收件人。"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "其他收件人"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "其他收件人"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "未决"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "接受"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "被拒绝"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "主题"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "主体"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "寄件人"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "收件人"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "游客"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "父消息"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "根消息"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "发送于"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "阅读于"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "回答于"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "被发件人存档"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "被收件人存档"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "被发件人删除"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "被收件人删除"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "状态"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "主持人"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr "主持于"
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "拒绝原因"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "消息"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "消息"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "未定义的发件人。"
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "未决消息"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "未决消息"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender}写到:\n"
"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "回复:{subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "邮件成功发送。"
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "邮件的收件人至少有一个被拒绝了。"
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "至少选择一个对象。"
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "邮件或对话已成功存档。"
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "邮件或对话已成功删除。"
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "邮件或对话已成功回收。"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "邮件被拒绝"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "您的邮件已被拒绝"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "消息接收到了"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "您收到一条消息"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "收到答复"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "您已收到答复"
msgstr "归档的邮件"
#: .\templates\postman\archives.html.py:7
-msgid "Messages in this folder will never be removed. You can use this folder for long term storage."
+msgid ""
+"Messages in this folder will never be removed. You can use this folder for "
+"long term storage."
msgstr "此文件夹中的信息将永远不会被删除。你可以使用此文件夹为长期贮存。"
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "消息"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "收件箱"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "发送的邮件"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "写"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "归档"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "垃圾"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "对不起,此页号无效。"
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "在对话"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "通过消息"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "删除"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "归档"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "取消删除"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "动作"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "寄件人"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "主体"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "日期"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "G:i,M j,y/n/j"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "没有邮件。"
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "发送"
msgid "Received"
msgstr "收到的"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "回复的"
msgstr "已删除邮件"
#: .\templates\postman\trash.html.py:10
-msgid "Messages in this folder can be removed from time to time. For long term storage, use instead the archive folder."
+msgid ""
+"Messages in this folder can be removed from time to time. For long term "
+"storage, use instead the archive folder."
msgstr "此文件夹中的邮件可时不时被删除。为了长期保存,使用规档文件夹作为取代。"
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "对话"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ":"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "返回"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<我>"
# Chinese TW translation of django-postman.
# Copyright (C) 2012 Patrick Samson
# This file is distributed under the same license as the django-postman package.
-#
+#
# Translators:
# Leonard Huang <lueotw@gmail.com>, 2011.
# <lueoad@gmail.com>, 2012.
msgstr ""
"Project-Id-Version: django-postman\n"
"Report-Msgid-Bugs-To: http://bitbucket.org/psam/django-postman/issues\n"
-"POT-Creation-Date: 2010-12-27 14:21+0100\n"
+"POT-Creation-Date: 2012-12-10 23:21+0100\n"
"PO-Revision-Date: 2012-06-26 12:57+0000\n"
"Last-Translator: lueo <lueoad@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: zh_TW\n"
"Plural-Forms: nplurals=1; plural=0\n"
-#: .\admin.py:22
+#: .\admin.py:25
msgid "Sender and Recipient cannot be both undefined."
msgstr "寄件人和收件人皆未定義。"
-#: .\admin.py:29
+#: .\admin.py:32
msgid "Visitor's email is in excess."
msgstr "訪客的email量已超過限額。"
-#: .\admin.py:34
+#: .\admin.py:37
msgid "Visitor's email is missing."
msgstr "訪客的email未填。"
-#: .\admin.py:40
+#: .\admin.py:43
msgid "Reading date must be later to sending date."
msgstr "閱讀日期必須晚於發送日期。"
-#: .\admin.py:45
+#: .\admin.py:48
msgid "Deletion date by sender must be later to sending date."
msgstr "寄件人的刪除日期必須晚於發送日期。"
-#: .\admin.py:50
+#: .\admin.py:53
msgid "Deletion date by recipient must be later to sending date."
msgstr "收件人的刪除日期必須晚於發送日期。"
-#: .\admin.py:58
+#: .\admin.py:61
msgid "Response date must be later to sending date."
msgstr "回應日期必須晚於發送日期。"
-#: .\admin.py:60
+#: .\admin.py:63
msgid "The message cannot be replied without having been read."
msgstr "該消息不能被回覆而沒有被閱讀過。"
-#: .\admin.py:62
+#: .\admin.py:65
msgid "Response date must be later to reading date."
msgstr "回應日期必須晚於閱讀日期。"
-#: .\admin.py:64
+#: .\admin.py:67
msgid "Response date cannot be set without at least one reply."
msgstr "設置回應日期時至少要有一個答覆。"
-#: .\admin.py:66
+#: .\admin.py:69
msgid "The message cannot be replied without being in a conversation."
msgstr "該訊息未在對話中,所以不能被回覆。"
-#: .\admin.py:88 .\admin.py:157 .\templates\postman\view.html.py:5
+#: .\admin.py:92 .\admin.py:170 .\templates\postman\view.html.py:6
msgid "Message"
msgstr "訊息"
-#: .\admin.py:93
+#: .\admin.py:97
msgid "Dates"
msgstr "日期"
-#: .\admin.py:98 .\admin.py:161
+#: .\admin.py:102 .\admin.py:174
msgid "Moderation"
msgstr "適度"
-#: .\fields.py:22
+#: .\fields.py:27
msgid "Some usernames are unknown or no more active: {users}."
msgstr "有些用戶名是未知的或非活動的:{users}。"
-#: .\fields.py:23
+#: .\fields.py:28
msgid ""
"Ensure this value has at most {limit_value} distinct items (it has "
"{show_value})."
msgstr "確保該值至多{limit_value}個不同的項目(有{show_value}個)。"
-#: .\fields.py:24
+#: .\fields.py:29
msgid ""
"Ensure this value has at least {limit_value} distinct items (it has "
"{show_value})."
msgstr "確保該值至少{limit_value}個不同的項目(有{show_value}個)。"
-#: .\fields.py:25
+#: .\fields.py:30
msgid "Some usernames are rejected: {users}."
msgstr "一些用戶名被拒絕:{users}。"
-#: .\fields.py:26 .\forms.py:65
-msgid "{user.username}"
-msgstr "{user.username}"
+#: .\fields.py:31 .\forms.py:71
+msgid "{username}"
+msgstr "{username}"
-#: .\fields.py:27 .\forms.py:66
-msgid "{user.username} ({reason})"
-msgstr "{user.username} ({reason})"
+#: .\fields.py:32 .\forms.py:72
+msgid "{username} ({reason})"
+msgstr "{username} ({reason})"
-#: .\forms.py:64
+#: .\forms.py:70
msgid "Writing to some users is not possible: {users}."
msgstr "不可能寫給一些用戶:{users}。"
-#: .\forms.py:148 .\forms.py:160
+#: .\forms.py:155 .\forms.py:168
msgid "Recipients"
msgstr "收件人"
-#: .\forms.py:148 .\forms.py:160 .\templates\postman\base_folder.html.py:26
+#: .\forms.py:155 .\forms.py:168 .\templates\postman\base_folder.html.py:34
#: .\templates\postman\reply.html.py:4
msgid "Recipient"
msgstr "收件人"
-#: .\forms.py:159
+#: .\forms.py:167
msgid "Email"
msgstr "Email"
-#: .\forms.py:175
+#: .\forms.py:184
msgid "Undefined recipient."
msgstr "未定義的收件人。"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipients"
msgstr "其他收件人"
-#: .\forms.py:194
+#: .\forms.py:205
msgid "Additional recipient"
msgstr "其他收件人"
-#: .\models.py:19
+#: .\models.py:27
msgid "Pending"
msgstr "待處理"
-#: .\models.py:20
+#: .\models.py:28
msgid "Accepted"
msgstr "接受"
-#: .\models.py:21 .\templates\postman\view.html.py:13
+#: .\models.py:29 .\templates\postman\view.html.py:14
msgid "Rejected"
msgstr "被拒絕"
-#: .\models.py:197
+#: .\models.py:242
msgid "subject"
msgstr "主題"
-#: .\models.py:198
+#: .\models.py:243
msgid "body"
msgstr "主體"
-#: .\models.py:199 .\models.py:281
+#: .\models.py:244 .\models.py:326
msgid "sender"
msgstr "寄件人"
-#: .\models.py:200 .\models.py:305
+#: .\models.py:245 .\models.py:350
msgid "recipient"
msgstr "收件人"
-#: .\models.py:201
+#: .\models.py:246
msgid "visitor"
msgstr "訪客"
-#: .\models.py:202
+#: .\models.py:247
msgid "parent message"
msgstr "前訊息"
-#: .\models.py:203
+#: .\models.py:248
msgid "root message"
msgstr "原訊息"
-#: .\models.py:204
+#: .\models.py:249
msgid "sent at"
msgstr "發送於"
-#: .\models.py:205
+#: .\models.py:250
msgid "read at"
msgstr "閱讀於"
-#: .\models.py:206
+#: .\models.py:251
msgid "replied at"
msgstr "回答於"
-#: .\models.py:207
+#: .\models.py:252
msgid "archived by sender"
msgstr "被寄件人存檔"
-#: .\models.py:208
+#: .\models.py:253
msgid "archived by recipient"
msgstr "被收件人存檔"
-#: .\models.py:209
+#: .\models.py:254
msgid "deleted by sender at"
msgstr "被寄件人刪除"
-#: .\models.py:210
+#: .\models.py:255
msgid "deleted by recipient at"
msgstr "被收件人刪除"
-#: .\models.py:212
+#: .\models.py:257
msgid "status"
msgstr "狀態"
-#: .\models.py:214
+#: .\models.py:259
msgid "moderator"
msgstr "管制者"
-#: .\models.py:215
+#: .\models.py:260
msgid "moderated at"
msgstr "管制於"
-#: .\models.py:216
+#: .\models.py:261
msgid "rejection reason"
msgstr "拒絕原因"
-#: .\models.py:221
+#: .\models.py:266
msgid "message"
msgstr "訊息"
-#: .\models.py:222
+#: .\models.py:267
msgid "messages"
msgstr "訊息"
-#: .\models.py:333
+#: .\models.py:378
msgid "Undefined sender."
msgstr "未定義的寄件人。"
-#: .\models.py:473
+#: .\models.py:523
msgid "pending message"
msgstr "待處理消息"
-#: .\models.py:474
+#: .\models.py:524
msgid "pending messages"
msgstr "待處理消息"
-#: .\utils.py:32
+#: .\utils.py:37
msgid "> "
msgstr "> "
-#: .\utils.py:48
+#: .\utils.py:53
msgid ""
"\n"
"\n"
"{sender} wrote:\n"
"{body}\n"
-msgstr "\n\n{sender}寫道:\n{body}\n"
+msgstr ""
+"\n"
+"\n"
+"{sender}寫道:\n"
+"{body}\n"
-#: .\utils.py:57
+#: .\utils.py:63
msgid "Re: {subject}"
msgstr "回覆:{subject}"
-#: .\views.py:129 .\views.py:187
+#: .\views.py:144 .\views.py:206
msgid "Message successfully sent."
msgstr "郵件成功發送。"
-#: .\views.py:131 .\views.py:189
+#: .\views.py:146 .\views.py:208
msgid "Message rejected for at least one recipient."
msgstr "郵件的收件人至少有一個被拒絕了。"
-#: .\views.py:276
+#: .\views.py:299
msgid "Select at least one object."
msgstr "至少選擇一個對象。"
-#: .\views.py:282
+#: .\views.py:306
msgid "Messages or conversations successfully archived."
msgstr "訊息或對話已成功存檔。"
-#: .\views.py:287
+#: .\views.py:312
msgid "Messages or conversations successfully deleted."
msgstr "訊息或對話已成功刪除。"
-#: .\views.py:292
+#: .\views.py:318
msgid "Messages or conversations successfully recovered."
msgstr "訊息或對話已成功回收。"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Message Rejected"
msgstr "郵件被拒絕"
-#: .\management\__init__.py:14
+#: .\management\__init__.py:15
msgid "Your message has been rejected"
msgstr "您的郵件已被拒絕"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "Message Received"
msgstr "接收到訊息"
-#: .\management\__init__.py:15
+#: .\management\__init__.py:16
msgid "You have received a message"
msgstr "您收到一則訊息"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "Reply Received"
msgstr "收到答覆"
-#: .\management\__init__.py:16
+#: .\management\__init__.py:17
msgid "You have received a reply"
msgstr "您已收到答覆"
"long term storage."
msgstr "此文件夾中的信息將永遠不會被刪除。你可以使用此文件夾以做為長期保存。"
-#: .\templates\postman\base.html.py:3
+#: .\templates\postman\base.html.py:4
msgid "Messaging"
msgstr "訊息"
-#: .\templates\postman\base.html.py:6
+#: .\templates\postman\base.html.py:13
msgid "Inbox"
msgstr "收件匣"
-#: .\templates\postman\base.html.py:7 .\templates\postman\sent.html.py:3
+#: .\templates\postman\base.html.py:14 .\templates\postman\sent.html.py:3
msgid "Sent Messages"
msgstr "發送的訊息"
-#: .\templates\postman\base.html.py:8 .\templates\postman\write.html.py:3
+#: .\templates\postman\base.html.py:15 .\templates\postman\write.html.py:3
msgid "Write"
msgstr "編寫"
-#: .\templates\postman\base.html.py:9
+#: .\templates\postman\base.html.py:16
msgid "Archives"
msgstr "歸檔"
-#: .\templates\postman\base.html.py:10
+#: .\templates\postman\base.html.py:17
msgid "Trash"
msgstr "垃圾"
-#: .\templates\postman\base_folder.html.py:9
+#: .\templates\postman\base_folder.html.py:16
msgid "Sorry, this page number is invalid."
msgstr "對不起,此頁號無效。"
-#: .\templates\postman\base_folder.html.py:12
+#: .\templates\postman\base_folder.html.py:20
msgid "by conversation"
msgstr "以對話排序"
-#: .\templates\postman\base_folder.html.py:13
+#: .\templates\postman\base_folder.html.py:21
msgid "by message"
msgstr "以訊息排序"
-#: .\templates\postman\base_folder.html.py:17
-#: .\templates\postman\view.html.py:22
+#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\view.html.py:23
msgid "Delete"
msgstr "刪除"
-#: .\templates\postman\base_folder.html.py:18
-#: .\templates\postman\view.html.py:23
+#: .\templates\postman\base_folder.html.py:26
+#: .\templates\postman\view.html.py:24
msgid "Archive"
msgstr "歸檔"
-#: .\templates\postman\base_folder.html.py:19
+#: .\templates\postman\base_folder.html.py:27
msgid "Undelete"
msgstr "取消刪除"
-#: .\templates\postman\base_folder.html.py:24
+#: .\templates\postman\base_folder.html.py:32
msgid "Action"
msgstr "動作"
-#: .\templates\postman\base_folder.html.py:25
+#: .\templates\postman\base_folder.html.py:33
msgid "Sender"
msgstr "寄件人"
-#: .\templates\postman\base_folder.html.py:27
+#: .\templates\postman\base_folder.html.py:35
msgid "Subject"
msgstr "主體"
-#: .\templates\postman\base_folder.html.py:28
+#: .\templates\postman\base_folder.html.py:36
msgid "Date"
msgstr "日期"
-#: .\templates\postman\base_folder.html.py:43
+#: .\templates\postman\base_folder.html.py:51
msgid "g:i A,M j,n/j/y"
msgstr "g:i A,M j,n/j/y"
-#: .\templates\postman\base_folder.html.py:51
+#: .\templates\postman\base_folder.html.py:58
msgid "No messages."
msgstr "沒有訊息。"
-#: .\templates\postman\base_write.html.py:20
+#: .\templates\postman\base_write.html.py:33
msgid "Send"
msgstr "發送"
msgid ""
"Note: This message is issued by an automated system.\n"
"Do not reply, this would not be taken into account."
-msgstr "註:此郵件是由系統自動發出。\n請勿回覆。回覆的郵件將無法接收。"
+msgstr ""
+"註:此郵件是由系統自動發出。\n"
+"請勿回覆。回覆的郵件將無法接收。"
#: .\templates\postman\email_user_subject.txt.py:1
#: .\templates\postman\email_visitor_subject.txt.py:1
msgid "Received"
msgstr "收到的"
-#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:25
-#: .\templates\postman\view.html.py:28 .\templates\postman\view.html.py:31
+#: .\templates\postman\reply.html.py:3 .\templates\postman\view.html.py:26
+#: .\templates\postman\view.html.py:29 .\templates\postman\view.html.py:32
msgid "Reply"
msgstr "回覆的"
"storage, use instead the archive folder."
msgstr "此文件夾中的郵件隨時會被刪除。如要長期保存,請使用歸檔文件夾。"
-#: .\templates\postman\view.html.py:5
+#: .\templates\postman\view.html.py:6
msgid "Conversation"
msgstr "對話"
-#: .\templates\postman\view.html.py:13
+#: .\templates\postman\view.html.py:14
msgid ":"
msgstr ":"
-#: .\templates\postman\view.html.py:20
+#: .\templates\postman\view.html.py:21
msgid "Back"
msgstr "返回"
-#: .\templatetags\postman_tags.py:35
+#: .\templatetags\postman_tags.py:48
msgid "<me>"
msgstr "<我>"
+from __future__ import unicode_literals
import sys
from django.conf import settings
+from __future__ import unicode_literals
import datetime
from django.core.management.base import NoArgsCommand
from postman.models import Message
+
class Command(NoArgsCommand):
help = "Can be run as a cron job or directly to check-up data consistency in the database."
+from __future__ import unicode_literals
from datetime import timedelta
from optparse import make_option
from postman.models import Message
+
class Command(NoArgsCommand):
help = """Can be run as a cron job or directly to clean out old data from the database:
Messages or conversations marked as deleted by both sender and recipient,
+from __future__ import unicode_literals
import hashlib
from django.conf import settings
-from django.contrib.auth.models import User
+try:
+ from django.contrib.auth import get_user_model # Django 1.5
+except ImportError:
+ from postman.future_1_5 import get_user_model
from django.core.exceptions import ValidationError
from django.db import models
from django.utils.text import truncate_words
# ordering constants
ORDER_BY_KEY = 'o' # as 'order'
ORDER_BY_FIELDS = {
- 'f': 'sender__username', # as 'from'
- 't': 'recipient__username', # as 'to'
+ 'f': 'sender__' + get_user_model().USERNAME_FIELD, # as 'from'
+ 't': 'recipient__' + get_user_model().USERNAME_FIELD, # as 'to'
's': 'subject', # as 'subject'
'd': 'sent_at', # as 'date'
}
>>> get_order_by({})
>>> get_order_by({ORDER_BY_KEY: 'f'})
- 'sender__username'
+ u'sender__username'
>>> get_order_by({ORDER_BY_KEY: 'D'})
- '-sent_at'
+ u'-sent_at'
"""
if ORDER_BY_KEY in query_dict:
code = query_dict[ORDER_BY_KEY] # code may be uppercase or lowercase
subject = models.CharField(_("subject"), max_length=SUBJECT_MAX_LENGTH)
body = models.TextField(_("body"), blank=True)
- sender = models.ForeignKey(User, related_name='sent_messages', null=True, blank=True, verbose_name=_("sender"))
- recipient = models.ForeignKey(User, related_name='received_messages', null=True, blank=True, verbose_name=_("recipient"))
+ sender = models.ForeignKey(get_user_model(), related_name='sent_messages', null=True, blank=True, verbose_name=_("sender"))
+ recipient = models.ForeignKey(get_user_model(), related_name='received_messages', null=True, blank=True, verbose_name=_("recipient"))
email = models.EmailField(_("visitor"), blank=True) # instead of either sender or recipient, for an AnonymousUser
parent = models.ForeignKey('self', related_name='next_messages', null=True, blank=True, verbose_name=_("parent message"))
thread = models.ForeignKey('self', related_name='child_messages', null=True, blank=True, verbose_name=_("root message"))
recipient_deleted_at = models.DateTimeField(_("deleted by recipient at"), null=True, blank=True)
# moderation fields
moderation_status = models.CharField(_("status"), max_length=1, choices=STATUS_CHOICES, default=STATUS_PENDING)
- moderation_by = models.ForeignKey(User, related_name='moderated_messages',
+ moderation_by = models.ForeignKey(get_user_model(), related_name='moderated_messages',
null=True, blank=True, verbose_name=_("moderator"))
moderation_date = models.DateTimeField(_("moderated at"), null=True, blank=True)
moderation_reason = models.CharField(_("rejection reason"), max_length=120, blank=True)
ordering = ['-sent_at', '-id']
def __unicode__(self):
- return u"{0}>{1}:{2}".format(self.obfuscated_sender, self.obfuscated_recipient, truncate_words(self.subject, 5))
+ return "{0}>{1}:{2}".format(self.obfuscated_sender, self.obfuscated_recipient, truncate_words(self.subject,5))
@models.permalink
def get_absolute_url(self):
shrunken_digest = '..'.join((digest[:4], digest[-4:])) # 32 characters is too long and is useless
bits = email.split('@')
if len(bits) != 2:
- return u''
+ return ''
domain = bits[1]
return '@'.join((shrunken_digest, domain.rsplit('.', 1)[0])) # leave off the TLD to gain some space
To deactivate this mock and use the real implementation, just make sure that 'pagination' is declared
before 'postman' in the INSTALLED_APPS setting.
"""
+from __future__ import unicode_literals
+
from django.template import Node, Library
register = Library()
+
class AutoPaginateNode(Node):
def render(self, context):
- return u''
+ return ''
+
@register.tag
def autopaginate(parser, token):
return AutoPaginateNode()
+
class PaginateNode(Node):
def render(self, context):
- return u''
+ return ''
+
@register.tag
def paginate(parser, token):
In use in templates/admin/postman/pendingmessage/change_form.html.
"""
+from __future__ import unicode_literals
+
from django import template
register = template.Library()
+
@register.inclusion_tag('admin/postman/pendingmessage/submit_line.html')
def postman_submit_row():
return {}
+from __future__ import unicode_literals
import datetime
from django import VERSION
-from django.contrib.auth.models import User
+try:
+ from django.contrib.auth import get_user_model # Django 1.5
+except ImportError:
+ from postman.future_1_5 import get_user_model
from django.http import QueryDict
from django.template import Node
from django.template import TemplateSyntaxError
register = Library()
+
##########
# filters
##########
-
@register.filter
def sub(value, arg):
"""Subtract the arg from the value."""
Typical usage: message.obfuscated_sender|or_me:user
"""
+ user_model = get_user_model()
if not isinstance(value, (unicode, str)):
- value = (get_user_representation if isinstance(value, User) else unicode)(value)
+ value = (get_user_representation if isinstance(value, user_model) else unicode)(value)
if not isinstance(arg, (unicode, str)):
- arg = (get_user_representation if isinstance(arg, User) else unicode)(arg)
+ arg = (get_user_representation if isinstance(arg, user_model) else unicode)(arg)
return _('<me>') if value == arg else value
Typical usage: |compact_date:_("G:i,j b,j/n/y")
"""
- bits = arg.split(u',')
+ bits = arg.split(',')
if len(bits) < 3:
return value # Invalid arg.
today = datetime.date.today()
return date(value, bits[0] if value.date() == today else bits[1] if value.year == today.year else bits[2])
+
#######
# tags
#######
-
class OrderByNode(Node):
"For use in the postman_order_by tag"
def __init__(self, code):
else:
code = None
if self.code:
- gets[ORDER_BY_KEY] = self.code if self.code <> code else self.code.upper()
+ gets[ORDER_BY_KEY] = self.code if self.code != code else self.code.upper()
return '?'+gets.urlencode() if gets else ''
URLconf for tests.py usage.
"""
+from __future__ import unicode_literals
+
from django.conf import settings
try:
- from django.conf.urls import patterns, include, url # django 1.4
+ from django.conf.urls import patterns, include, url # django 1.4
+except ImportError:
+ from django.conf.urls.defaults import * # "patterns, include, url" is enough for django 1.3, "*" for django 1.2
+try:
+ from django.contrib.auth import get_user_model # Django 1.5
except ImportError:
- from django.conf.urls.defaults import * # "patterns, include, url" is enough for django 1.3, "*" for django 1.2
+ from postman.future_1_5 import get_user_model
from django.forms import ValidationError
-from django.views.generic.simple import redirect_to
+from django.views.generic.base import RedirectView
from postman.urls import OPTIONS
+
# user_filter function set
def user_filter_reason(user):
- if user.username == 'bar': return 'some reason'
+ if user.get_username() == 'bar':
+ return 'some reason'
return None
def user_filter_no_reason(user):
return ''
def user_filter_false(user):
return False
def user_filter_exception(user):
- if user.username == 'bar': raise ValidationError(['first good reason',"anyway, I don't like {0}".format(user.username)])
+ if user.get_username() == 'bar':
+ raise ValidationError(['first good reason', "anyway, I don't like {0}".format(user.get_username())])
return None
# exchange_filter function set
def exch_filter_reason(sender, recipient, recipients_list):
- if recipient.username=='bar': return 'some reason'
+ if recipient.get_username() == 'bar':
+ return 'some reason'
return None
def exch_filter_no_reason(sender, recipient, recipients_list):
return ''
def exch_filter_false(sender, recipient, recipients_list):
return False
def exch_filter_exception(sender, recipient, recipients_list):
- if recipient.username == 'bar': raise ValidationError(['first good reason',"anyway, I don't like {0}".format(recipient.username)])
+ if recipient.get_username() == 'bar':
+ raise ValidationError(['first good reason', "anyway, I don't like {0}".format(recipient.get_username())])
return None
# auto-moderation function set
url(r'^archive/$', 'archive', name='postman_archive'),
url(r'^delete/$', 'delete', name='postman_delete'),
url(r'^undelete/$', 'undelete', name='postman_undelete'),
- (r'^$', redirect_to, {'url': 'inbox/'}),
+ (r'^$', RedirectView.as_view(url='inbox/')),
# Customized set
# 'success_url'
)
urlpatterns = patterns('',
- (r'^accounts/login/$', 'django.contrib.auth.views.login'), # because of the login_required decorator
+ (r'^accounts/login/$', 'django.contrib.auth.views.login'), # because of the login_required decorator
(r'^messages/', include(postman_patterns)),
)
# because of fields.py/AutoCompleteWidget/render()/reverse()
if 'ajax_select' in settings.INSTALLED_APPS:
urlpatterns += patterns('',
- (r'^ajax_select/', include('ajax_select.urls')), # django-ajax-selects
+ (r'^ajax_select/', include('ajax_select.urls')), # django-ajax-selects
)
# optional
if 'notification' in settings.INSTALLED_APPS:
urlpatterns += patterns('',
- (r'^notification/', include('notification.urls')), # django-notification
+ (r'^notification/', include('notification.urls')), # django-notification
)
)
"""
+from __future__ import unicode_literals
import copy
from datetime import datetime, timedelta
import re
from django.conf import settings
from django.contrib.auth import REDIRECT_FIELD_NAME
-from django.contrib.auth.models import User, AnonymousUser
+try:
+ from django.contrib.auth import get_user_model # Django 1.5
+except ImportError:
+ from postman.future_1_5 import get_user_model
+from django.contrib.auth.models import AnonymousUser
from django.core import mail
from django.core.exceptions import ValidationError
from django.core.urlresolvers import reverse, clear_url_caches, get_resolver, get_urlconf
Usual generic tests.
"""
def test_version(self):
- self.assertEqual(sys.modules['postman'].__version__, "2.1.0a1")
+ self.assertEqual(sys.modules['postman'].__version__, "2.1.0")
class BaseTest(TestCase):
}
self.reload_modules()
- self.user1 = User.objects.create_user('foo', 'foo@domain.com', 'pass')
- self.user2 = User.objects.create_user('bar', 'bar@domain.com', 'pass')
- self.user3 = User.objects.create_user('baz', 'baz@domain.com', 'pass')
+ self.user1 = get_user_model().objects.create_user('foo', 'foo@domain.com', 'pass')
+ self.user2 = get_user_model().objects.create_user('bar', 'bar@domain.com', 'pass')
+ self.user3 = get_user_model().objects.create_user('baz', 'baz@domain.com', 'pass')
self.email = 'qux@domain.com'
def check_now(self, dt):
response = self.client.get(url + '?subject=that%20is%20the%20subject')
self.assertContains(response, 'value="that is the subject"')
response = self.client.get(url + '?body=this%20is%20my%20body')
- self.assertContains(response, 'name="body">this is my body')
+ # before Dj 1.5: 'name="body">this is my body' ; after: 'name="body">\r\nthis is my body'
+ self.assertContains(response, 'this is my body</textarea>')
def test_write_querystring(self):
"Test the prefilling by query string."
self.assertEqual(m.body, body)
self.assertEqual(m.email, 'a@b.com' if is_anonymous else '')
self.assertEqual(m.sender, self.user1 if not is_anonymous else None)
- self.assertEqual(m.recipient.username, recipient_username)
+ self.assertEqual(m.recipient.get_username(), recipient_username)
if is_anonymous:
self.check_status(m, sender_deleted_at=True)
self.assertEqual(len(mail.outbox), 0)
"Check message generation, redirection, and mandatory fields."
url = reverse('postman_write')
url_with_success_url = reverse('postman_write_with_success_url_to_sent')
- data = {'recipients': self.user2.username, 'subject': 's', 'body': 'b'}
+ data = {'recipients': self.user2.get_username(), 'subject': 's', 'body': 'b'}
data.update(extra)
# default redirect is to the requestor page
response = self.client.post(url, data, HTTP_REFERER=url)
url = reverse('postman_write')
data = {
'email': 'a@b.com', 'subject': 's', 'body': 'b',
- 'recipients': '{0}, {1}'.format(self.user2.username, self.user3.username)}
+ 'recipients': '{0}, {1}'.format(self.user2.get_username(), self.user3.get_username())}
# anonymous
response = self.client.post(url, data, HTTP_REFERER=url)
self.assertFormError(response, 'form', 'recipients', CommaSeparatedUserField.default_error_messages['max'].format(limit_value=1, show_value=2))
url = reverse('postman_write')
data = {
'subject': 's', 'body': 'b',
- 'recipients': '{0}, {1}'.format(self.user2.username, self.user3.username)}
+ 'recipients': '{0}, {1}'.format(self.user2.get_username(), self.user3.get_username())}
self.assert_(self.client.login(username='foo', password='pass'))
response = self.client.post(reverse('postman_write_with_user_filter_reason'), data, HTTP_REFERER=url)
def test_write_post_moderate(self):
"Test 'auto_moderators' parameter."
url = reverse('postman_write')
- data = {'subject': 's', 'body': 'b', 'recipients': self.user2.username}
+ data = {'subject': 's', 'body': 'b', 'recipients': self.user2.get_username()}
self.assert_(self.client.login(username='foo', password='pass'))
response = self.client.post(reverse('postman_write_moderate'), data, HTTP_REFERER=url)
self.assertRedirects(response, url)
from postman.forms import FullReplyForm
self.assert_(isinstance(response.context['form'], FullReplyForm))
self.assertContains(response, 'value="Re: s"')
- self.assertContains(response, 'name="body">\n\nbar wrote:\n> this is my body')
+ self.assertContains(response, '\n\nbar wrote:\n> this is my body\n</textarea>')
self.assertEqual(response.context['recipient'], 'bar')
def test_reply_formatters(self):
response = self.client.get(url)
self.assertTemplateUsed(response, template)
self.assertContains(response, 'value="Re_ s"')
- self.assertContains(response, 'name="body">bar _ this is my body')
+ self.assertContains(response, 'bar _ this is my body</textarea>')
def test_reply_auto_complete(self):
"Test the 'autocomplete_channel' parameter."
"Test number of recipients constraint."
pk = self.c21().pk
url = reverse('postman_reply', args=[pk])
- data = {'subject': 's', 'body': 'b', 'recipients': self.user3.username}
+ data = {'subject': 's', 'body': 'b', 'recipients': self.user3.get_username()}
self.assert_(self.client.login(username='foo', password='pass'))
response = self.client.post(url, data, HTTP_REFERER=url)
self.assertRedirects(response, url)
self.check_message(Message.objects.get(pk=pk+2), recipient_username='baz')
url_with_max = reverse('postman_reply_with_max', args=[pk])
- data.update(recipients='{0}, {1}'.format(self.user2.username, self.user3.username))
+ data.update(recipients='{0}, {1}'.format(self.user2.get_username(), self.user3.get_username()))
response = self.client.post(url_with_max, data, HTTP_REFERER=url)
self.assertFormError(response, 'form', 'recipients', CommaSeparatedUserField.default_error_messages['max'].format(limit_value=1, show_value=2))
"Test user- and exchange- filters."
pk = self.c21().pk
url = reverse('postman_reply', args=[pk])
- data = {'subject': 's', 'body': 'b', 'recipients': '{0}, {1}'.format(self.user2.username, self.user3.username)}
+ data = {'subject': 's', 'body': 'b', 'recipients': '{0}, {1}'.format(self.user2.get_username(), self.user3.get_username())}
self.assert_(self.client.login(username='foo', password='pass'))
response = self.client.post(reverse('postman_reply_with_user_filter_reason', args=[pk]), data, HTTP_REFERER=url)
response = self.client.get(url)
self.assertTemplateUsed(response, template)
self.assertNotContains(response, 'value="Re_ s"')
- self.assertContains(response, 'name="body">bar _ this is my body')
+ self.assertContains(response, 'bar _ this is my body</textarea>')
def check_view_404(self, pk):
self.check_404('postman_view', pk)
m.clean()
else:
self.assertRaises(ValidationError, m.clean)
- self.assertEqual(m.admin_sender(), s.username if s else '<'+email+'>')
+ self.assertEqual(m.admin_sender(), s.get_username() if s else '<'+email+'>')
self.assertEqual(m.clear_sender, m.admin_sender())
if s:
- self.assertEqual(m.obfuscated_sender, s.username)
+ self.assertEqual(m.obfuscated_sender, s.get_username())
elif email:
self.assert_(obfuscated_email_re.match(m.obfuscated_sender))
else:
self.assertEqual(m.obfuscated_sender, '')
- self.assertEqual(m.admin_recipient(), r.username if r else '<'+email+'>')
+ self.assertEqual(m.admin_recipient(), r.get_username() if r else '<'+email+'>')
self.assertEqual(m.clear_recipient, m.admin_recipient())
if r:
- self.assertEqual(m.obfuscated_recipient, r.username)
+ self.assertEqual(m.obfuscated_recipient, r.get_username())
elif email:
self.assert_(obfuscated_email_re.match(m.obfuscated_recipient))
else:
self.check_compact_date(dt, default, format='one')
self.check_compact_date(dt, default, format='one,two')
self.check_compact_date(dt, dt.strftime('%H:%M'))
- dt = now() - timedelta(days=1) # little fail: do not work on Jan, 1st, because the year changes as well
- self.check_compact_date(dt, dt.strftime('%d %b').lower()) # filter's 'b' is lowercase
- dt = now() - timedelta(days=365)
- self.check_compact_date(dt, dt.strftime('%d/%m/%y'))
+ dt2 = dt - timedelta(days=1) # little fail: do not work on Jan, 1st, because the year changes as well
+ self.check_compact_date(dt2, dt2.strftime('%d %b').lower()) # filter's 'b' is lowercase
+ dt2 = dt - timedelta(days=365)
+ self.check_compact_date(dt2, dt2.strftime('%d/%m/%y'))
class TagsTest(BaseTest):
self.assertEqual(m.body, body)
self.assertEqual(m.email, '')
self.assertEqual(m.sender, self.user1)
- self.assertEqual(m.recipient.username, recipient_username)
+ self.assertEqual(m.recipient.get_username(), recipient_username)
def test_pm_broadcast(self):
"Test the case of a single recipient."
Otherwise you may customize the behavior by passing extra parameters.
-Recipients Max
+Recipients Max
--------------
Views supporting the parameter are: ``write``, ``reply``.
Example::
..., {'formatters': (format_subject,format_body)}, name='postman_view'),
"""
+from __future__ import unicode_literals
+
try:
- from django.conf.urls import patterns, include, url # django 1.4
+ from django.conf.urls import patterns, include, url # django 1.4
except ImportError:
- from django.conf.urls.defaults import patterns, include, url # django 1.3
-from django.views.generic.simple import redirect_to
+ from django.conf.urls.defaults import patterns, include, url # django 1.3
+from django.views.generic.base import RedirectView
OPTION_MESSAGES = 'm'
OPTIONS = OPTION_MESSAGES
url(r'^archive/$', 'archive', name='postman_archive'),
url(r'^delete/$', 'delete', name='postman_delete'),
url(r'^undelete/$', 'undelete', name='postman_undelete'),
- (r'^$', redirect_to, {'url': 'inbox/'}),
+ (r'^$', RedirectView.as_view(url='inbox/')),
)
+from __future__ import unicode_literals
import re
import sys
from textwrap import TextWrapper
# default wrap width; referenced in forms.py
WRAP_WIDTH = 55
+
def format_body(sender, body, indent=_("> "), width=WRAP_WIDTH):
"""
Wrap the text and prepend lines with a prefix.
Used for quoting messages in replies.
"""
- indent = force_unicode(indent) # join() doesn't work on lists with lazy translation objects
+ indent = force_unicode(indent) # join() doesn't work on lists with lazy translation objects
wrapper = TextWrapper(width=width, initial_indent=indent, subsequent_indent=indent)
# rem: TextWrapper doesn't add the indent on an empty text
quote = '\n'.join([line.startswith(indent) and indent+line or wrapper.fill(line) or indent for line in body.splitlines()])
return ugettext("\n\n{sender} wrote:\n{body}\n").format(sender=sender, body=quote)
+
def format_subject(subject):
"""
Prepend a pattern to the subject, unless already there.
pattern = '^' + str.replace('{subject}', '.*') + '$'
return subject if re.match(pattern, subject, re.IGNORECASE) else str.format(subject=subject)
+
def email(subject_template, message_template, recipient_list, object, action=None):
"""Compose and send an email."""
site = Site.objects.get_current()
# during the development phase, consider using the setting: EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
send_mail(subject, message, settings.DEFAULT_FROM_EMAIL, recipient_list, fail_silently=True)
+
def email_visitor(object, action):
"""Email a visitor."""
email('postman/email_visitor_subject.txt', 'postman/email_visitor.txt', [object.email], object, action)
+
def notify_user(object, action):
"""Notify a user."""
if action == 'rejection':
+from __future__ import unicode_literals
import urlparse
from django.conf import settings
from django.contrib import messages
from django.contrib.auth.decorators import login_required
-from django.contrib.auth.models import User
+try:
+ from django.contrib.auth import get_user_model # Django 1.5
+except ImportError:
+ from postman.future_1_5 import get_user_model
from django.core.urlresolvers import reverse
from django.db.models import Q
from django.http import Http404
from django.template import RequestContext
from django.utils.translation import ugettext as _
try:
- from django.utils.timezone import now # Django 1.4 aware datetimes
+ from django.utils.timezone import now # Django 1.4 aware datetimes
except ImportError:
from datetime import datetime
now = datetime.now
from postman.urls import OPTION_MESSAGES
from postman.utils import format_subject, format_body
+
##########
# Helpers
##########
"""Return the HTTP_REFERER, if existing."""
if 'HTTP_REFERER' in request.META:
sr = urlparse.urlsplit(request.META['HTTP_REFERER'])
- return urlparse.urlunsplit(('','',sr.path,sr.query,sr.fragment))
+ return urlparse.urlunsplit(('', '', sr.path, sr.query, sr.fragment))
+
########
# Views
kwargs.update(order_by=order_by)
msgs = getattr(Message.objects, folder_name)(request.user, **kwargs)
return render_to_response(template_name, {
- 'pm_messages': msgs, # avoid 'messages', already used by contrib.messages
+ 'pm_messages': msgs, # avoid 'messages', already used by contrib.messages
'by_conversation': option is None,
'by_message': option == OPTION_MESSAGES,
'by_conversation_url': reverse(view_name),
'by_message_url': reverse(view_name, args=[OPTION_MESSAGES]),
'current_url': request.get_full_path(),
- 'gets': request.GET, # useful to postman_order_by template tag
+ 'gets': request.GET, # useful to postman_order_by template tag
}, context_instance=RequestContext(request))
+
@login_required
def inbox(request, option=None, template_name='postman/inbox.html'):
"""
"""
return _folder(request, 'inbox', 'postman_inbox', option, template_name)
+
@login_required
def sent(request, option=None, template_name='postman/sent.html'):
"""
"""
return _folder(request, 'sent', 'postman_sent', option, template_name)
+
@login_required
def archives(request, option=None, template_name='postman/archives.html'):
"""
"""
return _folder(request, 'archives', 'postman_archives', option, template_name)
+
@login_required
def trash(request, option=None, template_name='postman/trash.html'):
"""
"""
return _folder(request, 'trash', 'postman_trash', option, template_name)
+
def write(request, recipients=None, form_classes=(WriteForm, AnonymousWriteForm), autocomplete_channels=None,
template_name='postman/write.html', success_url=None,
user_filter=None, exchange_filter=None, max=None, auto_moderators=[]):
messages.warning(request, _("Message rejected for at least one recipient."), fail_silently=True)
return redirect(request.GET.get('next', success_url or next_url or 'postman_inbox'))
else:
- initial = dict(request.GET.items()) # allow optional initializations by query string
+ initial = dict(request.GET.items()) # allow optional initializations by query string
if recipients:
# order_by() is not mandatory, but: a) it doesn't hurt; b) it eases the test suite
# and anyway the original ordering cannot be respected.
- usernames = list(User.objects.values_list('username', flat=True).filter(
+ user_model = get_user_model()
+ usernames = list(user_model.objects.values_list(user_model.USERNAME_FIELD, flat=True).filter(
is_active=True,
- username__in=[r.strip() for r in recipients.split(':') if r and not r.isspace()],
- ).order_by('username'))
+ **{'{0}__in'.format(user_model.USERNAME_FIELD): [r.strip() for r in recipients.split(':') if r and not r.isspace()]}
+ ).order_by(user_model.USERNAME_FIELD))
if usernames:
initial.update(recipients=', '.join(usernames))
form = form_class(initial=initial, channel=channel)
if getattr(settings, 'POSTMAN_DISALLOW_ANONYMOUS', False):
write = login_required(write)
+
@login_required
def reply(request, message_id, form_class=FullReplyForm, formatters=(format_subject,format_body), autocomplete_channel=None,
template_name='postman/reply.html', success_url=None,
next_url = _get_referer(request)
if request.method == 'POST':
post = request.POST.copy()
- if 'subject' not in post: # case of the quick reply form
+ if 'subject' not in post: # case of the quick reply form
post['subject'] = initial['subject']
form = form_class(post, sender=user, recipient=parent.sender or parent.email,
channel=autocomplete_channel,
messages.warning(request, _("Message rejected for at least one recipient."), fail_silently=True)
return redirect(request.GET.get('next', success_url or next_url or 'postman_inbox'))
else:
- initial.update(request.GET.items()) # allow overwriting of the defaults by query string
+ initial.update(request.GET.items()) # allow overwriting of the defaults by query string
form = form_class(initial=initial, channel=autocomplete_channel)
return render_to_response(template_name, {
'form': form,
'next_url': request.GET.get('next', next_url),
}, context_instance=RequestContext(request))
+
def _view(request, filter, form_class=QuickReplyForm, formatters=(format_subject,format_body),
template_name='postman/view.html'):
"""
'pm_messages': msgs,
'archived': archived,
'reply_to_pk': received.pk if received else None,
- 'form' : form_class(initial=received.quote(*formatters)) if received else None,
+ 'form': form_class(initial=received.quote(*formatters)) if received else None,
'next_url': request.GET.get('next', reverse('postman_inbox')),
}, context_instance=RequestContext(request))
raise Http404
+
@login_required
def view(request, message_id, *args, **kwargs):
"""Display one specific message."""
return _view(request, Q(pk=message_id), *args, **kwargs)
+
@login_required
def view_conversation(request, thread_id, *args, **kwargs):
"""Display a conversation."""
return _view(request, Q(thread=thread_id), *args, **kwargs)
+
def _update(request, field_bit, success_msg, field_value=None, success_url=None):
"""
Code common to the archive/delete/undelete actions.
recipient_rows = Message.objects.as_recipient(user, filter).update(**{'recipient_{0}'.format(field_bit): field_value})
sender_rows = Message.objects.as_sender(user, filter).update(**{'sender_{0}'.format(field_bit): field_value})
if not (recipient_rows or sender_rows):
- raise Http404 # abnormal enough, like forged ids
+ raise Http404 # abnormal enough, like forged ids
messages.success(request, success_msg, fail_silently=True)
return redirect(request.GET.get('next', success_url or next_url))
else:
messages.warning(request, _("Select at least one object."), fail_silently=True)
return redirect(next_url)
+
@login_required
def archive(request, *args, **kwargs):
"""Mark messages/conversations as archived."""
return _update(request, 'archived', _("Messages or conversations successfully archived."), True, *args, **kwargs)
+
@login_required
def delete(request, *args, **kwargs):
"""Mark messages/conversations as deleted."""
return _update(request, 'deleted_at', _("Messages or conversations successfully deleted."), now(), *args, **kwargs)
+
@login_required
def undelete(request, *args, **kwargs):
"""Revert messages/conversations from marked as deleted."""