2 commits - po/de_DE.po po/de.po po/POTFILES.in po/POTFILES.skip po/pykolab.pot pykolab/xml tests/functional wallace/module_invitationpolicy.py wallace/module_resources.py
Thomas Brüderli
bruederli at kolabsys.com
Tue Jul 22 16:03:10 CEST 2014
po/POTFILES.in | 13
po/POTFILES.skip | 282 -
po/de.po | 2250 +++++++++----
po/de_DE.po | 2232 +++++++++---
po/pykolab.pot | 917 +++--
pykolab/xml/attendee.py | 2
tests/functional/test_wallace/test_007_invitationpolicy.py | 52
wallace/module_invitationpolicy.py | 3
wallace/module_resources.py | 9
9 files changed, 4216 insertions(+), 1544 deletions(-)
New commits:
commit b3e6648328dd00dd53e60633b23a40ed6ff578e5
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Tue Jul 22 10:03:03 2014 -0400
Test localized notifications from iTip messages
diff --git a/pykolab/xml/attendee.py b/pykolab/xml/attendee.py
index a01d955..5d469c2 100644
--- a/pykolab/xml/attendee.py
+++ b/pykolab/xml/attendee.py
@@ -22,7 +22,7 @@ participant_status_labels = {
}
def participant_status_label(status):
- return _(participant_status_labels[status]) if participant_status_labels.has_key(status) else status
+ return _(participant_status_labels[status]) if participant_status_labels.has_key(status) else _(status)
class Attendee(kolabformat.Attendee):
diff --git a/tests/functional/test_wallace/test_007_invitationpolicy.py b/tests/functional/test_wallace/test_007_invitationpolicy.py
index dd419f0..1af22ff 100644
--- a/tests/functional/test_wallace/test_007_invitationpolicy.py
+++ b/tests/functional/test_wallace/test_007_invitationpolicy.py
@@ -178,14 +178,14 @@ class TestWallaceInvitationpolicy(unittest.TestCase):
'kolabinvitationpolicy': ['ACT_TENTATIVE_IF_NO_CONFLICT','ACT_SAVE_TO_CALENDAR','ACT_UPDATE']
}
- self.bob = {
- 'displayname': 'Bob Auto',
- 'mail': 'bob.auto at example.org',
- 'dn': 'uid=auto,ou=People,dc=example,dc=org',
- 'preferredlanguage': 'en_US',
- 'mailbox': 'user/bob.auto at example.org',
- 'kolabtargetfolder': 'user/bob.auto/Calendar at example.org',
- 'kolabinvitationpolicy': ['ACT_ACCEPT','ACT_UPDATE']
+ self.mark = {
+ 'displayname': 'Mark German',
+ 'mail': 'mark.german at example.org',
+ 'dn': 'uid=german,ou=People,dc=example,dc=org',
+ 'preferredlanguage': 'de_DE',
+ 'mailbox': 'user/mark.german at example.org',
+ 'kolabtargetfolder': 'user/mark.german/Calendar at example.org',
+ 'kolabinvitationpolicy': ['ACT_ACCEPT','ACT_UPDATE_AND_NOTIFY']
}
self.external = {
@@ -197,7 +197,7 @@ class TestWallaceInvitationpolicy(unittest.TestCase):
user_add("John", "Doe", kolabinvitationpolicy=self.john['kolabinvitationpolicy'], preferredlanguage=self.john['preferredlanguage'])
user_add("Jane", "Manager", kolabinvitationpolicy=self.jane['kolabinvitationpolicy'], preferredlanguage=self.jane['preferredlanguage'])
user_add("Jack", "Tentative", kolabinvitationpolicy=self.jack['kolabinvitationpolicy'], preferredlanguage=self.jack['preferredlanguage'])
- user_add("Bob", "Auto", kolabinvitationpolicy=self.bob['kolabinvitationpolicy'], preferredlanguage=self.bob['preferredlanguage'])
+ user_add("Mark", "German", kolabinvitationpolicy=self.mark['kolabinvitationpolicy'], preferredlanguage=self.mark['preferredlanguage'])
time.sleep(1)
from tests.functional.synchronize import synchronize_once
@@ -606,18 +606,18 @@ class TestWallaceInvitationpolicy(unittest.TestCase):
self.purge_mailbox(self.john['mailbox'])
start = datetime.datetime(2014,8,12, 16,0,0, tzinfo=pytz.timezone("Europe/Berlin"))
- uid = self.create_calendar_event(start, user=self.john, attendees=[self.jane, self.bob, self.jack])
+ uid = self.create_calendar_event(start, user=self.john, attendees=[self.jane, self.mark, self.jack])
# send a reply from jane to john
self.send_itip_reply(uid, self.jane['mail'], self.john['mail'], start=start)
# check for notification message
- # this notification should be suppressed until bob has replied, too
+ # this notification should be suppressed until mark has replied, too
notification = self.check_message_received(_('"%s" has been updated') % ('test'), self.john['mail'])
self.assertEqual(notification, None)
- # send a reply from bob to john
- self.send_itip_reply(uid, self.bob['mail'], self.john['mail'], start=start, partstat='ACCEPTED')
+ # send a reply from mark to john
+ self.send_itip_reply(uid, self.mark['mail'], self.john['mail'], start=start, partstat='ACCEPTED')
notification = self.check_message_received(_('"%s" has been updated') % ('test'), self.john['mail'])
self.assertIsInstance(notification, email.message.Message)
@@ -628,7 +628,7 @@ class TestWallaceInvitationpolicy(unittest.TestCase):
self.purge_mailbox(self.john['mailbox'])
- # send a reply from bob to john
+ # send a reply from mark to john
self.send_itip_reply(uid, self.jack['mail'], self.john['mail'], start=start, partstat='ACCEPTED')
# this triggers an additional notification
@@ -639,6 +639,28 @@ class TestWallaceInvitationpolicy(unittest.TestCase):
self.assertNotIn(_("PENDING"), notification_text)
+ def test_008_notify_translated(self):
+ self.purge_mailbox(self.mark['mailbox'])
+
+ start = datetime.datetime(2014,8,12, 16,0,0, tzinfo=pytz.timezone("Europe/Berlin"))
+ uid = self.create_calendar_event(start, user=self.mark, attendees=[self.jane])
+
+ # send a reply from jane to mark
+ self.send_itip_reply(uid, self.jane['mail'], self.mark['mail'], start=start)
+
+ # change translations to de_DE
+ pykolab.translate.setUserLanguage(self.mark['preferredlanguage'])
+ notification = self.check_message_received(_('"%s" has been updated') % ('test'), self.mark['mail'], self.mark['mailbox'])
+ self.assertIsInstance(notification, email.message.Message)
+
+ notification_text = str(notification.get_payload());
+ self.assertIn(self.jane['mail'], notification_text)
+ self.assertIn(participant_status_label("ACCEPTED")+":", notification_text)
+
+ # reset localization
+ pykolab.translate.setUserLanguage(conf.get('kolab','default_locale'))
+
+
def test_009_outdated_reply(self):
self.purge_mailbox(self.john['mailbox'])
@@ -711,3 +733,5 @@ class TestWallaceInvitationpolicy(unittest.TestCase):
jacks = self.check_user_calendar_event(self.jack['kolabtargetfolder'], uid)
self.assertEqual(jacks.get_attendee(self.jane['mail']).get_participant_status(), kolabformat.PartAccepted)
self.assertEqual(jacks.get_attendee(self.jack['mail']).get_participant_status(), kolabformat.PartNeedsAction)
+
+
diff --git a/wallace/module_invitationpolicy.py b/wallace/module_invitationpolicy.py
index 03585ee..de29450 100644
--- a/wallace/module_invitationpolicy.py
+++ b/wallace/module_invitationpolicy.py
@@ -144,6 +144,9 @@ def cleanup():
def execute(*args, **kw):
global auth, imap
+ # (re)set language to default
+ pykolab.translate.setUserLanguage(conf.get('kolab','default_locale'))
+
if not os.path.isdir(mybasepath):
os.makedirs(mybasepath)
diff --git a/wallace/module_resources.py b/wallace/module_resources.py
index dba2653..b31a8d0 100644
--- a/wallace/module_resources.py
+++ b/wallace/module_resources.py
@@ -100,6 +100,9 @@ def cleanup():
def execute(*args, **kw):
global auth, imap
+ # (re)set language to default
+ pykolab.translate.setUserLanguage(conf.get('kolab','default_locale'))
+
if not os.path.isdir(mybasepath):
os.makedirs(mybasepath)
@@ -875,6 +878,8 @@ def send_response(from_address, itip_events, owner=None):
attendee = itip_event['xml'].get_attendee_by_email(from_address)
participant_status = itip_event['xml'].get_ical_attendee_participant_status(attendee)
+ # TODO: look-up event organizer in LDAP and change localization to its preferredlanguage
+
message_text = reservation_response_text(participant_status, owner)
subject_template = _("Reservation Request for %(summary)s was %(status)s")
@@ -944,6 +949,10 @@ def send_owner_notification(resource, owner, itip_event, success=True):
level=8
)
+ # change gettext language to the preferredlanguage setting of the resource owner
+ if owner.has_key('preferredlanguage'):
+ pykolab.translate.setUserLanguage(owner['preferredlanguage'])
+
message_text = owner_notification_text(resource, owner, itip_event['xml'], success)
msg = MIMEText(utils.stripped_message(message_text))
commit 9876593d6551fe4e7dcd7ce93011f70ebab5b8a1
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date: Tue Jul 22 09:08:36 2014 -0400
Updated localization index and some German texts
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 8109c28..5a5bc37 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -12,11 +12,10 @@ ext/python/Tools/freeze/makefreeze.py
ext/python/Tools/freeze/makemakefile.py
ext/python/Tools/freeze/parsesetup.py
ext/python/Tools/freeze/winmakemakefile.py
+kolab-cli.py
kolabd/__init__.py
kolabd/process.py
kolabd.py
-kolab/__init__.py
-kolab.py
pykolab/auth/__init__.py
pykolab/auth/ldap/auth_cache.py
pykolab/auth/ldap/cache.py
@@ -84,11 +83,13 @@ pykolab/imap/cyrus.py
pykolab/imap/__init__.py
pykolab/imap_utf7.py
pykolab/__init__.py
+pykolab/itip/__init__.py
pykolab/logger.py
pykolab/plugins/defaultfolders/__init__.py
pykolab/plugins/dynamicquota/__init__.py
pykolab/plugins/__init__.py
pykolab/plugins/recipientpolicy/__init__.py
+pykolab/plugins/roundcubedb/__init__.py
pykolab/plugins/sievemgmt/__init__.py
pykolab/setup/components.py
pykolab/setup/__init__.py
@@ -137,6 +138,8 @@ tests/functional/test_wallace/test_003_nonascii_subject.py
tests/functional/test_wallace/test_004_nonascii_addresses.py
tests/functional/test_wallace/test_005_resource_add.py
tests/functional/test_wallace/test_005_resource_invitation.py
+tests/functional/test_wallace/test_006_resource_performance.py
+tests/functional/test_wallace/test_007_invitationpolicy.py
tests/functional/test_wap_client/__init__.py
tests/functional/test_wap_client/test_001_connect.py
tests/functional/test_wap_client/test_002_user_add.py
@@ -160,12 +163,18 @@ tests/unit/test-007-ldap_syncrepl.py
tests/unit/test-008-sievelib.py
tests/unit/test-009-parse_ldap_uri.py
tests/unit/test-010-transliterate.py
+tests/unit/test-011-itip.py
tests/unit/test-011-wallace_resources.py
+tests/unit/test-012-wallace_invitationpolicy.py
+tests/unit/test-014-conf-and-raw.py
+tests/unit/test-015-translate.py
test-wallace.py
ucs/kolab_sieve.py
ucs/listener.py
wallace/__init__.py
wallace/module_footer.py
+wallace/module_gpgencrypt.py
+wallace/module_invitationpolicy.py
wallace/module_optout.py
wallace/module_resources.py
wallace/modules.py
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
index b2ac963..1966fae 100644
--- a/po/POTFILES.skip
+++ b/po/POTFILES.skip
@@ -1,214 +1,70 @@
-activate_domain.py
-bin/test_parse_policy.py
-bin/test-read-input.py
-bonnie/__init__.py
-bonnie.py
-demo.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/about.mak.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/authentication.mak.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/data.mak.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/environ.mak.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/error.mak.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/index.mak.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/login.mak.py
-kwap/data/templates/home/kanarip/devel/src/kolab/pykolab.git/kwap/kwap/templates/master.mak.py
-kwap/ez_setup/__init__.py
-kwap/kwap/config/app_cfg.py
-kwap/kwap/config/environment.py
-kwap/kwap/config/__init__.py
-kwap/kwap/config/middleware.py
-kwap/kwap/controllers/domain.py
-kwap/kwap/controllers/error.py
-kwap/kwap/controllers/__init__.py
-kwap/kwap/controllers/root.py
-kwap/kwap/controllers/secure.py
-kwap/kwap/controllers/template.py
-kwap/kwap/grids/domains.py
-kwap/kwap/grids/__init__.py
-kwap/kwap/__init__.py
-kwap/kwap/lib/app_globals.py
-kwap/kwap/lib/base.py
-kwap/kwap/lib/helpers.py
-kwap/kwap/lib/__init__.py
-kwap/kwap/model/auth.py
-kwap/kwap/model/__init__.py
-kwap/kwap/templates/domain/__init__.py
-kwap/kwap/templates/__init__.py
-kwap/kwap/tests/functional/__init__.py
-kwap/kwap/tests/functional/test_authentication.py
-kwap/kwap/tests/functional/test_root.py
-kwap/kwap/tests/__init__.py
-kwap/kwap/tests/models/__init__.py
-kwap/kwap/tests/models/test_auth.py
-kwap/kwap/websetup/bootstrap.py
-kwap/kwap/websetup/__init__.py
-kwap/kwap/websetup/schema.py
-kwap/setup.py
-munich_demo.py
-play/anon-imap/anon-imap.py
-play/augeas-insert.py
-play/base_64_decode.py
-play/brepr_vs_unicode.py
-play/cleanup_acls.py
-play/cliconfmgmt.py
-play/conf-add-file-to-service.py
-play/conf-add-setting.py
-play/conf-list-config-files.py
-play/confmgmt/augeas.py
-play/confmgmt/db.py
-play/confmgmt/__init__.py
-play/confmgmt/model.py
-play/conf.py
-play/conf-settings-from-file.py
-play/conf-update-file.py
-play/detect-object-type.py
-play/dttz.py
-play/effectiverights.py
-play/flawed_zpush_testing_create_folders.py
-play/fork.py
-play/get_uid.py
-play/imap_annotations_test.py
-play/kolab-sap/kolab_smtp_access_policy.py
-play/libkolabxml/contact.py
-play/libkolabxml/event_imap.py
-play/libkolabxml/event.py
-play/libkolabxml/event_rfc822.py
-play/libkolabxml/todo.py
-play/load_test.py
-play/migrate_lowercase_uid.py
-play/migrate_mail_to_uid_prod.py
-play/migrate_mail_to_uid.py
-play/migrate_uid_to_mail_prod.py
-play/migrate_uid_to_mail.py
-play/noheaderini.py
-play/not-an-itip-message.py
-play/openssl/license.py
-play/parallel_persistent_searches.py
-play/parse_policy.py
-play/persistent_search_kolab_23.py
-play/persistent_search.py
-play/pooling.py
-play/purge_users_roundcube.py
-play/push_contacts.py
-play/pygpgme/sign.py
-play/pygpgme/verify.py
-play/regexps.py
-play/rolequota/__init__.py
-play/roundcube_database/identities.py
-play/roundcube_database/__init__.py
-play/roundcube_database.py
-play/roundcube_database/users.py
-play/split_message_file.py
-play/sqlalchemy_schemadisplay.py
-play/strip_many_headers.py
-play/sync_client.py
-play/sync_repl_kolab_23.py
-play/test_augeas_load.py
-play/test_cal_spread.py
-play/test-entitlements.py
-play/test_filter.py
-play/test_folders.py
-play/test-icalendar-attendee.py
-play/test_imapd.py
-play/test_imap.py
-play/test-kolab-smtp-access-policy-load.py
-play/test_kolabxml.py
-play/test-login-as.py
-play/test-namespace.py
-play/test-output.py
-play/test_page_control.py
-play/test-parse_ldap_uri.py
-play/test.py
-play/test_sk.ks.c.py
-play/test_socket_client.py
-play/test_socket.py
-play/test_submission.py
-play/test_undelete.py
-play/translit.py
-play/unicode_test.py
-play/unicode-to-ascii.py
-play/wap/domain.info.py
-play/wap/domains.capabilities.py
-play/wap/domains.list.py
-play/wap/form_value.generate_cn.py
-play/wap/form_value.generate_displayname.py
-play/wap/form_value.generate_mail.py
-play/wap/form_value.generate_password.py
-play/wap/form_value.generate_uid.py
-play/wap/form_value.list_options-c.py
-play/wap/form_value.select_options-ou.py
-play/wap/form_value.select_options-preferredlanguage.py
-play/wap/group.add.py
-play/wap/group.info.py
-play/wap/group.members_list.py
-play/wap/groups.list.py
-play/wap/group_types.list.py
-play/wap/role.add.py
-play/wap/role.capabilities.py
-play/wap/role.delete.py
-play/wap/role.find_by_attribute.py
-play/wap/role.info.py
-play/wap/roles.list.py
-play/wap/scu.py
-play/wap/system.capabilities.py
-play/wap/system.select_domain.py
-play/wap/user.add.py
-play/wap/user.delete.py
-play/wap/user.edit.py
-play/wap/user.info.py
-play/wap/users.list.py
-play/wap/user_types.list.py
-play/xmlevent.py
-play/xmlformat.py
-play/xmlfromical.py
-play/zorbadb/test.py
-pykolab/auth/ldap/fds/__init__.py
-pykolab/auth/ldap/msds/__init__.py
-pykolab/auth/ldap/openldap/__init__.py
-pykolab/auth/ldap/rhds/__init__.py
-pykolab/auth/ldap/sunds/__init__.py
-pykolab/auth/sql/__init__.py
-pykolab/cli/cmd_examine_message.py
-pykolab/cli/cmd_list_contacts.py
-pykolab/cli/cmd_list_events.py
-pykolab/cli/cmd_rebalance_mailboxes.py
-pykolab/cli/cmd_role_info.py
-pykolab/cli/cmd_set_quota.py
-pykolab/cli/cmd_summarize_quota_allocation.py
-pykolab/confmgmt/augeas.py
-pykolab/conf/parser.py
+kolabd/.___init__.py
+pykolab/auth/.___init__.py
+pykolab/auth/ldap/._cache.py
+pykolab/auth/ldap/.___init__.py
+pykolab/._base.py
+pykolab/cli/._cmd_create_mailbox.py
+pykolab/cli/._cmd_list_mailbox_metadata.py
+pykolab/cli/._cmd_list_quota.py
+pykolab/cli/._cmd_set_language.py
+pykolab/cli/._cmd_set_mailbox_acl.py
+pykolab/cli/._cmd_set_mail.py
+pykolab/conf/._defaults.py
+pykolab/conf/.___init__.py
+pykolab/._constants.py
pykolab/constants.py
-pykolab/ical/itip.py
-pykolab/imap/dovecot.py
-pykolab/plugins/roundcube/__init__.py
-pykolab/wap_client.old/__init__.py
-pykolab/xml/task.py
-sievelib-0.5/setup.py
-sievelib-0.5/sievelib/commands.py
-sievelib-0.5/sievelib/digest_md5.py
-sievelib-0.5/sievelib/factory.py
-sievelib-0.5/sievelib/__init__.py
-sievelib-0.5/sievelib/managesieve.py
-sievelib-0.5/sievelib/parser.py
-testaci.py
-test-ask_menu.py
-test-search.py
-test-send-mail-kolab_smtp_access_policy.py
-test-send-mail-kolab_smtp_access_policy-relay.py
-tests/functional/test_kolabd/test_004_many_aliases.py
-test-subscribe-address-to-ml.py
-tests/unit/test-011-base64_encoded_contact.py
-tests/unit/test-012-utf7.py
-test-urllib.py
-test-wallace-loadmsg.py
-test-wallace-resource.py
-test-wallace-send.py
-wallace/future_module_bcc.py
-wallace/future_module_conversations.py
-wallace/future_module_correctsentdate.py
-wallace/future_module_dlp.py
-wallace/future_module_footer.py
-wallace/future_module_freebusy.py
-wallace/future_module_googletranslate.py
-wallace/future_module_statistics.py
-wap_raw.py
+pykolab/._constants.py.in
+pykolab/imap/._cyrus.py
+pykolab/imap/.___init__.py
+pykolab/.___init__.py
+pykolab/itip/.___init__.py
+pykolab/._logger.py
+pykolab/plugins/dynamicquota/.___init__.py
+pykolab/plugins/.___init__.py
+pykolab/plugins/roundcubedb/.___init__.py
+pykolab/setup/.___init__.py
+pykolab/setup/._setup_freebusy.py
+pykolab/setup/._setup_ldap.py
+pykolab/setup/._setup_mta.py
+pykolab/setup/._setup_roundcube.py
+pykolab/._translate.py
+pykolab/._translit.py
+pykolab/._utils.py
+pykolab/wap_client/.___init__.py
+pykolab/xml/._attendee.py
+pykolab/xml/._event.py
+pykolab/xml/.___init__.py
+pykolab/xml/._utils.py
+tests/functional/._purge_users.py
+tests/functional/._resource_func.py
+tests/functional/._synchronize.py
+tests/functional/test_auth/.___init__.py
+tests/functional/test_auth/._test_001_ldap.py
+tests/functional/test_auth/._test_002_sql.py
+tests/functional/test_auth/._test_003_pam.py
+tests/functional/test_auth/._test_004_saslauthd.py
+tests/functional/test_kolabd/._test_001_user_sync.py
+tests/functional/test_wallace/._test_001_user_add.py
+tests/functional/test_wallace/._test_002_footer.py
+tests/functional/test_wallace/._test_005_resource_add.py
+tests/functional/test_wallace/._test_005_resource_invitation.py
+tests/functional/test_wallace/._test_006_resource_performance.py
+tests/functional/test_wallace/._test_007_invitationpolicy.py
+tests/functional/test_wap_client/._test_002_user_add.py
+tests/functional/._user_add.py
+tests/unit/._test-000-imports.py
+tests/unit/._test-002-attendee.py
+tests/unit/._test-003-event.py
+tests/unit/._test-006-ldap_psearch.py
+tests/unit/._test-007-ldap_syncrepl.py
+tests/unit/._test-010-transliterate.py
+tests/unit/._test-011-itip.py
+tests/unit/._test-011-wallace_resources.py
+tests/unit/._test-012-wallace_invitationpolicy.py
+tests/unit/._test-014-conf-and-raw.py
+tests/unit/._test-015-translate.py
+wallace/.___init__.py
+wallace/._module_gpgencrypt.py
+wallace/._module_invitationpolicy.py
+wallace/._module_resources.py
+wallace/._modules.py
diff --git a/po/de.po b/po/de.po
index b49222d..46f34fc 100644
--- a/po/de.po
+++ b/po/de.po
@@ -3,331 +3,362 @@
# This file is distributed under the same license as the PACKAGE package.
#
# Translators:
-# Christoph Wickert <cwickert at fedoraproject.org>, 2011.
-# <grote at kolabsys.com>, 2012.
+# Christoph Wickert <christoph.wickert at gmail.com>, 2011
+# Grote <grote at kolabsys.com>, 2012
+# balin <johannes_graumann at web.de>, 2012
+# Jo <jo at caj-augsburg.de>, 2012
+# bitnukl <robert at proemper.net>, 2014
+# Thomas Brüderli <roundcube at gmail.com>, 2014
+# Till Savekoul <till at koul.de>, 2012
msgid ""
msgstr ""
"Project-Id-Version: Kolab Groupware Solution\n"
-"Report-Msgid-Bugs-To: https://isues.kolab.org/\n"
-"POT-Creation-Date: 2012-08-14 12:22+0100\n"
-"PO-Revision-Date: 2012-08-14 11:13+0000\n"
-"Last-Translator: Jeroen van Meeuwen <vanmeeuwen at kolabsys.com>\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-07-10 07:21-0400\n"
+"PO-Revision-Date: 2014-07-22 13:01+0000\n"
+"Last-Translator: Thomas Brüderli <roundcube at gmail.com>\n"
"Language-Team: German (http://www.transifex.com/projects/p/kolab/language/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: de\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../bin/kolab_smtp_access_policy.py:206
+#: ../bin/kolab_smtp_access_policy.py:209
#, python-format
msgid "Adding policy request to instance %s"
msgstr "Füge Richtlinien-Anfrage zu Instanz %s hinzu"
-#: ../bin/kolab_smtp_access_policy.py:446
+#: ../bin/kolab_smtp_access_policy.py:479
msgid "Unauthorized access not allowed"
msgstr "Unberechtigter Zugriff nicht erlaubt"
-#: ../bin/kolab_smtp_access_policy.py:467
-#: ../bin/kolab_smtp_access_policy.py:657
+#: ../bin/kolab_smtp_access_policy.py:508
+#: ../bin/kolab_smtp_access_policy.py:689
msgid "Could not find recipient"
msgstr "Konnte den Empfänger nicht finden"
-#: ../bin/kolab_smtp_access_policy.py:486
-#: ../bin/kolab_smtp_access_policy.py:586
+#: ../bin/kolab_smtp_access_policy.py:527
#, python-format
-msgid "Could not find envelope sender user %s"
-msgstr "Konnte den Absender-Umschlag für den Benutzer %s nicht finden"
+msgid "Could not find envelope sender user %s (511)"
+msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:529
+#: ../bin/kolab_smtp_access_policy.py:570
#, python-format
msgid "Obtained authenticated user details for %r: %r"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:608
+#: ../bin/kolab_smtp_access_policy.py:627
+#, python-format
+msgid "Could not find envelope sender user %s"
+msgstr "Konnte den Absender-Umschlag für den Benutzer %s nicht finden"
+
+#: ../bin/kolab_smtp_access_policy.py:649
#, python-format
msgid "%s is unauthorized to send on behalf of %s"
msgstr "Benutzer %s ist nicht berechtigt als Benutzer %s zu senden"
-#: ../bin/kolab_smtp_access_policy.py:618
+#: ../bin/kolab_smtp_access_policy.py:659
#, python-format
msgid ""
"User %s attempted to use envelope sender address %s without authorization"
-msgstr ""
+msgstr "Benutzer %s versuchte die Absendeadresse %s ohne Berechtigung zu verwenden"
-#: ../bin/kolab_smtp_access_policy.py:681
-#: ../bin/kolab_smtp_access_policy.py:692
+#: ../bin/kolab_smtp_access_policy.py:713
+#: ../bin/kolab_smtp_access_policy.py:724
#, python-format
msgid "Found user %s to be a delegate user of %s"
msgstr "Benutzer %s ist ein delegierter Benutzer von %s"
-#: ../bin/kolab_smtp_access_policy.py:716
+#: ../bin/kolab_smtp_access_policy.py:748
#, python-format
msgid ""
"Verifying authenticated sender '%(sender)s' with sasl_username "
"'%(sasl_username)s' for recipient '%(recipient)s'"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:719
+#: ../bin/kolab_smtp_access_policy.py:751
#, python-format
msgid ""
"Verifying unauthenticated sender '%(sender)s' for recipient '%(recipient)s'"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:735
+#: ../bin/kolab_smtp_access_policy.py:767
#, python-format
msgid "Reproducing verify_recipient(%s, %s) from cache"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:753
+#: ../bin/kolab_smtp_access_policy.py:804
#, python-format
msgid "Using authentication domain %s instead of %s"
msgstr "Benutze Authentisierungsdomain %s anstelle von %s"
-#: ../bin/kolab_smtp_access_policy.py:763
+#: ../bin/kolab_smtp_access_policy.py:814
#, python-format
msgid "Domain %s is a primary domain"
msgstr "Die Domain %s ist die primäre Domain"
-#: ../bin/kolab_smtp_access_policy.py:771
+#: ../bin/kolab_smtp_access_policy.py:822
#, python-format
msgid ""
"Checking the recipient for domain %s that is not ours. This is probably a "
"configuration error."
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:786
+#: ../bin/kolab_smtp_access_policy.py:837
msgid ""
"This recipient address is related to multiple object entries and the SMTP "
"Access Policy can therefore not restrict message flow"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:793
+#: ../bin/kolab_smtp_access_policy.py:854
#, python-format
msgid ""
"Recipient address %r not found. Allowing since the MTA was configured to "
"accept the recipient."
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:820
+#: ../bin/kolab_smtp_access_policy.py:890
msgid "Invalid recipient"
msgstr "Ungültiger Empfänger"
-#: ../bin/kolab_smtp_access_policy.py:831
+#: ../bin/kolab_smtp_access_policy.py:901
msgid "Could not find this user, accepting"
msgstr "Konnte keine Einschränkung für diesen Benutzer finden, akzeptiere Nachricht"
-#: ../bin/kolab_smtp_access_policy.py:894
-#: ../bin/kolab_smtp_access_policy.py:945
+#: ../bin/kolab_smtp_access_policy.py:974
+#: ../bin/kolab_smtp_access_policy.py:1050
#, python-format
msgid "Sender %s is not allowed to send to recipient %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:933
+#: ../bin/kolab_smtp_access_policy.py:1038
#, python-format
msgid "Reproducing verify_sender(%r) from cache"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:960
+#: ../bin/kolab_smtp_access_policy.py:1055
+msgid "Unverifiable sender."
+msgstr ""
+
+#: ../bin/kolab_smtp_access_policy.py:1060
+msgid "Sender is not using an alias"
+msgstr ""
+
+#: ../bin/kolab_smtp_access_policy.py:1068
msgid "Sender uses unauthorized envelope sender address"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:977
+#: ../bin/kolab_smtp_access_policy.py:1085
msgid "Could not verify sender"
msgstr "Konnte den Absender nicht verifizieren"
-#: ../bin/kolab_smtp_access_policy.py:984
+#: ../bin/kolab_smtp_access_policy.py:1092
msgid ""
"Verifying whether sender is allowed to send to recipient using sender policy"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:997
+#: ../bin/kolab_smtp_access_policy.py:1105
#, python-format
msgid "Result is %r"
msgstr "Das Ergebnis ist %r"
-#: ../bin/kolab_smtp_access_policy.py:1002
+#: ../bin/kolab_smtp_access_policy.py:1110
msgid "No recipient policy restrictions exist for this sender"
msgstr "Es existiert keine Empfängerrichtlinie für diesen Absender"
-#: ../bin/kolab_smtp_access_policy.py:1011
+#: ../bin/kolab_smtp_access_policy.py:1119
msgid "Found a recipient policy to apply for this sender."
msgstr "Empfänger-Richtlinie für diesen Benutzer gefunden"
-#: ../bin/kolab_smtp_access_policy.py:1026
+#: ../bin/kolab_smtp_access_policy.py:1134
#, python-format
msgid "Sender %s not allowed to send to recipient %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1056
+#: ../bin/kolab_smtp_access_policy.py:1155
msgid "Cleaning up the cache"
msgstr "Aufräumen des Cache"
-#: ../bin/kolab_smtp_access_policy.py:1093
+#: ../bin/kolab_smtp_access_policy.py:1177
+msgid ""
+"The 'uri' setting in the kolab_smtp_access_policy section is soon going to "
+"be deprecated in favor of 'cache_uri'"
+msgstr ""
+
+#: ../bin/kolab_smtp_access_policy.py:1193
#, python-format
msgid "Operational Error in caching: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1144
+#: ../bin/kolab_smtp_access_policy.py:1245
#, python-format
msgid "Caching the policy result with timestamp %d"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1221
+#: ../bin/kolab_smtp_access_policy.py:1319
#, python-format
msgid "Returning action DEFER_IF_PERMIT: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1226
+#: ../bin/kolab_smtp_access_policy.py:1324
#, python-format
msgid "Returning action DUNNO: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1231
+#: ../bin/kolab_smtp_access_policy.py:1329
#, python-format
msgid "Returning action HOLD: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1236
+#: ../bin/kolab_smtp_access_policy.py:1334
#, python-format
msgid "Returning action PERMIT: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1241
+#: ../bin/kolab_smtp_access_policy.py:1459
#, python-format
msgid "Returning action REJECT: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1287
+#: ../bin/kolab_smtp_access_policy.py:1505
msgid "Starting to loop for new request"
msgstr "Starte Schleife für neue Anfrage"
-#: ../bin/kolab_smtp_access_policy.py:1294
+#: ../bin/kolab_smtp_access_policy.py:1512
msgid "Timeout for policy request reading exceeded"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1300
+#: ../bin/kolab_smtp_access_policy.py:1518
msgid "End of current request"
msgstr "Ende der aktuellen Anfrage"
-#: ../bin/kolab_smtp_access_policy.py:1304
+#: ../bin/kolab_smtp_access_policy.py:1522
#, python-format
msgid "Getting line: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1308
+#: ../bin/kolab_smtp_access_policy.py:1526
msgid "Returning request"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1334
+#: ../bin/kolab_smtp_access_policy.py:1555
msgid "Access Policy Options"
msgstr "Zugriffsrichtlinien-Einstellungen"
-#: ../bin/kolab_smtp_access_policy.py:1341
+#: ../bin/kolab_smtp_access_policy.py:1562
msgid "SMTP Policy request timeout."
msgstr "Zeitüberschreitung der SMTP Richtlinien-Anfrage"
-#: ../bin/kolab_smtp_access_policy.py:1347
+#: ../bin/kolab_smtp_access_policy.py:1568
msgid "Verify the recipient access policy."
msgstr "Verifiziere die Empfänger-Zugriffs-Richtlinie."
-#: ../bin/kolab_smtp_access_policy.py:1353
+#: ../bin/kolab_smtp_access_policy.py:1574
msgid "Verify the sender access policy."
msgstr "Verifiziere die Sender-Zugriffs-Richtlinie."
-#: ../bin/kolab_smtp_access_policy.py:1359
+#: ../bin/kolab_smtp_access_policy.py:1580
msgid "Allow unauthenticated senders."
msgstr "Erlaube nicht authentisierte Sender."
-#: ../bin/kolab_smtp_access_policy.py:1373
+#: ../bin/kolab_smtp_access_policy.py:1594
#, python-format
msgid "Got request instance %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1382
+#: ../bin/kolab_smtp_access_policy.py:1603
#, python-format
msgid "Request instance %s is in state %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1390
+#: ../bin/kolab_smtp_access_policy.py:1611
#, python-format
msgid "Request instance %s is not yet in DATA state"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1402
+#: ../bin/kolab_smtp_access_policy.py:1623
#, python-format
msgid "Request instance %s reached DATA state"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1420
+#: ../bin/kolab_smtp_access_policy.py:1643
+#, python-format
+msgid "Unhandled exception caught: %r"
+msgstr ""
+
+#: ../bin/kolab_smtp_access_policy.py:1647
msgid "Sender access denied"
msgstr "Sender Zugriff verweigert"
-#: ../bin/kolab_smtp_access_policy.py:1422
+#: ../bin/kolab_smtp_access_policy.py:1649
msgid "Recipient access denied"
msgstr "Empfänger Zugriff verweigert"
-#: ../bin/kolab_smtp_access_policy.py:1424
+#: ../bin/kolab_smtp_access_policy.py:1651
msgid "No objections"
msgstr "Keine Einwände"
-#: ../conf.py:37 ../kolab.py:34 ../saslauthd.py:33
+#: ../conf.py:37 ../kolab-cli.py:34 ../saslauthd.py:33
msgid "Cannot load pykolab/logger.py:"
-msgstr ""
+msgstr "Laden von pykolab/logger.py nicht möglich:"
-#: ../kolabd/__init__.py:49 ../saslauthd/__init__.py:48
-#: ../wallace/__init__.py:65
+#: ../kolabd/__init__.py:49 ../saslauthd/__init__.py:51
+#: ../wallace/__init__.py:85
msgid "Daemon Options"
msgstr "Daemon Optionen"
-#: ../kolabd/__init__.py:56 ../saslauthd/__init__.py:55
-#: ../wallace/__init__.py:72
+#: ../kolabd/__init__.py:56 ../saslauthd/__init__.py:58
+#: ../wallace/__init__.py:92
msgid "Fork to the background."
msgstr "In den Hintergrund abtauchen"
-#: ../kolabd/__init__.py:65 ../saslauthd/__init__.py:64
-#: ../wallace/__init__.py:98
+#: ../kolabd/__init__.py:65 ../saslauthd/__init__.py:67
+#: ../wallace/__init__.py:118
msgid "Path to the PID file to use."
msgstr "Pfad zur PID-Datei"
-#: ../kolabd/__init__.py:74 ../saslauthd/__init__.py:73
-#: ../wallace/__init__.py:115
+#: ../kolabd/__init__.py:74 ../saslauthd/__init__.py:76
+#: ../wallace/__init__.py:135
msgid "Run as user USERNAME"
-msgstr ""
+msgstr "Als Benutzer USERNAME ausführen"
-#: ../kolabd/__init__.py:84 ../saslauthd/__init__.py:83
-#: ../wallace/__init__.py:89
+#: ../kolabd/__init__.py:84 ../saslauthd/__init__.py:86
+#: ../wallace/__init__.py:109
msgid "Run as group GROUPNAME"
-msgstr ""
+msgstr "Als Gruppe GROUPNAME ausführen"
-#: ../kolabd/__init__.py:122 ../pykolab/utils.py:151
-#: ../wallace/__init__.py:288
+#: ../kolabd/__init__.py:122 ../pykolab/logger.py:139 ../pykolab/utils.py:234
+#: ../saslauthd/__init__.py:292 ../wallace/__init__.py:329
#, python-format
msgid "Group %s does not exist"
-msgstr ""
+msgstr "Gruppe %s exisitert nicht"
-#: ../kolabd/__init__.py:131 ../wallace/__init__.py:297
+#: ../kolabd/__init__.py:131 ../saslauthd/__init__.py:301
+#: ../wallace/__init__.py:338
#, python-format
msgid "Switching real and effective group id to %d"
msgstr ""
-#: ../kolabd/__init__.py:153 ../pykolab/utils.py:175
-#: ../wallace/__init__.py:319
+#: ../kolabd/__init__.py:153 ../pykolab/logger.py:159 ../pykolab/utils.py:258
+#: ../saslauthd/__init__.py:323 ../wallace/__init__.py:360
#, python-format
msgid "User %s does not exist"
msgstr "Benutzer %s existiert nicht"
-#: ../kolabd/__init__.py:163 ../wallace/__init__.py:329
+#: ../kolabd/__init__.py:163 ../saslauthd/__init__.py:333
+#: ../wallace/__init__.py:370
#, python-format
msgid "Switching real and effective user id to %d"
msgstr ""
-#: ../kolabd/__init__.py:172 ../wallace/__init__.py:338
+#: ../kolabd/__init__.py:172 ../saslauthd/__init__.py:342
+#: ../wallace/__init__.py:379
msgid "Could not change real and effective uid and/or gid"
msgstr ""
-#: ../kolabd/__init__.py:192 ../saslauthd/__init__.py:122
-#: ../wallace/__init__.py:358
+#: ../kolabd/__init__.py:192 ../saslauthd/__init__.py:133
+#: ../wallace/__init__.py:399
msgid "Interrupted by user"
msgstr "Vom Benutzer unterbrochen"
@@ -335,328 +366,492 @@ msgstr "Vom Benutzer unterbrochen"
msgid "Traceback occurred, please report a "
msgstr ""
-#: ../kolabd/__init__.py:203 ../saslauthd/__init__.py:130
-#: ../wallace/__init__.py:367
+#: ../kolabd/__init__.py:203 ../saslauthd/__init__.py:141
+#: ../wallace/__init__.py:408
#, python-format
msgid "Type Error: %s"
msgstr "Typ-Fehler: %s"
-#: ../kolabd/__init__.py:223 ../pykolab/auth/ldap/__init__.py:1591
+#: ../kolabd/__init__.py:230
+msgid "Could not connect to LDAP, is it running?"
+msgstr ""
+
+#: ../kolabd/__init__.py:233 ../pykolab/auth/ldap/__init__.py:2137
#: ../pykolab/cli/cmd_sync.py:36
msgid "Listing domains..."
msgstr "Liste Domains auf..."
-#: ../kolabd/__init__.py:256
+#: ../kolabd/__init__.py:244
+msgid "No domains. Not syncing"
+msgstr ""
+
+#: ../kolabd/__init__.py:275
#, python-format
msgid "added domains: %r, removed domains: %r"
msgstr ""
+#: ../kolabd/process.py:33
+#, python-format
+msgid "Process created for domain %s"
+msgstr ""
+
+#: ../kolabd/process.py:42
+#, python-format
+msgid "Synchronizing for domain %s"
+msgstr ""
+
+#: ../kolabd/process.py:59
+#, python-format
+msgid ""
+"Error in process %r, terminating:\n"
+"\t%r"
+msgstr ""
+
#: ../kolabd.py:31 ../setup-kolab.py:36 ../wallace.py:31
msgid "Cannot load pykolab/constants.py:"
msgstr "Konnte nicht pykolab/constants.py laden:"
-#: ../pykolab/auth/__init__.py:94
+#: ../pykolab/auth/__init__.py:89
#, python-format
msgid "Called for domain %r"
msgstr ""
-#: ../pykolab/auth/__init__.py:107 ../pykolab/auth/__init__.py:116
+#: ../pykolab/auth/__init__.py:106 ../pykolab/auth/__init__.py:115
#, python-format
msgid "Using section %s and domain %s"
msgstr ""
-#: ../pykolab/auth/__init__.py:121
+#: ../pykolab/auth/__init__.py:120
#, python-format
msgid "Connecting to Authentication backend for domain %s"
msgstr ""
-#: ../pykolab/auth/__init__.py:132
+#: ../pykolab/auth/__init__.py:131
#, python-format
msgid "Section %s has no option 'auth_mechanism'"
msgstr ""
-#: ../pykolab/auth/__init__.py:139
+#: ../pykolab/auth/__init__.py:138
#, python-format
msgid "Section %s has auth_mechanism: %r"
msgstr ""
-#: ../pykolab/auth/__init__.py:148 ../pykolab/auth/__init__.py:157
+#: ../pykolab/auth/__init__.py:147 ../pykolab/auth/__init__.py:156
msgid "Starting LDAP..."
msgstr "Starte LDAP..."
-#: ../pykolab/auth/ldap/cache.py:109
+#: ../pykolab/auth/ldap/cache.py:126
#, python-format
msgid "Inserting cache entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/cache.py:122
+#: ../pykolab/auth/ldap/cache.py:147
#, python-format
msgid "Updating timestamp for cache entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/cache.py:129
+#: ../pykolab/auth/ldap/cache.py:155
#, python-format
msgid "Updating result_attribute for cache entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:51
+#: ../pykolab/auth/ldap/__init__.py:52
msgid "Python LDAP library does not support persistent search"
msgstr "Die Python LDAP Bibliothek unterstützt keine persistente Suche"
-#: ../pykolab/auth/ldap/__init__.py:142
+#: ../pykolab/auth/ldap/__init__.py:143
#, python-format
msgid "Attempting to authenticate user %s in realm %s"
msgstr "Versuche Benutzer %s in Bereich %s zu authentisieren"
-#: ../pykolab/auth/ldap/__init__.py:184
+#: ../pykolab/auth/ldap/__init__.py:175 ../pykolab/auth/ldap/__init__.py:226
+#, python-format
+msgid "Authentication cache failed: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:216 ../pykolab/auth/ldap/__init__.py:240
#, python-format
msgid "Binding with user_dn %s and password %s"
msgstr "Binde mit user_dn %s und Passwort %s"
-#: ../pykolab/auth/ldap/__init__.py:194
+#: ../pykolab/auth/ldap/__init__.py:231 ../pykolab/auth/ldap/__init__.py:263
#, python-format
msgid "Failed to authenticate as user %s"
+msgstr "Autorisation als Benutzer %s gescheitert"
+
+#: ../pykolab/auth/ldap/__init__.py:249
+#, python-format
+msgid "Error occured, there is no such object: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:254
+msgid "Authentication cache failed to clear entry"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:260
+#, python-format
+msgid "Exception occured: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:211
+#: ../pykolab/auth/ldap/__init__.py:280
msgid "Connecting to LDAP..."
msgstr "Verbinde zum LDAP..."
-#: ../pykolab/auth/ldap/__init__.py:215
+#: ../pykolab/auth/ldap/__init__.py:284
#, python-format
msgid "Attempting to use LDAP URI %s"
msgstr "Versuche LDAP URI %s zu benutzen"
-#: ../pykolab/auth/ldap/__init__.py:357
+#: ../pykolab/auth/ldap/__init__.py:371
+#, python-format
+msgid "Entry ID: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:373
+#, python-format
+msgid "Entry DN: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:376
+#, python-format
+msgid ""
+"ldap search: (%r, %r, filterstr='(objectclass=*)', attrlist=[ 'dn' ] + %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:453
#, python-format
msgid "Finding recipient with filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:425
+#: ../pykolab/auth/ldap/__init__.py:529
#, python-format
msgid "Finding resource with filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:448
+#: ../pykolab/auth/ldap/__init__.py:560
#, python-format
msgid "Using timestamp %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:480
+#: ../pykolab/auth/ldap/__init__.py:595
+msgid "Applying recipient policy disabled through configuration"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:600
#, python-format
msgid "Applying recipient policy to %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:497
+#: ../pykolab/auth/ldap/__init__.py:617
#, python-format
msgid "Using mail attributes: %r, with primary %r and "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:508
+#: ../pykolab/auth/ldap/__init__.py:628
#, python-format
msgid "key %r not in entry"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:510
+#: ../pykolab/auth/ldap/__init__.py:630
#, python-format
msgid "key %r is the prim. mail attr."
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:512
+#: ../pykolab/auth/ldap/__init__.py:632
msgid "prim. mail pol. is not empty"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:515
+#: ../pykolab/auth/ldap/__init__.py:635
#, python-format
msgid "key %r is the sec. mail attr."
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:517
+#: ../pykolab/auth/ldap/__init__.py:637
msgid "sec. mail pol. is not empty"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:520 ../pykolab/auth/ldap/__init__.py:533
+#: ../pykolab/auth/ldap/__init__.py:641 ../pykolab/auth/ldap/__init__.py:655
#, python-format
msgid "Attributes %r are not yet available for entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:574
+#: ../pykolab/auth/ldap/__init__.py:694
#, python-format
msgid "No results for mail address %s found"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:585
+#: ../pykolab/auth/ldap/__init__.py:705
#, python-format
msgid "1 result for address %s found, verifying"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:595
+#: ../pykolab/auth/ldap/__init__.py:715
#, python-format
msgid "Too bad, primary email address %s "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:606 ../pykolab/auth/ldap/__init__.py:695
+#: ../pykolab/auth/ldap/__init__.py:726 ../pykolab/auth/ldap/__init__.py:815
msgid "Address assigned to us"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:661
+#: ../pykolab/auth/ldap/__init__.py:781
#, python-format
msgid "No results for address %s found"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:672
+#: ../pykolab/auth/ldap/__init__.py:792
#, python-format
msgid "1 result for address %s found, "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:683
+#: ../pykolab/auth/ldap/__init__.py:803
msgid "Too bad, secondary email "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:710
+#: ../pykolab/auth/ldap/__init__.py:830
msgid "Recipient policy composed the following set of secondary "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:716
+#: ../pykolab/auth/ldap/__init__.py:841
#, python-format
msgid "Secondary mail addresses that we want is not None: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:727
+#: ../pykolab/auth/ldap/__init__.py:852
msgid "Avoiding the duplication of the primary mail "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:738
+#: ../pykolab/auth/ldap/__init__.py:863
#, python-format
msgid "Entry is getting secondary mail addresses: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:746
+#: ../pykolab/auth/ldap/__init__.py:871
msgid "Entry did not have any secondary mail "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:772
+#: ../pykolab/auth/ldap/__init__.py:888 ../pykolab/auth/ldap/__init__.py:894
+#, python-format
+msgid "secondary_mail_addresses: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:889 ../pykolab/auth/ldap/__init__.py:895
+#, python-format
+msgid "entry[%s]: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:906
#, python-format
msgid "Entry modifications list: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:792
+#: ../pykolab/auth/ldap/__init__.py:934
#, python-format
msgid "Setting entry attribute %r to %r for %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:828
+#: ../pykolab/auth/ldap/__init__.py:970
#, python-format
-msgid "Could not update dn %r"
+msgid ""
+"Could not update dn %r:\n"
+"%r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:841
+#: ../pykolab/auth/ldap/__init__.py:983
#, python-format
msgid "Using filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:879
+#: ../pykolab/auth/ldap/__init__.py:998
+#, python-format
+msgid "Synchronization is searching against base DN: %s"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:1044
#, python-format
msgid "About to consider the user quota for %r (used: %r, "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:945
+#: ../pykolab/auth/ldap/__init__.py:1115
msgid "Invalid DN, username and/or password."
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1229
+#: ../pykolab/auth/ldap/__init__.py:1236 ../pykolab/auth/ldap/__init__.py:1249
+#: ../pykolab/auth/ldap/__init__.py:1614 ../pykolab/auth/ldap/__init__.py:1627
+#, python-format
+msgid "Found a subject %r with access %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:1356
+#, python-format
+msgid "Entry %s attribute value: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:1364
#, python-format
-msgid "Current changelog entry %s with %s"
+msgid "imap.user_mailbox_server(%r) result: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1242
+#: ../pykolab/auth/ldap/__init__.py:1684 ../pykolab/auth/ldap/__init__.py:1853
#, python-format
msgid "Result from recipient policy: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1385
+#: ../pykolab/auth/ldap/__init__.py:1908
#, python-format
msgid "Kolab user %s does not have a result attribute %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1527
+#: ../pykolab/auth/ldap/__init__.py:2067
#, python-format
msgid "Finding domain root dn for domain %s"
-msgstr ""
+msgstr "Suche root dn für die Domain %s"
-#: ../pykolab/auth/ldap/__init__.py:1615
+#: ../pykolab/auth/ldap/__init__.py:2164
msgid "Authentication database DOWN"
msgstr "Authentisierungsdatenbank UNTEN"
-#: ../pykolab/auth/ldap/__init__.py:1699 ../pykolab/auth/ldap/__init__.py:1734
+#: ../pykolab/auth/ldap/__init__.py:2248 ../pykolab/auth/ldap/__init__.py:2296
#, python-format
msgid "Entry type: %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1822
+#: ../pykolab/auth/ldap/__init__.py:2321
+#, python-format
+msgid "Done with _synchronize_callback() for entry %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:2393
msgid "LDAP Search Result Data Entry:"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1838
+#: ../pykolab/auth/ldap/__init__.py:2409
msgid "Entry Change Notification attributes:"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1843
+#: ../pykolab/auth/ldap/__init__.py:2414
#, python-format
msgid "Change Type: %r (%r)"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1851
+#: ../pykolab/auth/ldap/__init__.py:2422
#, python-format
msgid "Previous DN: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1906
+#: ../pykolab/auth/ldap/__init__.py:2477
#, python-format
msgid "Object %s searched no longer exists"
msgstr "Das gesuchte Objekt %s existiert nicht mehr"
-#: ../pykolab/auth/ldap/__init__.py:1916
+#: ../pykolab/auth/ldap/__init__.py:2487
#, python-format
msgid "%d results..."
msgstr "%d Ergebnisse..."
-#: ../pykolab/auth/ldap/__init__.py:2014
+#: ../pykolab/auth/ldap/__init__.py:2590
#, python-format
msgid "Searching with filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2058
+#: ../pykolab/auth/ldap/__init__.py:2642
#, python-format
msgid "Checking for support for %s on %s"
msgstr ""
-#: ../pykolab/cli/cmd_add_domain.py:36 ../pykolab/cli/cmd_create_mailbox.py:36
+#: ../pykolab/auth/ldap/__init__.py:2661
+#, python-format
+msgid "Found support for %s"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:2706
+#, python-format
+msgid "An error occured using %s: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/syncrepl.py:46
+msgid "The name of the persistent, unique attribute "
+msgstr ""
+
+#: ../pykolab/cli/cmd_acl_cleanup.py:34
+msgid "Clean up ACLs that use identifiers that no longer exist"
+msgstr ""
+
+#: ../pykolab/cli/cmd_acl_cleanup.py:56
+#, python-format
+msgid "Deleting ACL %s for subject %s on folder %s"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:42
+msgid "Specify the (new) alias address"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:45
+msgid "Specify the existing recipient address"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:66 ../pykolab/cli/cmd_add_alias.py:70
+#, python-format
+msgid "Domain %r is not a local domain"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:75
+msgid "Primary and secondary domain do not have the same parent domain"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:81
+#, python-format
+msgid "No such recipient %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:87
+#, python-format
+msgid "Recipient for alias %r already exists"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:97
+msgid "Environment is not configured for "
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:105
+#, python-format
+msgid "Recipient %r is not the primary recipient for address %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_domain.py:36
+#: ../pykolab/cli/cmd_count_domain_mailboxes.py:38
+#: ../pykolab/cli/cmd_create_mailbox.py:36
#: ../pykolab/cli/cmd_export_mailbox.py:33
-#: ../pykolab/cli/cmd_list_mailboxes.py:39
-#: ../pykolab/cli/cmd_list_user_subscriptions.py:35
+#: ../pykolab/cli/cmd_list_deleted_mailboxes.py:38
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:36
+#: ../pykolab/cli/cmd_list_mailboxes.py:40
+#: ../pykolab/cli/cmd_list_mailbox_metadata.py:37
+#: ../pykolab/cli/cmd_list_messages.py:37 ../pykolab/cli/cmd_list_quota.py:36
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:36
+#: ../pykolab/cli/cmd_server_info.py:34
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:38
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:39
+#: ../pykolab/cli/cmd_undelete_mailbox.py:34
msgid "CLI Options"
msgstr "Kommandozeilen-Parameter"
#: ../pykolab/cli/cmd_add_domain.py:42
-msgid "Add domain as alias for DOMAIN"
+msgid "Add alias domain."
msgstr ""
#: ../pykolab/cli/cmd_add_domain.py:47
-msgid "Add a new domain or domain alias."
-msgstr "Füge eine neue Domain oder einen neuen Domain Alias hinzu."
-
-#: ../pykolab/cli/cmd_add_domain.py:55
-msgid "Could not find credentials with sufficient permissions"
+msgid "Add a new domain."
msgstr ""
-#: ../pykolab/cli/cmd_add_domain.py:80 ../pykolab/wap_client/__init__.py:113
-msgid "Invalid parent domain"
+#: ../pykolab/cli/cmd_add_domain.py:55 ../pykolab/cli/cmd_delete_domain.py:44
+#: ../pykolab/cli/cmd_find_domain.py:44
+msgid "Could not find credentials with sufficient permissions"
msgstr ""
-#: ../pykolab/cli/cmd_add_domain.py:86
+#: ../pykolab/cli/cmd_add_domain.py:67 ../pykolab/cli/cmd_delete_domain.py:56
+#: ../pykolab/cli/cmd_find_domain.py:56
msgid "Domain name"
-msgstr ""
+msgstr "Name der Domain"
#: ../pykolab/cli/cmd_add_user_subscription.py:37
msgid "Subscribe a user to a folder."
@@ -670,7 +865,7 @@ msgid "Folder pattern"
msgstr ""
#: ../pykolab/cli/cmd_add_user_subscription.py:50
-#: ../pykolab/cli/cmd_list_user_subscriptions.py:56
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:63
#: ../pykolab/cli/cmd_remove_user_subscription.py:50
msgid "User ID"
msgstr "Benutzer ID"
@@ -682,30 +877,39 @@ msgid "Cannot subscribe user to folder %r:"
msgstr ""
#: ../pykolab/cli/cmd_add_user_subscription.py:73
+#: ../pykolab/cli/cmd_delete_message.py:61
+#: ../pykolab/cli/cmd_list_messages.py:67
#: ../pykolab/cli/cmd_remove_user_subscription.py:73
msgid "No such folder"
-msgstr ""
+msgstr "Dieser Ordner ist nicht vorhanden"
-#: ../pykolab/cli/cmd_add_user_subscription.py:86
-#, python-format
-msgid "Successfully subscribed user %s to the following folders:"
-msgstr ""
-
-#: ../pykolab/cli/cmd_add_user_subscription.py:92
-#, python-format
-msgid "User %s not subscribed to any folders."
+#: ../pykolab/cli/cmd_count_domain_mailboxes.py:44
+#: ../pykolab/cli/cmd_list_deleted_mailboxes.py:50
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:48
+#: ../pykolab/cli/cmd_list_mailboxes.py:52 ../pykolab/cli/cmd_list_quota.py:42
+#: ../pykolab/cli/cmd_server_info.py:40
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:57
+msgid "List mailboxes on server SERVER only."
msgstr ""
-#: ../pykolab/cli/cmd_create_mailbox.py:41
+#: ../pykolab/cli/cmd_create_mailbox.py:42
msgid "Set metadata for folder to ANNOTATION=VALUE"
msgstr ""
#: ../pykolab/cli/cmd_create_mailbox.py:50
-msgid "Invalid argument"
+msgid "Create folder on PARTITION."
msgstr ""
-#: ../pykolab/cli/cmd_create_mailbox.py:58
+#: ../pykolab/cli/cmd_create_mailbox.py:60
+msgid "Invalid argument"
+msgstr "Ungültiges Argument"
+
+#: ../pykolab/cli/cmd_create_mailbox.py:68
msgid "Invalid argument for metadata"
+msgstr "Ungültiges Argument für die Metadaten"
+
+#: ../pykolab/cli/cmd_delete_domain.py:36
+msgid "Delete a domain."
msgstr ""
#: ../pykolab/cli/cmd_delete_mailbox_acl.py:45
@@ -716,26 +920,48 @@ msgid "ACI Subject"
msgstr ""
#: ../pykolab/cli/cmd_delete_mailbox_acl.py:48
-#: ../pykolab/cli/cmd_list_mailbox_acls.py:41
-#: ../pykolab/cli/cmd_list_mailbox_metadata.py:41
+#: ../pykolab/cli/cmd_list_mailbox_acls.py:43
+#: ../pykolab/cli/cmd_list_mailbox_metadata.py:54
#: ../pykolab/cli/cmd_set_mailbox_acl.py:54
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:54
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:66
+#: ../pykolab/cli/cmd_set_quota.py:46 ../tests/unit/test-015-translate.py:12
+#: ../tests/unit/test-015-translate.py:16
+#: ../tests/unit/test-015-translate.py:18
+#: ../tests/unit/test-015-translate.py:20
msgid "Folder name"
msgstr "Ordnername"
#: ../pykolab/cli/cmd_delete_mailbox_acl.py:60
-#: ../pykolab/cli/cmd_list_mailbox_acls.py:52
-#: ../pykolab/cli/cmd_list_mailbox_metadata.py:52
+#: ../pykolab/cli/cmd_list_mailbox_acls.py:54
+#: ../pykolab/cli/cmd_list_mailbox_metadata.py:80
#: ../pykolab/cli/cmd_set_mailbox_acl.py:67
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:67
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:94
+#: ../pykolab/cli/cmd_set_quota.py:58
#, python-format
msgid "No such folder %r"
-msgstr ""
+msgstr "Kein Ordner %r verfügbar"
#: ../pykolab/cli/cmd_delete_mailbox.py:46
msgid "No mailbox specified"
msgstr "Keine Mailbox angegeben"
+#: ../pykolab/cli/cmd_delete_mailbox.py:56
+msgid "No such folder(s)"
+msgstr ""
+
+#: ../pykolab/cli/cmd_delete_message.py:36
+msgid "Delete a message from a folder"
+msgstr ""
+
+#: ../pykolab/cli/cmd_delete_message.py:49
+msgid "Specify a UID"
+msgstr ""
+
+#: ../pykolab/cli/cmd_delete_message.py:52
+#: ../pykolab/cli/cmd_list_messages.py:58
+msgid "Specify a folder"
+msgstr ""
+
#: ../pykolab/cli/cmd_export_mailbox.py:38
msgid "All folders this user has access to"
msgstr ""
@@ -743,40 +969,77 @@ msgstr ""
#: ../pykolab/cli/cmd_export_mailbox.py:108
#, python-format
msgid "%s is not a directory"
-msgstr ""
+msgstr "%s ist kein Verzeichnis"
#: ../pykolab/cli/cmd_export_mailbox.py:118
#, python-format
msgid "ZIP file at %s.zip"
-msgstr ""
+msgstr "ZIP-Datei unter %s.zip"
#: ../pykolab/cli/cmd_export_mailbox.py:120
#, python-format
msgid "No directories found for user %s"
msgstr ""
-#: ../pykolab/cli/cmd_list_mailboxes.py:44
+#: ../pykolab/cli/cmd_find_domain.py:36
+msgid "Find a domain."
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_deleted_mailboxes.py:43
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:41
+#: ../pykolab/cli/cmd_list_mailboxes.py:45
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:41
msgid "Display raw IMAP UTF-7 folder names"
msgstr ""
-#: ../pykolab/cli/cmd_list_mailboxes.py:75
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:58
+msgid "Domain"
+msgstr "Domäne"
+
+#: ../pykolab/cli/cmd_list_mailboxes.py:87
#, python-format
msgid "Appending folder search for %r"
msgstr ""
-#: ../pykolab/cli/cmd_list_user_subscriptions.py:40
+#: ../pykolab/cli/cmd_list_mailbox_metadata.py:44
+msgid "List annotations as user USER"
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_messages.py:43
+msgid "Include messages flagged as \\Deleted"
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_messages.py:47
+msgid "List messages in a folder"
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_quota.py:73 ../pykolab/cli/cmd_list_quota.py:89
+#, python-format
+msgid "The quota for folder %s is set to literally allow 0KB of storage."
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:47
msgid "List unsubscribed folders"
msgstr "Liste nicht abonnierte Ordner"
-#: ../pykolab/cli/cmd_list_user_subscriptions.py:43
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:50
msgid "List the folders a user is subscribed to."
msgstr "Liste die Ordner, die ein Benutzer abonniert hat."
-#: ../pykolab/cli/cmd_list_user_subscriptions.py:88
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:98
#, python-format
msgid "No unsubscribed folders for user %s"
msgstr ""
+#: ../pykolab/cli/cmd_mailbox_cleanup.py:37
+msgid "Clean up mailboxes that do no longer have an owner."
+msgstr ""
+
+#: ../pykolab/cli/cmd_mailbox_cleanup.py:61
+#, python-format
+msgid "Deleting folder 'user/%s'"
+msgstr ""
+
#: ../pykolab/cli/cmd_remove_mailaddress.py:49
msgid "Invalid or unqualified email address."
msgstr ""
@@ -811,23 +1074,23 @@ msgstr ""
#: ../pykolab/cli/cmd_remove_user_subscription.py:92
#, python-format
-msgid "User %s not be unsubscribed from any folders."
+msgid "User %s was not unsubscribed from any folders."
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:48
+#: ../pykolab/cli/cmd_rename_mailbox.py:52
msgid "No target mailbox name specified"
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:50
+#: ../pykolab/cli/cmd_rename_mailbox.py:54
msgid "No source mailbox name specified"
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:62
+#: ../pykolab/cli/cmd_rename_mailbox.py:66
#, python-format
msgid "Source folder %r does not exist"
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:66
+#: ../pykolab/cli/cmd_rename_mailbox.py:70
#, python-format
msgid "Target folder %r already exists"
msgstr ""
@@ -838,17 +1101,75 @@ msgstr ""
msgid "ACI Permissions"
msgstr ""
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:47
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:51
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:56
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:45
+msgid "Set annotation as user USER"
+msgstr ""
+
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:59
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:63
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:68
msgid "Metadata value"
msgstr ""
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:50
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:55
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:62
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:67
msgid "Metadata path"
msgstr ""
+#: ../pykolab/cli/cmd_set_quota.py:43 ../pykolab/cli/cmd_set_quota.py:47
+msgid "New quota"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:44
+msgid "Delete mailboxes for recipients that do not appear to exist in LDAP."
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:50
+msgid "Display changes, do not apply them."
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:88
+#, python-format
+msgid "Domains in IMAP not in LDAP: %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:101
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:142
+#, python-format
+msgid ""
+"No recipients for '%s' (would have deleted the mailbox if not for --dry-"
+"run)!"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:106
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:147
+#, python-format
+msgid "Deleting mailbox '%s' because it has no recipients"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:110
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:151
+#, python-format
+msgid "An error occurred removing mailbox %r: %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:112
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:153
+#, python-format
+msgid "Not automatically deleting shared folder '%s'"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:114
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:155
+#, python-format
+msgid "No recipients for '%s' (use --delete to delete)!"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:136
+#, python-format
+msgid "Multiple recipients for '%s'!"
+msgstr ""
+
#: ../pykolab/cli/cmd_sync.py:41
#, python-format
msgid "Found %d domains in %d seconds"
@@ -859,15 +1180,23 @@ msgstr "%d Domains in %d Sekunden gefunden"
msgid "Running for domain %s"
msgstr "Starte für Domain %s"
-#: ../pykolab/cli/cmd_sync.py:57
+#: ../pykolab/cli/cmd_sync.py:58
#, python-format
msgid "Synchronizing users for %s took %d seconds"
msgstr "Benutzer für %s zu synchronisieren dauerte %d Sekunden"
-#: ../pykolab/cli/cmd_undelete_mailbox.py:33
+#: ../pykolab/cli/cmd_undelete_mailbox.py:39
+msgid "Do not actually execute, but state what would have been executed."
+msgstr ""
+
+#: ../pykolab/cli/cmd_undelete_mailbox.py:42
msgid "Recover mailboxes previously deleted."
msgstr ""
+#: ../pykolab/cli/cmd_user_info.py:39
+msgid "Email address"
+msgstr "E-Mail-Adresse"
+
#. This is a nested command
#. This is a nested component
#: ../pykolab/cli/commands.py:98 ../pykolab/setup/components.py:90
@@ -875,25 +1204,102 @@ msgstr ""
msgid "Command Group: %s"
msgstr ""
-#: ../pykolab/cli/commands.py:109 ../pykolab/cli/commands.py:114
+#: ../pykolab/cli/commands.py:113 ../pykolab/cli/commands.py:118
msgid "No such command."
msgstr "Dieses Kommando existiert nicht."
-#: ../pykolab/cli/commands.py:165 ../pykolab/setup/components.py:231
+#: ../pykolab/cli/commands.py:168 ../pykolab/setup/components.py:231
#, python-format
msgid "Command '%s' already registered"
msgstr ""
-#: ../pykolab/cli/commands.py:190 ../pykolab/setup/components.py:257
-#: ../wallace/modules.py:338
+#: ../pykolab/cli/commands.py:193 ../pykolab/setup/components.py:257
+#: ../wallace/modules.py:369
#, python-format
msgid "Alias for %s"
msgstr "Alias für %s"
-#: ../pykolab/cli/commands.py:198 ../pykolab/setup/components.py:265
+#: ../pykolab/cli/commands.py:201 ../pykolab/setup/components.py:265
msgid "Not yet implemented"
msgstr "Diese Funktion ist noch nicht implementiert"
+#: ../pykolab/cli/sieve/cmd_list.py:43 ../pykolab/cli/sieve/cmd_put.py:42
+#: ../pykolab/cli/sieve/cmd_refresh.py:44 ../pykolab/cli/sieve/cmd_test.py:43
+msgid "Email Address"
+msgstr "E-mail-Adresse"
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:99
+#: ../pykolab/plugins/sievemgmt/__init__.py:111
+#, python-format
+msgid "Found the following scripts for user %s: %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:100
+#: ../pykolab/plugins/sievemgmt/__init__.py:112
+#, python-format
+msgid "And the following script is active for user %s: %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:178
+#: ../pykolab/plugins/sievemgmt/__init__.py:190
+#, python-format
+msgid ""
+"Delivery to folder active, but no folder name attribute available for user "
+"%r"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:181
+#: ../pykolab/plugins/sievemgmt/__init__.py:193
+msgid "Delivery to folder active, but no folder name attribute configured"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:359
+#, python-format
+msgid "MANAGEMENT script for user %s contents: %r"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:364
+#: ../pykolab/plugins/sievemgmt/__init__.py:374
+#, python-format
+msgid "Uploading script MANAGEMENT failed for user %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:366
+#: ../pykolab/plugins/sievemgmt/__init__.py:376
+#, python-format
+msgid "Uploading script MANAGEMENT for user %s succeeded"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:377
+#: ../pykolab/plugins/sievemgmt/__init__.py:387
+#, python-format
+msgid "Including script %s in USER (for user %s)"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:386
+#: ../pykolab/plugins/sievemgmt/__init__.py:396
+#, python-format
+msgid "Uploading script USER failed for user %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:388
+#: ../pykolab/plugins/sievemgmt/__init__.py:398
+#, python-format
+msgid "Uploading script USER for user %s succeeded"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:416
+#: ../pykolab/plugins/sievemgmt/__init__.py:426
+#, python-format
+msgid "Uploading script MASTER failed for user %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:418
+#: ../pykolab/plugins/sievemgmt/__init__.py:428
+#, python-format
+msgid "Uploading script MASTER for user %s succeeded"
+msgstr ""
+
#: ../pykolab/cli/telemetry/cmd_examine_command_issue.py:40
msgid "Unspecified command issue identifier"
msgstr ""
@@ -958,27 +1364,27 @@ msgstr ""
#: ../pykolab/conf/__init__.py:87
#, python-format
msgid "Setting %s to %r (from defaults)"
-msgstr ""
+msgstr "Setze %s auf %r (aus den Standardeinstellungen)"
#: ../pykolab/conf/__init__.py:106
#, python-format
msgid "Setting %s to %r (from CLI, verified)"
-msgstr ""
+msgstr "Setze %s auf %r (von der Kommandozeile, überprüft)"
#: ../pykolab/conf/__init__.py:109
#, python-format
msgid "Setting %s to %r (from CLI, not checked)"
-msgstr ""
+msgstr "Setze %s auf %r (von der Kommandozeile, nicht überprüft)"
#: ../pykolab/conf/__init__.py:150 ../pykolab/conf/__init__.py:207
#, python-format
msgid "Setting %s_%s to '****' (from configuration file)"
-msgstr ""
+msgstr "Setze %s_%s auf '****' (aus Konfigurationsdatei)"
#: ../pykolab/conf/__init__.py:152 ../pykolab/conf/__init__.py:209
#, python-format
msgid "Setting %s_%s to %r (from configuration file)"
-msgstr ""
+msgstr "Setze %s_%s auf %r (aus Konfigurationsdatei)"
#: ../pykolab/conf/__init__.py:162
msgid "Setting options from configuration file"
@@ -1039,76 +1445,76 @@ msgstr "Ja auf alle Fragen."
msgid "No command supplied"
msgstr "Kein Befehl angegeben"
-#: ../pykolab/conf/__init__.py:411
+#: ../pykolab/conf/__init__.py:416
msgid "Insufficient options. Need section, key and value -in that order."
msgstr "Unzureichende Optionen. Brauche Sektion, Schlüssel und Wert in dieser Reihenfolge."
-#: ../pykolab/conf/__init__.py:414
+#: ../pykolab/conf/__init__.py:419
#, python-format
msgid "No section '%s' exists."
msgstr "Es existiert keine Sektion '%s'."
-#: ../pykolab/conf/__init__.py:445
+#: ../pykolab/conf/__init__.py:461
#, python-format
msgid "Setting %s to %r (from the default values for CLI options)"
-msgstr ""
+msgstr "Setze %s auf %r (aus den Standardwerten für Kommandozeilenoptionen)"
-#: ../pykolab/conf/__init__.py:514
+#: ../pykolab/conf/__init__.py:534
#, python-format
msgid "Could not execute configuration function: %s"
-msgstr ""
+msgstr "Konnte die Konfigurationsfunktion nicht ausführen: %s"
-#: ../pykolab/conf/__init__.py:522
+#: ../pykolab/conf/__init__.py:542
#, python-format
msgid "Option %s/%s does not exist in config file %s, pulling from defaults"
-msgstr ""
+msgstr "Die Option %s/%s existiert in der Konfigurationsdatei %s nicht, sie wird aus den Standardeinstellungen geholt"
-#: ../pykolab/conf/__init__.py:530 ../pykolab/conf/__init__.py:533
+#: ../pykolab/conf/__init__.py:550 ../pykolab/conf/__init__.py:553
msgid "Option does not exist in defaults."
msgstr "Diese Option hat keinen Standardwert."
-#: ../pykolab/conf/__init__.py:543
+#: ../pykolab/conf/__init__.py:563
#, python-format
msgid "Configuration file %s not readable."
msgstr "Konfigurationsdatei %s ist nicht lesbar."
-#: ../pykolab/conf/__init__.py:546
+#: ../pykolab/conf/__init__.py:566
#, python-format
msgid "Configuration file %s does not exist."
msgstr "Konfigurationsdatei %s existiert nicht."
-#: ../pykolab/conf/__init__.py:551
+#: ../pykolab/conf/__init__.py:571
msgid ""
"WARNING: A negative debug level value does not make this program be any more"
" silent."
msgstr "Warnung: Eine negative Fehlerprotokollierungszahl macht dieses Programm nicht noch stiller."
-#: ../pykolab/conf/__init__.py:557
+#: ../pykolab/conf/__init__.py:577
msgid "This program has 9 levels of verbosity. Using the maximum of 9."
msgstr "Dieses Programm hat 9 Ebenen der Detailliertheit. Benutze das Maximum 9."
-#: ../pykolab/conf/__init__.py:565 ../pykolab/conf/__init__.py:571
+#: ../pykolab/conf/__init__.py:585 ../pykolab/conf/__init__.py:591
msgid "Cannot start SASL authentication daemon"
msgstr "Konnte SASL Authentisierungsdaemon nicht starten"
-#: ../pykolab/conf/__init__.py:582
+#: ../pykolab/conf/__init__.py:602
msgid "No imaplib library found."
-msgstr ""
+msgstr "Keine imaplib-Bibliothek gefunden."
-#: ../pykolab/conf/__init__.py:592
+#: ../pykolab/conf/__init__.py:612
msgid "No LMTP class found in the smtplib library."
-msgstr ""
+msgstr "Keine Klasse namens LMTP in der smtplib-Bibliothek gefunden."
-#: ../pykolab/conf/__init__.py:602
+#: ../pykolab/conf/__init__.py:622
msgid "No SMTP class found in the smtplib library."
-msgstr ""
+msgstr "Keine Klasse namens SMTP in der smtplib-Bibliothek gefunden."
-#: ../pykolab/conf/__init__.py:616
+#: ../pykolab/conf/__init__.py:636
#, python-format
msgid "Found you specified a specific set of items to test: %s"
msgstr ""
-#: ../pykolab/conf/__init__.py:624
+#: ../pykolab/conf/__init__.py:644
#, python-format
msgid "Selectively selecting: %s"
msgstr ""
@@ -1137,263 +1543,383 @@ msgstr "389 Verzeichnisserver oder Red Hat Verzeichnisserver"
msgid "OpenLDAP or compatible"
msgstr "OpenLDAP oder kompatibel"
-#: ../pykolab/imap/cyrus.py:79
+#: ../pykolab/imap/cyrus.py:80
#, python-format
msgid "Could not connect to Cyrus IMAP server %r"
-msgstr ""
+msgstr "Verbindung zum Cyrus IMAP-Server %r nicht möglich"
-#: ../pykolab/imap/cyrus.py:134
+#: ../pykolab/imap/cyrus.py:137
#, python-format
msgid "Continuing with separator: %r"
msgstr ""
-#: ../pykolab/imap/cyrus.py:139
+#: ../pykolab/imap/cyrus.py:142
msgid "Detected we are running in a Murder topology"
msgstr ""
-#: ../pykolab/imap/cyrus.py:143
+#: ../pykolab/imap/cyrus.py:146
msgid "This system is not part of a murder topology"
msgstr ""
-#: ../pykolab/imap/cyrus.py:164
+#: ../pykolab/imap/cyrus.py:167
#, python-format
msgid "Checking actual backend server for folder %s through annotations"
msgstr ""
-#: ../pykolab/imap/cyrus.py:179
+#: ../pykolab/imap/cyrus.py:172
+msgid "Possibly reproducing the find "
+msgstr ""
+
+#: ../pykolab/imap/cyrus.py:195
#, python-format
msgid "Could not get the annotations after %s tries."
msgstr ""
-#: ../pykolab/imap/cyrus.py:183
+#: ../pykolab/imap/cyrus.py:199
#, python-format
msgid "No annotations for %s: %r"
msgstr ""
-#: ../pykolab/imap/cyrus.py:190
+#: ../pykolab/imap/cyrus.py:206
#, python-format
msgid "Server for INBOX folder %s is %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:202
+#: ../pykolab/imap/cyrus.py:226
#, python-format
msgid "Setting quota for folder %s to %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:206
+#: ../pykolab/imap/cyrus.py:230
#, python-format
msgid "Could not set quota for mailfolder %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:215
+#: ../pykolab/imap/cyrus.py:239
#, python-format
msgid "Moving INBOX folder %s to %s"
-msgstr ""
+msgstr "Verschiebe Eingangsordner %s nach %s"
-#: ../pykolab/imap/cyrus.py:227
+#: ../pykolab/imap/cyrus.py:254
#, python-format
msgid "Setting annotation %s on folder %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:234
+#: ../pykolab/imap/cyrus.py:259
#, python-format
msgid "Could not set annotation %r on mail folder %r: %r"
msgstr ""
-#: ../pykolab/imap/cyrus.py:238
+#: ../pykolab/imap/cyrus.py:263
#, python-format
msgid "Transferring folder %s from %s to %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:298
+#: ../pykolab/imap/cyrus.py:323
#, python-format
msgid "Undeleting %s to %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:45
+#: ../pykolab/imap/cyrus.py:334
+#, python-format
+msgid "Would have transfered %s from %s to %s"
+msgstr ""
+
+#: ../pykolab/imap/cyrus.py:336
+#, python-format
+msgid "Would have renamed %s to %s"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:46
#, python-format
msgid "Cleaning up ACL entries for %s across all folders"
msgstr ""
-#: ../pykolab/imap/__init__.py:60
+#: ../pykolab/imap/__init__.py:61
#, python-format
msgid "Cleaning up ACL entries referring to identifier %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:69
+#: ../pykolab/imap/__init__.py:70
#, python-format
msgid "Iterating over %d folders"
msgstr ""
#. Set the ACL to '' (effectively deleting the ACL entry)
-#: ../pykolab/imap/__init__.py:82
+#: ../pykolab/imap/__init__.py:83
#, python-format
msgid "Removing acl %r for subject %r from folder %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:143
+#: ../pykolab/imap/__init__.py:145
+msgid "No administrator password is available."
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:153
#, python-format
msgid "Logging on to Cyrus IMAP server %s"
-msgstr ""
+msgstr "Anmeldung am Cyrus IMAP Server %s"
-#: ../pykolab/imap/__init__.py:152
+#: ../pykolab/imap/__init__.py:162
#, python-format
msgid "Logging on to Dovecot IMAP server %s"
-msgstr ""
+msgstr "Anmeldung am Dovecot IMAP Server %s"
-#: ../pykolab/imap/__init__.py:161
+#: ../pykolab/imap/__init__.py:171
#, python-format
msgid "Logging on to generic IMAP server %s"
-msgstr ""
+msgstr "Anmeldung am generischen IMAP Server %s"
-#: ../pykolab/imap/__init__.py:179
+#: ../pykolab/imap/__init__.py:189
#, python-format
msgid "Reusing existing IMAP server connection to %s"
msgstr "Benutze Verbindung zum IMAP Server %s wieder"
-#: ../pykolab/imap/__init__.py:181
+#: ../pykolab/imap/__init__.py:191
#, python-format
msgid "Reconnecting to IMAP server %s"
msgstr "Verbinde nochmal zum IMAP Server %s"
-#: ../pykolab/imap/__init__.py:197
+#: ../pykolab/imap/__init__.py:208
msgid "Called imap.disconnect() on a server that we had no connection to."
msgstr ""
-#: ../pykolab/imap/__init__.py:212
+#: ../pykolab/imap/__init__.py:222 ../pykolab/imap/__init__.py:234
#, python-format
-msgid "%r has no attribute %s"
-msgstr "%r hat kein Attribut %s"
+msgid "Could not create folder %r"
+msgstr ""
-#: ../pykolab/imap/__init__.py:285
-msgid "Private annotations need to be set using the appropriate user account."
+#: ../pykolab/imap/__init__.py:223
+#, python-format
+msgid " on server %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:318 ../pykolab/imap/__init__.py:353
+#: ../pykolab/imap/__init__.py:244 ../pykolab/imap/__init__.py:246
+#, python-format
+msgid "%r has no attribute %s"
+msgstr "%r hat kein Attribut %s"
+
+#: ../pykolab/imap/__init__.py:393 ../pykolab/imap/__init__.py:428
#, python-format
msgid "Creating new shared folder %s"
msgstr "Erzeuge einen neuen geteilten Ordner %s"
-#: ../pykolab/imap/__init__.py:375
+#: ../pykolab/imap/__init__.py:453 ../pykolab/imap/__init__.py:675
+#, python-format
+msgid "Downcasing mailbox name %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:457
#, python-format
msgid "Creating new mailbox for user %s"
msgstr "Erzeuge eine neue Mailbox für Benutzer %s"
-#: ../pykolab/imap/__init__.py:404
+#: ../pykolab/imap/__init__.py:470
+msgid "Waiting for the Cyrus IMAP Murder to settle..."
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:516
#, python-format
msgid "Creating additional folders for user %s"
msgstr "Erzeuge weitere Order für Benutzer %s"
-#: ../pykolab/imap/__init__.py:428
+#: ../pykolab/imap/__init__.py:535
+#, python-format
+msgid "Waiting for the Cyrus murder to settle... %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:547
+#, python-format
+msgid "Correcting additional folder name from %r to %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:553
#, python-format
msgid "Mailbox already exists: %s"
msgstr "Mailbox existiert bereits: %s"
-#: ../pykolab/imap/__init__.py:471
+#: ../pykolab/imap/__init__.py:593
msgid "Subscribing user to the additional folders"
msgstr "Abonniere weitere Ordner für den Benutzer"
-#: ../pykolab/imap/__init__.py:531 ../pykolab/imap/__init__.py:605
+#: ../pykolab/imap/__init__.py:607
+msgid "Using the following tests for folder subscriptions:"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:609
+#, python-format
+msgid " %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:612
+#, python-format
+msgid "Folder %s"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:624
+#, python-format
+msgid "Subscribing %s to folder %s"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:628
+#, python-format
+msgid "Subscribing %s to folder %s failed: %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:658
+#, python-format
+msgid "Could not rename %s to reside on partition %s"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:691
+#, python-format
+msgid "INBOX folder to rename (%s) does not exist"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:694 ../pykolab/imap/__init__.py:770
#, python-format
msgid "Renaming INBOX from %s to %s"
msgstr "Benenne INBOX Ordner von %s in %s um"
-#: ../pykolab/imap/__init__.py:535
+#: ../pykolab/imap/__init__.py:698
#, python-format
msgid "Could not rename INBOX folder %s to %s"
msgstr "Konnte INBOX Ordner nicht von %s in %s umbenennen"
-#: ../pykolab/imap/__init__.py:537 ../pykolab/imap/__init__.py:609
+#: ../pykolab/imap/__init__.py:700 ../pykolab/imap/__init__.py:774
#, python-format
msgid ""
"Moving INBOX folder %s won't succeed as target folder %s already exists"
+msgstr "Der INBOX-Ordner %s kann nicht verschoben werden, weil der Zielordner %s bereits existiert"
+
+#: ../pykolab/imap/__init__.py:704
+#, python-format
+msgid "Server for mailbox %r is %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:547
+#: ../pykolab/imap/__init__.py:712
#, python-format
msgid "Looking for folder '%s', we found folders: %r"
-msgstr ""
+msgstr "Auf der Suche nach dem Ordner '%s' haben wir diese Ordner gefunden: %r"
-#: ../pykolab/imap/__init__.py:570
+#: ../pykolab/imap/__init__.py:735
#, python-format
msgid "Setting ACL rights %s for subject %s on folder "
msgstr "Richte ACL Rechte %s für Subjekt %s des Ordners ein"
-#: ../pykolab/imap/__init__.py:581
+#: ../pykolab/imap/__init__.py:746
#, python-format
msgid "Removing ACL rights %s for subject %s on folder "
msgstr ""
-#: ../pykolab/imap/__init__.py:602
+#: ../pykolab/imap/__init__.py:767
#, python-format
msgid "Found old INBOX folder %s"
-msgstr ""
+msgstr "Alter INBOX-Ordner %s gefunden"
-#: ../pykolab/imap/__init__.py:611
+#: ../pykolab/imap/__init__.py:776
#, python-format
msgid "Did not find old folder user/%s to rename"
msgstr "Konnte alten Ordner user/%s nicht zum umbenennen finden."
-#: ../pykolab/imap/__init__.py:613
+#: ../pykolab/imap/__init__.py:778
msgid "Value for user is not a dictionary"
msgstr "Der Wert für user ist kein dictionary"
#. TODO: Go in fact correct the quota.
-#: ../pykolab/imap/__init__.py:673
+#: ../pykolab/imap/__init__.py:846
#, python-format
msgid "Cannot get current IMAP quota for folder %s"
msgstr "Kann aktuelles IMAP Kontingent für den Ordner %s nicht bekommen"
-#: ../pykolab/imap/__init__.py:686
+#: ../pykolab/imap/__init__.py:859
#, python-format
msgid "Quota for %s currently is %s"
msgstr "Kontingent für %s ist aktuell %s"
-#: ../pykolab/imap/__init__.py:692
+#: ../pykolab/imap/__init__.py:865
#, python-format
msgid "Adjusting authentication database quota for folder %s to %d"
msgstr ""
-#: ../pykolab/imap/__init__.py:697
+#: ../pykolab/imap/__init__.py:870
#, python-format
msgid "Correcting quota for %s to %s (currently %s)"
msgstr ""
-#: ../pykolab/imap/__init__.py:774
+#: ../pykolab/imap/__init__.py:947
#, python-format
msgid "Checking folder: %s"
msgstr "Ãberprüfe Ordner: %s"
-#: ../pykolab/imap/__init__.py:779
+#: ../pykolab/imap/__init__.py:952
#, python-format
msgid "Folder has no corresponding user (1): %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:782
+#: ../pykolab/imap/__init__.py:955
#, python-format
msgid "Folder has no corresponding user (2): %s"
msgstr ""
#. We got user identifier only
-#: ../pykolab/imap/__init__.py:797
+#: ../pykolab/imap/__init__.py:970
msgid "Please don't give us just a user identifier"
msgstr ""
-#: ../pykolab/imap/__init__.py:800
+#: ../pykolab/imap/__init__.py:973
#, python-format
msgid "Deleting folder %s"
-msgstr ""
+msgstr "Lösche Verzeichnis %s"
#: ../pykolab/__init__.py:50
msgid "Returning thread local configuration"
msgstr ""
-#: ../pykolab/logger.py:105
+#: ../pykolab/itip/__init__.py:43
+#, python-format
+msgid "Method %r not really interesting for us."
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:49
#, python-format
-msgid "Could not change the ownership of log file %s"
+msgid "Raw iTip payload: %s"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:59
+msgid "Could not read iTip from message."
msgstr ""
-#: ../pykolab/logger.py:121
+#: ../pykolab/itip/__init__.py:67
+#, python-format
+msgid "Duplicate iTip object: %s"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:90
+msgid "iTip event without a start"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:132
+msgid "Message is not an iTip message (non-multipart message)"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:225
+#, python-format
+msgid "Failed to compose iTip reply message: %r"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:236 ../wallace/module_invitationpolicy.py:936
+#: ../wallace/module_resources.py:964
+#, python-format
+msgid "SMTP sendmail error: %r"
+msgstr ""
+
+#: ../pykolab/logger.py:173 ../pykolab/logger.py:179
+#, python-format
+msgid "Could not change permissions on %s: %r"
+msgstr ""
+
+#: ../pykolab/logger.py:196
#, python-format
msgid "Cannot log to file %s: %s"
msgstr ""
@@ -1425,12 +1951,12 @@ msgstr ""
#: ../pykolab/plugins/__init__.py:74
#, python-format
msgid "RuntimeError for plugin %s: %s"
-msgstr ""
+msgstr "Laufzeitfehler von Plugin %s: %s"
#: ../pykolab/plugins/__init__.py:78
#, python-format
msgid "Plugin %s failed to load (%s: %s)"
-msgstr ""
+msgstr "Plugin %s konnte nicht geladen werden (%s: %s)"
#: ../pykolab/plugins/__init__.py:116 ../pykolab/plugins/__init__.py:118
#, python-format
@@ -1470,7 +1996,7 @@ msgstr ""
#: ../pykolab/plugins/__init__.py:187
#, python-format
msgid "Cannot check options for plugin %s: %s"
-msgstr ""
+msgstr "Kein Zugriff auf Einstellungen des Plugins %s: %s"
#: ../pykolab/plugins/__init__.py:189
#, python-format
@@ -1491,16 +2017,51 @@ msgstr ""
msgid "Attribute substitution for 'mail' failed in Recipient Policy"
msgstr ""
-#: ../pykolab/plugins/recipientpolicy/__init__.py:115
+#: ../pykolab/plugins/recipientpolicy/__init__.py:116
msgid "Could not parse the alternative mail routines"
msgstr ""
+#: ../pykolab/plugins/recipientpolicy/__init__.py:120
+#, python-format
+msgid "Alternative mail routines: %r"
+msgstr ""
+
#: ../pykolab/plugins/recipientpolicy/__init__.py:127
-#: ../pykolab/plugins/recipientpolicy/__init__.py:137
+#, python-format
+msgid ""
+"An error occurred in composing the secondary mail attribute for entry %r"
+msgstr ""
+
+#: ../pykolab/plugins/recipientpolicy/__init__.py:138
+#: ../pykolab/plugins/recipientpolicy/__init__.py:153
+#, python-format
+msgid "Appending additional mail address: %s"
+msgstr ""
+
+#: ../pykolab/plugins/recipientpolicy/__init__.py:142
+#, python-format
+msgid "Policy for secondary email address failed: %r"
+msgstr ""
+
+#: ../pykolab/plugins/recipientpolicy/__init__.py:157
msgid ""
"Attribute substitution for 'alternative_mail' failed in Recipient Policy"
msgstr ""
+#: ../pykolab/plugins/roundcubedb/__init__.py:48
+#, python-format
+msgid "user_delete: %r"
+msgstr ""
+
+#: ../pykolab/plugins/roundcubedb/__init__.py:55
+#: ../pykolab/setup/setup_roundcube.py:160
+msgid "Roundcube installation path not found."
+msgstr ""
+
+#: ../pykolab/plugins/sievemgmt/__init__.py:51
+msgid "Wrong number of arguments for sieve management plugin"
+msgstr ""
+
#: ../pykolab/setup/components.py:58
msgid "Display this help."
msgstr "Zeige diese Hilfe."
@@ -1521,47 +2082,27 @@ msgstr ""
msgid "Free/Busy is not installed on this system"
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:55
-msgid ""
-"\n"
-" Please supply the MySQL password for the 'roundcube'\n"
-" user. You have supplied this password earlier, and it is\n"
-" available from the database URI setting in\n"
-" /etc/roundcubemail/db.inc.php.\n"
-" "
-msgstr ""
-
-#: ../pykolab/setup/setup_freebusy.py:64
-#: ../pykolab/setup/setup_roundcube.py:56
-msgid "MySQL roundcube password"
-msgstr "MySQL roundcube Passwort"
+#: ../pykolab/setup/setup_imap.py:45
+msgid "Setup IMAP."
+msgstr "Richte IMAP ein."
-#: ../pykolab/setup/setup_freebusy.py:92
-#: ../pykolab/setup/setup_roundcube.py:116 ../pykolab/setup/setup_zpush.py:71
-#, python-format
-msgid "Using template file %r"
+#: ../pykolab/setup/setup_imap.py:89
+msgid "Could not write out Cyrus IMAP configuration file /etc/imapd.conf"
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:99
-#: ../pykolab/setup/setup_roundcube.py:123 ../pykolab/setup/setup_zpush.py:78
-#, python-format
-msgid "Successfully compiled template %r, writing out to %r"
+#: ../pykolab/setup/setup_imap.py:114
+msgid "Could not write out Cyrus IMAP configuration file /etc/cyrus.conf"
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:119 ../pykolab/setup/setup_imap.py:143
-#: ../pykolab/setup/setup_ldap.py:288 ../pykolab/setup/setup_ldap.py:521
-#: ../pykolab/setup/setup_mta.py:309 ../pykolab/setup/setup_mysql.py:49
-#: ../pykolab/setup/setup_roundcube.py:191
-#: ../pykolab/setup/setup_syncroton.py:66 ../pykolab/setup/setup_zpush.py:98
-msgid "Could not start and configure to start on boot, the "
+#: ../pykolab/setup/setup_imap.py:158
+msgid "Could not start the cyrus-imapd and kolab-saslauthd services."
msgstr ""
-#: ../pykolab/setup/setup_imap.py:44
-msgid "Setup IMAP."
-msgstr "Richte IMAP ein."
-
-#: ../pykolab/setup/setup_imap.py:88 ../pykolab/setup/setup_imap.py:113
-msgid "Could not write out Cyrus IMAP configuration file /etc/imapd.conf"
+#: ../pykolab/setup/setup_imap.py:173 ../pykolab/setup/setup_kolabd.py:81
+#: ../pykolab/setup/setup_ldap.py:426 ../pykolab/setup/setup_mta.py:455
+#: ../pykolab/setup/setup_mysql.py:58 ../pykolab/setup/setup_roundcube.py:237
+#: ../pykolab/setup/setup_syncroton.py:102
+msgid "Could not configure to start on boot, the "
msgstr ""
#: ../pykolab/setup/setup_kolabd.py:43
@@ -1577,23 +2118,62 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:43
+#: ../pykolab/setup/setup_kolabd.py:72
+msgid "Could not start the kolab server service."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:45
msgid "LDAP Options"
msgstr "LDAP Optionen"
-#: ../pykolab/setup/setup_ldap.py:50
+#: ../pykolab/setup/setup_ldap.py:52
msgid "Specify FQDN (overriding defaults)."
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:58
+#: ../pykolab/setup/setup_ldap.py:60
msgid "Allow anonymous binds (default: no)."
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:62
+#: ../pykolab/setup/setup_ldap.py:68
+msgid "Skip setting up the LDAP server."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:76
+msgid "Setup configuration for OpenLDAP compatibility."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:84
+msgid "Setup configuration for Active Directory compatibility."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:88
msgid "Setup LDAP."
msgstr "LDAP Einrichten"
-#: ../pykolab/setup/setup_ldap.py:74
+#: ../pykolab/setup/setup_ldap.py:97
+msgid "Skipping setup of LDAP, as specified"
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:126
+msgid ""
+"\n"
+" You can not configure Kolab to run against OpenLDAP\n"
+" and Active Directory simultaneously.\n"
+" "
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:139
+msgid ""
+"\n"
+" It seems 389 Directory Server has an existing\n"
+" instance configured. This setup script does not\n"
+" intend to destroy or overwrite your data. Please\n"
+" make sure /etc/dirsrv/ and /var/lib/dirsrv/ are\n"
+" clean so that this setup does not have to worry.\n"
+" "
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:154
msgid ""
"\n"
" Please supply a password for the LDAP administrator user\n"
@@ -1602,11 +2182,11 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:82
+#: ../pykolab/setup/setup_ldap.py:162
msgid "Administrator password"
msgstr "Administrator Passwort"
-#: ../pykolab/setup/setup_ldap.py:89
+#: ../pykolab/setup/setup_ldap.py:169
msgid ""
"\n"
" Please supply a password for the LDAP Directory Manager\n"
@@ -1616,11 +2196,11 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:98
+#: ../pykolab/setup/setup_ldap.py:178
msgid "Directory Manager password"
msgstr "Verzeichnismanager Passwort"
-#: ../pykolab/setup/setup_ldap.py:105
+#: ../pykolab/setup/setup_ldap.py:185
msgid ""
"\n"
" Please choose the system user and group the service\n"
@@ -1629,15 +2209,15 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:112
+#: ../pykolab/setup/setup_ldap.py:195 ../pykolab/setup/setup_ldap.py:198
msgid "User"
msgstr "Benutzer"
-#: ../pykolab/setup/setup_ldap.py:113
+#: ../pykolab/setup/setup_ldap.py:196 ../pykolab/setup/setup_ldap.py:199
msgid "Group"
msgstr "Gruppe"
-#: ../pykolab/setup/setup_ldap.py:143
+#: ../pykolab/setup/setup_ldap.py:234
msgid ""
"\n"
" This setup procedure plans to set up Kolab Groupware for\n"
@@ -1648,18 +2228,18 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:157
+#: ../pykolab/setup/setup_ldap.py:248
msgid "Domain name to use"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:162 ../pykolab/setup/setup_ldap.py:187
+#: ../pykolab/setup/setup_ldap.py:253 ../pykolab/setup/setup_ldap.py:278
msgid ""
"\n"
" Invalid input. Please try again.\n"
" "
-msgstr ""
+msgstr "\n Ungültige Eingabe. Bitte nochmals versuchen.\n "
-#: ../pykolab/setup/setup_ldap.py:171
+#: ../pykolab/setup/setup_ldap.py:262
msgid ""
"\n"
" The standard root dn we composed for you follows. Please\n"
@@ -1667,11 +2247,15 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:182
+#: ../pykolab/setup/setup_ldap.py:273
msgid "Root DN to use"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:234
+#: ../pykolab/setup/setup_ldap.py:325
+msgid "No directory server setup tool available."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:337
msgid ""
"\n"
" Setup is now going to set up the 389 Directory Server. This\n"
@@ -1680,24 +2264,42 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:241
+#: ../pykolab/setup/setup_ldap.py:344
msgid "Setting up 389 Directory Server"
msgstr "Richte 389 Verzeichnisserver ein"
-#. TODO: Get the return code and display output if not successful.
-#: ../pykolab/setup/setup_ldap.py:253
+#: ../pykolab/setup/setup_ldap.py:356
+msgid ""
+"\n"
+" An error was detected in the setup procedure for 389\n"
+" Directory Server. This setup will write out stderr and\n"
+" stdout to /var/log/kolab/setup.error.log and\n"
+" /var/log/kolab/setup.out.log respectively, before it\n"
+" exits.\n"
+" "
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:373
msgid "Setup DS stdout:"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:256
+#: ../pykolab/setup/setup_ldap.py:376
msgid "Setup DS stderr:"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:279 ../pykolab/setup/setup_mysql.py:129
-msgid "Could not find the Kolab schema file"
-msgstr "Konnte Kolab Schema Datei nicht finden"
+#: ../pykolab/setup/setup_ldap.py:402
+msgid "Could not copy the LDAP extensions for Kolab"
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:405
+msgid "Could not find the ldap Kolab schema file"
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:417
+msgid "Could not start the directory server service."
+msgstr ""
-#: ../pykolab/setup/setup_ldap.py:293
+#: ../pykolab/setup/setup_ldap.py:431
msgid ""
"\n"
" Please supply a Cyrus Administrator password. This\n"
@@ -1708,11 +2310,11 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:303
+#: ../pykolab/setup/setup_ldap.py:441
msgid "Cyrus Administrator password"
msgstr "Cyrus Administrator Passwort"
-#: ../pykolab/setup/setup_ldap.py:310
+#: ../pykolab/setup/setup_ldap.py:448
msgid ""
"\n"
" Please supply a Kolab Service account password. This\n"
@@ -1722,98 +2324,127 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:319
+#: ../pykolab/setup/setup_ldap.py:457
msgid "Kolab Service password"
msgstr "Kolab-Dienst-Passwort"
-#: ../pykolab/setup/setup_ldap.py:329
+#: ../pykolab/setup/setup_ldap.py:467
msgid "Writing out configuration to kolab.conf"
msgstr "Schreibe Einstellungen in kolab.conf"
-#: ../pykolab/setup/setup_ldap.py:343
+#: ../pykolab/setup/setup_ldap.py:481
msgid "Inserting service users into LDAP."
msgstr "Füge Service-Benutzer ins LDAP ein."
-#: ../pykolab/setup/setup_ldap.py:417
+#: ../pykolab/setup/setup_ldap.py:555
msgid "Writing out cn=kolab,cn=config"
msgstr "Schreibe cn=kolab,cn=config"
#. TODO: Add kolab-admin role
#. TODO: Assign kolab-admin admin ACLs
-#: ../pykolab/setup/setup_ldap.py:441
+#: ../pykolab/setup/setup_ldap.py:579
#, python-format
msgid "Adding domain %s to list of domains for this deployment"
msgstr "Füge Domain %s zu dieser Installation hinzu"
-#: ../pykolab/setup/setup_ldap.py:457
+#: ../pykolab/setup/setup_ldap.py:607
msgid "Disabling anonymous binds"
msgstr "Stelle anonymes Binden ab"
#. TODO: Ensure the uid attribute is unique
#. TODO^2: Consider renaming the general "attribute uniqueness to "uid
#. attribute uniqueness"
-#: ../pykolab/setup/setup_ldap.py:465
+#: ../pykolab/setup/setup_ldap.py:615
msgid "Enabling attribute uniqueness plugin"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:471
+#: ../pykolab/setup/setup_ldap.py:621
msgid "Enabling referential integrity plugin"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:477
+#: ../pykolab/setup/setup_ldap.py:627
msgid "Enabling and configuring account policy plugin"
msgstr ""
#. TODO: Add kolab-admin role
-#: ../pykolab/setup/setup_ldap.py:492
+#: ../pykolab/setup/setup_ldap.py:642
msgid "Adding the kolab-admin role"
msgstr "Füge Kolab-Admin Rolle hinzu"
#. TODO: User writeable attributes on root_dn
-#: ../pykolab/setup/setup_ldap.py:503
+#: ../pykolab/setup/setup_ldap.py:653
#, python-format
msgid "Setting access control to %s"
msgstr ""
-#: ../pykolab/setup/setup_mta.py:40
+#: ../pykolab/setup/setup_ldap.py:679
+msgid "Could not start and configure to start on boot, the "
+msgstr ""
+
+#: ../pykolab/setup/setup_mta.py:41
msgid "Setup MTA."
msgstr "Richte MTA ein."
-#: ../pykolab/setup/setup_mta.py:224 ../pykolab/setup/setup_php.py:80
+#: ../pykolab/setup/setup_mta.py:317 ../pykolab/setup/setup_php.py:106
#, python-format
msgid "Setting key %r to %r"
msgstr ""
-#: ../pykolab/setup/setup_mta.py:252
+#: ../pykolab/setup/setup_mta.py:350
msgid "Could not write out Postfix configuration file /etc/postfix/master.cf"
msgstr ""
-#: ../pykolab/setup/setup_mta.py:287
-msgid ""
-"Could not write out Amavis configuration file /etc/amavisd/amavisd.conf"
+#: ../pykolab/setup/setup_mta.py:397
+msgid "Could not write out Amavis configuration file amavisd.conf"
+msgstr ""
+
+#: ../pykolab/setup/setup_mta.py:405
+msgid "Not writing out any configuration for Amavis."
+msgstr ""
+
+#: ../pykolab/setup/setup_mta.py:437
+msgid "Could not start the postfix, clamav and amavisd services services."
msgstr ""
#: ../pykolab/setup/setup_mysql.py:39
msgid "Setup MySQL."
msgstr "Richte MySQL ein."
-#: ../pykolab/setup/setup_mysql.py:53
+#: ../pykolab/setup/setup_mysql.py:49
+msgid "Could not start the MySQL database service."
+msgstr ""
+
+#: ../pykolab/setup/setup_mysql.py:71
+msgid "What MySQL server are we setting up?"
+msgstr ""
+
+#: ../pykolab/setup/setup_mysql.py:75
msgid ""
"\n"
-" Please supply a root password for MySQL. This password will\n"
-" be the administrative user for this MySQL server, and it\n"
-" should be kept a secret. After this setup process has\n"
-" completed, Kolab is going to discard and forget about this\n"
-" password, but you will need it for administrative tasks in\n"
-" MySQL.\n"
-" "
+" Please supply the root password for MySQL, so we can set\n"
+" up user accounts for other components that use MySQL.\n"
+" "
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:64
+#: ../pykolab/setup/setup_mysql.py:82 ../pykolab/setup/setup_mysql.py:99
+#: ../pykolab/setup/setup_roundcube.py:183
+#: ../pykolab/setup/setup_syncroton.py:63
msgid "MySQL root password"
+msgstr "MySQL root Password"
+
+#: ../pykolab/setup/setup_mysql.py:88
+msgid ""
+"\n"
+" Please supply a root password for MySQL. This password\n"
+" will be the administrative user for this MySQL server,\n"
+" and it should be kept a secret. After this setup process\n"
+" has completed, Kolab is going to discard and forget\n"
+" about this password, but you will need it for\n"
+" administrative tasks in MySQL.\n"
+" "
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:103
+#: ../pykolab/setup/setup_mysql.py:139
msgid ""
"\n"
" Please supply a password for the MySQL user 'kolab'.\n"
@@ -1822,8 +2453,12 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:111
+#: ../pykolab/setup/setup_mysql.py:147
msgid "MySQL kolab password"
+msgstr "MySQL-kolab Password"
+
+#: ../pykolab/setup/setup_mysql.py:165
+msgid "Could not find the MySQL Kolab schema file"
msgstr ""
#: ../pykolab/setup/setup_php.py:42
@@ -1832,23 +2467,38 @@ msgstr "PHP Optionen"
#: ../pykolab/setup/setup_php.py:49
msgid "Specify the timezone for PHP."
+msgstr "Zeitzone für PHP definieren."
+
+#: ../pykolab/setup/setup_php.py:57
+msgid "Specify the path to the php.ini file used with the webserver."
msgstr ""
-#: ../pykolab/setup/setup_php.py:53
+#: ../pykolab/setup/setup_php.py:61
msgid "Setup PHP."
msgstr "Richte PHP ein."
-#: ../pykolab/setup/setup_php.py:58
+#: ../pykolab/setup/setup_php.py:66
msgid ""
"\n"
" Please supply the timezone PHP should be using.\n"
+" You have to use a Continent or Country / City locality name\n"
+" like 'Europe/Berlin', but not just 'CEST'.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_php.py:64
+#: ../pykolab/setup/setup_php.py:74
msgid "Timezone ID"
msgstr "Zeitzonen ID"
+#: ../pykolab/setup/setup_php.py:80
+#, python-format
+msgid "Cannot configure PHP through %r (No such file or directory)"
+msgstr ""
+
+#: ../pykolab/setup/setup_php.py:91
+msgid "Could not find PHP configuration file php.ini"
+msgstr ""
+
#: ../pykolab/setup/setup_roundcube.py:44
msgid "Setup Roundcube."
msgstr "Stelle Roundcube ein."
@@ -1862,18 +2512,29 @@ msgid ""
" "
msgstr ""
-#: ../pykolab/setup/setup_syncroton.py:40
-msgid "Setup Syncroton."
-msgstr "Richte Syncroton ein."
+#: ../pykolab/setup/setup_roundcube.py:56
+msgid "MySQL roundcube password"
+msgstr "MySQL roundcube Passwort"
-#: ../pykolab/setup/setup_zpush.py:41
-msgid "Setup zpush."
-msgstr "zpush einrichten."
+#: ../pykolab/setup/setup_roundcube.py:120
+#, python-format
+msgid "Using template file %r"
+msgstr ""
-#: ../pykolab/setup/setup_zpush.py:45
-msgid "Z-Push is not installed on this system"
+#: ../pykolab/setup/setup_roundcube.py:127
+#, python-format
+msgid "Successfully compiled template %r, writing out to %r"
msgstr ""
+#: ../pykolab/setup/setup_roundcube.py:228
+#: ../pykolab/setup/setup_syncroton.py:93
+msgid "Could not start the webserver server service."
+msgstr ""
+
+#: ../pykolab/setup/setup_syncroton.py:40
+msgid "Setup Syncroton."
+msgstr "Richte Syncroton ein."
+
#. start_max = (int)(time.time())
#: ../pykolab/telemetry.py:588
#, python-format
@@ -1899,111 +2560,181 @@ msgstr ""
msgid "No database available"
msgstr "Keine Datenbank verfügbar"
-#: ../pykolab/utils.py:57 ../pykolab/utils.py:59
+#: ../pykolab/utils.py:62 ../pykolab/utils.py:64
#, python-format
msgid "Confirm %s: "
-msgstr ""
+msgstr "Bestätige %s:"
-#: ../pykolab/utils.py:62
+#: ../pykolab/utils.py:67
msgid "Incorrect confirmation. "
-msgstr ""
+msgstr "Ungültige Bestätigung."
-#: ../pykolab/utils.py:67 ../pykolab/utils.py:72
+#: ../pykolab/utils.py:72 ../pykolab/utils.py:77
#, python-format
msgid "%s: "
msgstr "%s:"
-#: ../pykolab/utils.py:69 ../pykolab/utils.py:74
+#: ../pykolab/utils.py:74 ../pykolab/utils.py:79
#, python-format
msgid "%s [%s]: "
msgstr "%s [%s]: "
-#: ../pykolab/utils.py:119
+#: ../pykolab/utils.py:124
msgid "Please answer 'yes' or 'no'."
msgstr "Bitte antworten Sie mit 'yes' (ja) oder 'no' (nein)."
-#: ../pykolab/utils.py:185
+#: ../pykolab/utils.py:164
+msgid "Choice"
+msgstr ""
+
+#: ../pykolab/utils.py:167
+msgid "Choice (type '?' for options)"
+msgstr ""
+
+#: ../pykolab/utils.py:268
#, python-format
msgid "Could not change the permissions on %s"
msgstr ""
-#: ../pykolab/wap_client/__init__.py:257
+#: ../pykolab/utils.py:479
+#, python-format
+msgid "Transliterating string %r with locale %r"
+msgstr ""
+
+#: ../pykolab/utils.py:487
+msgid "Attempting to set locale"
+msgstr ""
+
+#: ../pykolab/utils.py:489
+msgid "Success setting locale"
+msgstr ""
+
+#: ../pykolab/utils.py:491
+msgid "Failure to set locale"
+msgstr ""
+
+#: ../pykolab/utils.py:499
+#, python-format
+msgid "Executing '%s | %s'"
+msgstr ""
+
+#: ../pykolab/utils.py:510
+#, python-format
+msgid "Could not translate %s using locale %s"
+msgstr ""
+
+#: ../pykolab/wap_client/__init__.py:320
#, python-format
msgid "Requesting %r with params %r"
msgstr ""
-#: ../pykolab/wap_client/__init__.py:263
+#: ../pykolab/wap_client/__init__.py:328
#, python-format
msgid "Got response: %r"
msgstr ""
#. Some data is not JSON
-#: ../pykolab/wap_client/__init__.py:268
+#: ../pykolab/wap_client/__init__.py:334
msgid "Response data is not JSON"
msgstr ""
-#: ../pykolab/xml/attendee.py:79 ../pykolab/xml/attendee.py:99
+#. support integer values, too
+#: ../pykolab/xml/attendee.py:9 ../pykolab/xml/attendee.py:17
+msgid "Needs Action"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:10 ../pykolab/xml/attendee.py:18
+msgid "Accepted"
+msgstr "Akzeptiert"
+
+#: ../pykolab/xml/attendee.py:11 ../pykolab/xml/attendee.py:19
+msgid "Declined"
+msgstr "Abgelehnt"
+
+#: ../pykolab/xml/attendee.py:12 ../pykolab/xml/attendee.py:20
+msgid "Tentatively Accepted"
+msgstr "Provisorisch Akzeptiert"
+
+#: ../pykolab/xml/attendee.py:13 ../pykolab/xml/attendee.py:21
+msgid "Delegated"
+msgstr "Delegiert"
+
+#: ../pykolab/xml/attendee.py:14
+msgid "Completed"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:15
+msgid "In Process"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:108 ../pykolab/xml/attendee.py:130
msgid "Not a valid attendee"
msgstr ""
-#: ../pykolab/xml/attendee.py:84
+#: ../pykolab/xml/attendee.py:115
msgid "No valid delegator references found"
msgstr ""
-#: ../pykolab/xml/attendee.py:104
+#: ../pykolab/xml/attendee.py:135
msgid "No valid delegatee references found"
msgstr ""
-#: ../pykolab/xml/attendee.py:140
+#: ../pykolab/xml/attendee.py:180
#, python-format
msgid "Invalid cutype %r"
msgstr ""
-#: ../pykolab/xml/attendee.py:151
+#: ../pykolab/xml/attendee.py:192
#, python-format
msgid "Invalid participant status %r"
msgstr ""
-#: ../pykolab/xml/attendee.py:159
+#: ../pykolab/xml/attendee.py:200
#, python-format
msgid "Invalid role %r"
msgstr ""
-#: ../pykolab/xml/event.py:172
+#: ../pykolab/xml/event.py:100 ../pykolab/xml/event.py:708
+#: ../pykolab/xml/event.py:751
+msgid "Event start needs datetime.date or datetime.datetime instance"
+msgstr ""
+
+#: ../pykolab/xml/event.py:241
#, python-format
msgid "No attendee with email or name %r"
msgstr ""
-#: ../pykolab/xml/event.py:180
+#: ../pykolab/xml/event.py:249
#, python-format
msgid "Invalid argument value attendee %r, must be basestring or Attendee"
msgstr ""
-#: ../pykolab/xml/event.py:186
+#: ../pykolab/xml/event.py:255
#, python-format
msgid "No attendee with email %r"
msgstr ""
-#: ../pykolab/xml/event.py:192
+#: ../pykolab/xml/event.py:261
#, python-format
msgid "No attendee with name %r"
msgstr ""
-#: ../pykolab/xml/event.py:338
+#: ../pykolab/xml/event.py:426
msgid "Invalid participant status"
msgstr ""
-#: ../pykolab/xml/event.py:538
-msgid "Event end needs datetime.date or datetime.datetime instance"
+#: ../pykolab/xml/event.py:542
+#, python-format
+msgid "Invalid status %r"
msgstr ""
-#: ../pykolab/xml/event.py:654
+#: ../pykolab/xml/event.py:550
#, python-format
-msgid "Invalid status %r"
+msgid "Invalid classification %r"
msgstr ""
-#: ../pykolab/xml/event.py:675 ../pykolab/xml/event.py:725
-msgid "Event start needs datetime.date or datetime.datetime instance"
+#: ../pykolab/xml/event.py:577
+msgid "Event end needs datetime.date or datetime.datetime instance"
msgstr ""
#: ../pykolab/xml/event.py:761
@@ -2011,62 +2742,434 @@ msgstr ""
msgid "Invalid status set: %r"
msgstr ""
-#: ../pykolab/xml/event.py:879
+#: ../pykolab/xml/event.py:923
msgid "No sender specified"
msgstr ""
-#: ../saslauthd/__init__.py:126 ../saslauthd/__init__.py:134
-#: ../wallace/__init__.py:362 ../wallace/__init__.py:371
+#: ../pykolab/xml/event.py:932
+#, python-format
+msgid "Invitation for %s was %s"
+msgstr ""
+
+#: ../pykolab/xml/event.py:937
+msgid "This is an automated response to one of your event requests."
+msgstr ""
+
+#: ../saslauthd/__init__.py:99
+#, python-format
+msgid "Could not create %r: %r"
+msgstr ""
+
+#: ../saslauthd/__init__.py:137 ../saslauthd/__init__.py:145
+#: ../wallace/__init__.py:403 ../wallace/__init__.py:412
msgid ""
"Traceback occurred, please report a bug at http://bugzilla.kolabsys.com"
msgstr "Ein Fehler mit Traceback trat auf, bitte legen Sie einen Bericht auf http://bugzilla.kolabsys.com an"
-#: ../wallace/__init__.py:61
+#: ../saslauthd/__init__.py:185
+msgid "kolab-saslauthd could not accept "
+msgstr ""
+
+#: ../saslauthd/__init__.py:190
+msgid "Maximum tries exceeded, exiting"
+msgstr ""
+
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:190
+#: ../wallace/module_resources.py:879
+#, python-format
+msgid "Reservation Request for %(summary)s was %(status)s"
+msgstr ""
+
+#. check notification message sent to resource owner (jane)
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:605
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:621
+#: ../wallace/module_resources.py:954
+#, python-format
+msgid "Booking for %s has been %s"
+msgstr "Buchung für %s wurde %s"
+
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:146
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:720
+#: ../wallace/module_invitationpolicy.py:374
+#, python-format
+msgid "\"%(summary)s\" has been %(status)s"
+msgstr "\"%(summary)s\" wurde %(status)s"
+
+#. check for notification message
+#. this notification should be suppressed until mark has replied, too
+#. this triggers an additional notification
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:616
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:622
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:635
+#: ../wallace/module_invitationpolicy.py:925
+#, python-format
+msgid "\"%s\" has been updated"
+msgstr "\"%s\" wurde aktualisiert"
+
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:627
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:639
+msgid "PENDING"
+msgstr ""
+
+#: ../wallace/__init__.py:57
+#, python-format
+msgid "Wallace modules: %r"
+msgstr ""
+
+#: ../wallace/__init__.py:69
+#, python-format
+msgid "Module %s.execute() failed on message %r with error: %s"
+msgstr ""
+
+#: ../wallace/__init__.py:78
#, python-format
msgid "Worker process %s initializing"
msgstr ""
-#: ../wallace/__init__.py:80
+#: ../wallace/__init__.py:100
msgid "Bind address for Wallace."
-msgstr ""
+msgstr "Bind-Adresse für Wallace."
-#: ../wallace/__init__.py:106
+#: ../wallace/__init__.py:126
msgid "Port that Wallace is supposed to use."
msgstr "Port, den Wallace benutzen soll."
-#: ../wallace/__init__.py:157
+#: ../wallace/__init__.py:177
#, python-format
msgid "Could not bind to socket on port %d on bind "
msgstr ""
-#: ../wallace/__init__.py:169
+#: ../wallace/__init__.py:189
msgid "Could not shut down socket"
-msgstr ""
+msgstr "Konnte Socket nicht schlieÃen"
-#: ../wallace/__init__.py:226
+#: ../wallace/__init__.py:253
msgid "Accepted connection"
msgstr "Verbindung akzeptiert"
-#: ../wallace/__init__.py:387
+#: ../wallace/__init__.py:428
#, python-format
msgid "Could not write pid file %s"
msgstr ""
-#: ../wallace/module_optout.py:61 ../wallace/module_resources.py:94
+#: ../wallace/module_footer.py:60 ../wallace/module_gpgencrypt.py:60
+#: ../wallace/module_invitationpolicy.py:168 ../wallace/module_optout.py:61
+#: ../wallace/module_resources.py:120
#, python-format
msgid "Issuing callback after processing to stage %s"
msgstr ""
-#: ../wallace/module_optout.py:62 ../wallace/module_resources.py:100
+#: ../wallace/module_footer.py:61 ../wallace/module_gpgencrypt.py:61
+#: ../wallace/module_invitationpolicy.py:170 ../wallace/module_optout.py:62
+#: ../wallace/module_resources.py:126
#, python-format
msgid "Testing cb_action_%s()"
msgstr ""
-#: ../wallace/module_optout.py:64 ../wallace/module_resources.py:103
+#: ../wallace/module_footer.py:63 ../wallace/module_gpgencrypt.py:63
+#: ../wallace/module_invitationpolicy.py:172 ../wallace/module_optout.py:64
+#: ../wallace/module_resources.py:129
#, python-format
msgid "Attempting to execute cb_action_%s()"
msgstr ""
+#: ../wallace/module_footer.py:67
+#, python-format
+msgid "Executing module footer for %r, %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:66
+#, python-format
+msgid "Executing module gpgencrypt for %r, %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:98
+msgid "Message is already encrypted (app/pgp-enc content-type)"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:102
+msgid "Message already encrypted by main content-type header"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:131
+msgid ""
+"Configured to encrypt to a key not configured, and strict policy enabled. "
+"Bailing out."
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:134
+msgid ""
+"Configured to encrypt to a key not configured, but continuing anyway (see "
+"'gpgencrypt_strict')."
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:171
+#, python-format
+msgid "Recipients: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:183
+#, python-format
+msgid "Current keys: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:188
+#, python-format
+msgid "Retrieving key for recipient: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:192 ../wallace/module_gpgencrypt.py:208
+#, python-format
+msgid "Found matching address %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:200
+#, python-format
+msgid "Found matching address %r in remote keys"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:232
+#, python-format
+msgid "An error occurred: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:154
+#, python-format
+msgid "Invitation policy called for %r, %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:211
+#: ../wallace/module_resources.py:169
+#, python-format
+msgid "Failed to parse iTip events from message: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:215
+msgid ""
+"Message is not an iTip message or does not contain any (valid) iTip events."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:219
+#, python-format
+msgid ""
+"iTip events attached to this message contain the following information: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:232
+#, python-format
+msgid "No itips, no users, pass along %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:235
+#, python-format
+msgid "iTips, but no users, pass along %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:255
+#, python-format
+msgid "No user attendee matching envelope recipient %s, skip message"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:259
+#, python-format
+msgid "Receiving user: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:284
+#, python-format
+msgid "Apply invitation policy %r for domain %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:295
+#, python-format
+msgid "Ignoring '%s' iTip method"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:299
+#, python-format
+msgid "iTip message %r consumed by the invitationpolicy module"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:315
+msgid "Pass invitation for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:320
+#, python-format
+msgid "Receiving Attendee: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:339
+#, python-format
+msgid "Existing event: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:350
+#, python-format
+msgid "Precondition for event %r fulfilled: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:386
+#, python-format
+msgid "No RSVP for recipient %r requested"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:412
+msgid "Pass reply for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:419
+#, python-format
+msgid "Sender Attendee: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:431
+#, python-format
+msgid ""
+"The iTip reply sequence (%r) doesn't match the referred event version (%r). "
+"Forwarding to Inbox."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:437
+#, python-format
+msgid "Auto-updating event %r on iTip REPLY"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:459
+#: ../wallace/module_invitationpolicy.py:488
+msgid ""
+"The event referred by this reply was not found in the user's calendars. "
+"Forwarding to Inbox."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:472
+msgid "Pass cancellation for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:517
+#, python-format
+msgid "Checking if email address %r belongs to a local user"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:522
+#, python-format
+msgid "User DN: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:524
+#, python-format
+msgid "No user record(s) found for %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:577
+#, python-format
+msgid "User record doesn't have the mailbox attribute %r set"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:590
+#, python-format
+msgid "IMAP proxy authentication failed: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:612
+#, python-format
+msgid "List calendar folders for user %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:628
+#, python-format
+msgid "IMAP metadata for %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:658
+#, python-format
+msgid "Searching folder %r for event %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:670
+#: ../wallace/module_invitationpolicy.py:709
+#: ../wallace/module_resources.py:486
+#, python-format
+msgid "Failed to parse event from message %s/%s: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:696
+#, python-format
+msgid "Listing events from folder %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:715
+#, python-format
+msgid "Existing event %r conflicts with invitation %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:722
+#: ../wallace/module_resources.py:344
+#, python-format
+msgid "start: %r, end: %r, total: %r, messages: %d"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:748
+#, python-format
+msgid "%r is locked, waiting..."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:811
+#, python-format
+msgid "Failed to save event: no calendar folder found for user %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:814
+#, python-format
+msgid "Save event %r to user calendar %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:827
+#, python-format
+msgid "Failed to save event to user calendar at %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:843
+#, python-format
+msgid "Delete event %r in %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:863
+#, python-format
+msgid "Compose participation status summary for event %r to user %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:901
+#, python-format
+msgid ""
+"Waiting for more automated replies (got %d of %d); skipping notification"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:998
+#, python-format
+msgid "Updated %s's copy of %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1001
+#, python-format
+msgid "Attendee %s's copy of %r not found"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1004
+#, python-format
+msgid "Attendee %r not found in LDAP"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1008
+#, python-format
+msgid ""
+"\n"
+" %(name)s has %(status)s your invitation for %(summary)s.\n"
+"\n"
+" *** This is an automated response sent by the Kolab Invitation system ***\n"
+" "
+msgstr ""
+
#. modules.next_module('optout')
#: ../wallace/module_optout.py:70
#, python-format
@@ -2088,210 +3191,295 @@ msgstr ""
msgid "Could not send request to optout_url %s"
msgstr ""
-#: ../wallace/module_resources.py:81
+#: ../wallace/module_resources.py:110
#, python-format
msgid "Resource Management called for %r, %r"
msgstr ""
-#: ../wallace/module_resources.py:139
+#: ../wallace/module_resources.py:174
msgid "Message is not an iTip message or does not contain any "
msgstr ""
-#: ../wallace/module_resources.py:147
+#: ../wallace/module_resources.py:182
msgid "iTip events attached to this message contain the "
msgstr ""
-#: ../wallace/module_resources.py:174
+#: ../wallace/module_resources.py:205
msgid "Not an iTip message, but sent to resource nonetheless. Reject message"
msgstr ""
-#: ../wallace/module_resources.py:182
-msgid "No itips, no resources, pass along"
+#: ../wallace/module_resources.py:213
+#, python-format
+msgid "No itips, no resources, pass along %r"
msgstr ""
-#: ../wallace/module_resources.py:186
-msgid "iTips, but no resources, pass along"
+#: ../wallace/module_resources.py:216
+#, python-format
+msgid "iTips, but no resources, pass along %r"
msgstr ""
-#: ../wallace/module_resources.py:218
+#: ../wallace/module_resources.py:225
#, python-format
-msgid "Resources: %r"
+msgid "No resource attendees matching envelope recipient %s, Reject message"
msgstr ""
-#: ../wallace/module_resources.py:236
+#: ../wallace/module_resources.py:234
#, python-format
-msgid "Checking events in resource folder %r"
+msgid "Resources: %r; %r"
msgstr ""
-#: ../wallace/module_resources.py:243
+#: ../wallace/module_resources.py:244
#, python-format
-msgid "Mailbox for resource %r doesn't exist"
+msgid "Receiving Resource: %r; %r"
msgstr ""
-#: ../wallace/module_resources.py:256
+#: ../wallace/module_resources.py:252
#, python-format
-msgid "Fetching message UID %r from folder %r"
+msgid "Recipient %r is non-participant, ignoring message"
msgstr ""
-#: ../wallace/module_resources.py:295
+#: ../wallace/module_resources.py:279
#, python-format
-msgid "Event %r conflicts with event "
+msgid "Accept invitation for individual resource %r / %r"
msgstr ""
#: ../wallace/module_resources.py:308
#, python-format
-msgid "start: %r, end: %r, total: %r, messages: %r"
+msgid "Delegate invitation for resource collection %r to %r"
msgstr ""
-#: ../wallace/module_resources.py:315
+#: ../wallace/module_resources.py:340
+#, python-format
+msgid "Failed to read resource calendar for %r: %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:350
#, python-format
msgid "Polling for resource %r"
msgstr ""
-#: ../wallace/module_resources.py:319
+#: ../wallace/module_resources.py:353
#, python-format
msgid "Resource %r has been popped from the list"
msgstr ""
-#: ../wallace/module_resources.py:326
+#: ../wallace/module_resources.py:357
msgid "Resource is a collection"
msgstr ""
-#: ../wallace/module_resources.py:374 ../wallace/module_resources.py:424
+#: ../wallace/module_resources.py:368
#, python-format
-msgid "Adding event to %r"
+msgid "Removed conflicting resources from %r: (%r) => %r"
msgstr ""
-#: ../wallace/module_resources.py:473
+#: ../wallace/module_resources.py:380
#, python-format
-msgid "Method %r not really interesting for us."
+msgid "Conflicting events: %r for resource %r"
msgstr ""
-#: ../wallace/module_resources.py:481
+#: ../wallace/module_resources.py:397
#, python-format
-msgid "Raw iTip payload: %s"
+msgid "Delegate to another resource collection member: %r to %r"
msgstr ""
-#: ../wallace/module_resources.py:491
-msgid "Could not read iTip from message."
+#: ../wallace/module_resources.py:459
+#, python-format
+msgid "Checking events in resource folder %r"
msgstr ""
-#: ../wallace/module_resources.py:513
-msgid "iTip event without a start"
+#: ../wallace/module_resources.py:475
+#, python-format
+msgid "Fetching message UID %r from folder %r"
msgstr ""
-#. end if c.name == "VEVENT"
-#. end for c in cal.walk()
-#. end if part.get_content_type() == "text/calendar"
-#. end for part in message.walk()
-#. if message.is_multipart()
-#: ../wallace/module_resources.py:543
-msgid "Message is not an iTip message (non-multipart message)"
+#: ../wallace/module_resources.py:498
+#, python-format
+msgid "Event %r conflicts with event %r"
msgstr ""
-#: ../wallace/module_resources.py:564
+#: ../wallace/module_resources.py:525
#, python-format
-msgid "Checking if email address %r belongs to a resource (collection)"
+msgid "Adding event to %r: %r"
msgstr ""
-#: ../wallace/module_resources.py:575 ../wallace/module_resources.py:649
-#: ../wallace/module_resources.py:699
+#: ../wallace/module_resources.py:573
#, python-format
-msgid "No resource (collection) records found for %r"
+msgid "Failed to save event to resource calendar at %r: %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:590
+#, python-format
+msgid "Delete resource calendar object %r in %r: %r"
msgstr ""
-#: ../wallace/module_resources.py:583 ../wallace/module_resources.py:657
-#: ../wallace/module_resources.py:707
+#: ../wallace/module_resources.py:633
+#, python-format
+msgid "Checking if email address %r belongs to a resource (collection)"
+msgstr ""
+
+#: ../wallace/module_resources.py:641 ../wallace/module_resources.py:709
+#: ../wallace/module_resources.py:743
#, python-format
msgid "Resource record(s): %r"
msgstr ""
-#: ../wallace/module_resources.py:589 ../wallace/module_resources.py:664
-#: ../wallace/module_resources.py:714
+#: ../wallace/module_resources.py:643 ../wallace/module_resources.py:711
+#: ../wallace/module_resources.py:746
+#, python-format
+msgid "No resource (collection) records found for %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:647 ../wallace/module_resources.py:715
+#: ../wallace/module_resources.py:750
#, python-format
msgid "Resource record: %r"
msgstr ""
-#: ../wallace/module_resources.py:608
+#: ../wallace/module_resources.py:667
#, python-format
msgid "Raw itip_events: %r"
msgstr ""
-#: ../wallace/module_resources.py:616
+#: ../wallace/module_resources.py:675
#, python-format
msgid "Raw set of attendees: %r"
msgstr ""
-#: ../wallace/module_resources.py:624
+#: ../wallace/module_resources.py:683
#, python-format
msgid "Raw set of resources: %r"
msgstr ""
-#: ../wallace/module_resources.py:638
+#: ../wallace/module_resources.py:702
#, python-format
msgid "Checking if attendee %r is a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:671 ../wallace/module_resources.py:717
+#: ../wallace/module_resources.py:718 ../wallace/module_resources.py:752
msgid "Resource reservation made but no resource records found"
msgstr ""
-#: ../wallace/module_resources.py:689
+#: ../wallace/module_resources.py:737
#, python-format
msgid "Checking if resource %r is a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:721
+#: ../wallace/module_resources.py:755
msgid "The following resources are being referred to in the "
msgstr ""
+#: ../wallace/module_resources.py:894
+#, python-format
+msgid ""
+"\n"
+" *** This is an automated response, please do not reply! ***\n"
+"\n"
+" Your reservation was delegated to \"%s\" which is available for the requested time.\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:905
+#, python-format
+msgid ""
+"\n"
+" *** This is an automated response, please do not reply! ***\n"
+" \n"
+" We hereby inform you that your reservation was %s.\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:912
+#, python-format
+msgid ""
+"\n"
+" If you have questions about this reservation, please contact\n"
+" %s <%s> %s\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:941
+#, python-format
+msgid "Sending booking notification for event %r to %r from %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:954
+msgid "failed"
+msgstr ""
+
+#: ../wallace/module_resources.py:973
+#, python-format
+msgid ""
+"\n"
+" The resource booking for %(resource)s by %(orgname)s <%(orgemail)s> has been %(status)s for %(date)s.\n"
+"\n"
+" *** This is an automated message, sent to you as the resource owner. ***\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:979
+#, python-format
+msgid ""
+"\n"
+" A reservation request for %(resource)s could not be processed automatically.\n"
+" Please contact %(orgname)s <%(orgemail)s> who requested this resource for %(date)s. Subject: %(summary)s.\n"
+"\n"
+" *** This is an automated message, sent to you as the resource owner. ***\n"
+" "
+msgstr ""
+
#. This is a nested module
-#: ../wallace/modules.py:96
+#: ../wallace/modules.py:97
#, python-format
msgid "Module Group: %s"
+msgstr "Modulgruppe: %s"
+
+#: ../wallace/modules.py:108
+#, python-format
+msgid "No such module %r in modules %r (1)."
msgstr ""
-#: ../wallace/modules.py:107 ../wallace/modules.py:112
-msgid "No such module."
+#: ../wallace/modules.py:113
+#, python-format
+msgid "No such module %r in modules %r (2)."
msgstr ""
-#: ../wallace/modules.py:118
+#: ../wallace/modules.py:119
#, python-format
msgid "Holding message in queue for manual review (%s by %s)"
-msgstr ""
+msgstr "Behalte Nachricht zur manuellen Prüfung in der Warteliste (%s von %s)"
-#: ../wallace/modules.py:121
+#: ../wallace/modules.py:122
#, python-format
msgid "Deferring message in %s (by module %s)"
msgstr ""
-#: ../wallace/modules.py:131
+#: ../wallace/modules.py:134
#, python-format
msgid "The time when the message was sent: %r"
-msgstr ""
+msgstr "Zeitpunkt des Versandts: %r"
-#: ../wallace/modules.py:132
+#: ../wallace/modules.py:135
#, python-format
msgid "The time now: %r"
msgstr "Die Zeit ist jetzt: %r"
-#: ../wallace/modules.py:133
+#: ../wallace/modules.py:136
#, python-format
msgid "The time delta: %r"
-msgstr ""
+msgstr "Die Zeitdifferenz: %r"
#. TODO: Send NDR back to user
-#: ../wallace/modules.py:137
+#: ../wallace/modules.py:140
#, python-format
msgid "Message in file %s older then 5 days, deleting"
msgstr ""
-#: ../wallace/modules.py:162
+#: ../wallace/modules.py:165
#, python-format
msgid "Rejecting message in %s (by module %s)"
msgstr ""
-#: ../wallace/modules.py:180
+#: ../wallace/modules.py:186
#, python-format
msgid ""
"This is the email system Wallace at %s.\n"
@@ -2304,21 +3492,31 @@ msgid ""
"Your message is being delivered to any other recipients you may have\n"
"sent your message to. There is no need to resend the message to those\n"
"recipients.\n"
-msgstr ""
+msgstr "Ich bin das E-Mail-System Wallace auf %s.\n\nMit Bedauern muà ich Sie informieren, daà die angehängte Nachricht\nnicht an die folgenden Empfänger zugestellt werden konnte:\n\n- %s\n\nFalls Sie noch andere Empfänger angegeben haben wurde die Nachricht\nan diese zugestellt. An diese Empfänger müssen sie die Nachricht\nnicht erneut senden.\n"
-#: ../wallace/modules.py:195
+#: ../wallace/modules.py:201
#, python-format
msgid ""
"X-Wallace-Module: %s\n"
"X-Wallace-Result: REJECT\n"
msgstr ""
-#: ../wallace/modules.py:248
+#: ../wallace/modules.py:260
#, python-format
msgid "Accepting message in %s (by module %s)"
msgstr ""
-#: ../wallace/modules.py:316
+#: ../wallace/modules.py:262
#, python-format
-msgid "Module '%s' already registered"
+msgid "Accepting message in: %r"
msgstr ""
+
+#: ../wallace/modules.py:269
+#, python-format
+msgid "recipients: %r"
+msgstr ""
+
+#: ../wallace/modules.py:347
+#, python-format
+msgid "Module '%s' already registered"
+msgstr "Modul '%s' ist bereits registriert"
diff --git a/po/de_DE.po b/po/de_DE.po
index e849ee9..b8bcc6f 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
@@ -1,678 +1,913 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
-#
+#
# Translators:
-# <grote at kolabsys.com>, 2012.
+# Christoph Wickert <christoph.wickert at gmail.com>, 2012
+# Grote <grote at kolabsys.com>, 2012
+# Thomas Brüderli <roundcube at gmail.com>, 2014
msgid ""
msgstr ""
"Project-Id-Version: Kolab Groupware Solution\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-01-12 11:17+0000\n"
-"PO-Revision-Date: 2012-08-14 11:13+0000\n"
-"Last-Translator: Jeroen van Meeuwen <vanmeeuwen at kolabsys.com>\n"
-"Language-Team: German (Germany) (http://www.transifex.com/projects/p/kolab/"
-"language/de_DE/)\n"
-"Language: de_DE\n"
+"POT-Creation-Date: 2014-07-10 07:21-0400\n"
+"PO-Revision-Date: 2014-07-22 13:04+0000\n"
+"Last-Translator: Thomas Brüderli <roundcube at gmail.com>\n"
+"Language-Team: German (Germany) (http://www.transifex.com/projects/p/kolab/language/de_DE/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"Language: de_DE\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: ../bin/kolab_smtp_access_policy.py:206
+#: ../bin/kolab_smtp_access_policy.py:209
#, python-format
msgid "Adding policy request to instance %s"
msgstr "Füge Richtlinien-Anfrage zu Instanz %s hinzu"
-#: ../bin/kolab_smtp_access_policy.py:446
+#: ../bin/kolab_smtp_access_policy.py:479
msgid "Unauthorized access not allowed"
msgstr "Unberechtigter Zugriff nicht erlaubt"
-#: ../bin/kolab_smtp_access_policy.py:475
-#: ../bin/kolab_smtp_access_policy.py:657
+#: ../bin/kolab_smtp_access_policy.py:508
+#: ../bin/kolab_smtp_access_policy.py:689
msgid "Could not find recipient"
msgstr "Konnte den Empfänger nicht finden"
-#: ../bin/kolab_smtp_access_policy.py:494
-#: ../bin/kolab_smtp_access_policy.py:594
+#: ../bin/kolab_smtp_access_policy.py:527
#, python-format
-msgid "Could not find envelope sender user %s"
-msgstr "Konnte den Absender-Umschlag für den Benutzer %s nicht finden"
+msgid "Could not find envelope sender user %s (511)"
+msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:537
+#: ../bin/kolab_smtp_access_policy.py:570
#, python-format
msgid "Obtained authenticated user details for %r: %r"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:616
+#: ../bin/kolab_smtp_access_policy.py:627
+#, python-format
+msgid "Could not find envelope sender user %s"
+msgstr "Konnte den Absender-Umschlag für den Benutzer %s nicht finden"
+
+#: ../bin/kolab_smtp_access_policy.py:649
#, python-format
msgid "%s is unauthorized to send on behalf of %s"
msgstr "Benutzer %s ist nicht berechtigt als Benutzer %s zu senden"
-#: ../bin/kolab_smtp_access_policy.py:626
+#: ../bin/kolab_smtp_access_policy.py:659
#, python-format
-msgid "User %s attempted to use envelope sender address %s "
+msgid ""
+"User %s attempted to use envelope sender address %s without authorization"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:681
-#: ../bin/kolab_smtp_access_policy.py:692
+#: ../bin/kolab_smtp_access_policy.py:713
+#: ../bin/kolab_smtp_access_policy.py:724
#, python-format
msgid "Found user %s to be a delegate user of %s"
msgstr "Benutzer %s ist ein delegierter Benutzer von %s"
-#: ../bin/kolab_smtp_access_policy.py:716
+#: ../bin/kolab_smtp_access_policy.py:748
#, python-format
-msgid "Verifying authenticated sender '%(sender)s' with "
+msgid ""
+"Verifying authenticated sender '%(sender)s' with sasl_username "
+"'%(sasl_username)s' for recipient '%(recipient)s'"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:721
+#: ../bin/kolab_smtp_access_policy.py:751
#, python-format
-msgid "Verifying unauthenticated sender '%(sender)s' "
+msgid ""
+"Verifying unauthenticated sender '%(sender)s' for recipient '%(recipient)s'"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:738
+#: ../bin/kolab_smtp_access_policy.py:767
#, python-format
-msgid "Reproducing verify_recipient(%s, %s) from "
+msgid "Reproducing verify_recipient(%s, %s) from cache"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:760
+#: ../bin/kolab_smtp_access_policy.py:804
#, python-format
msgid "Using authentication domain %s instead of %s"
msgstr "Benutze Authentisierungsdomain %s anstelle von %s"
-#: ../bin/kolab_smtp_access_policy.py:770
+#: ../bin/kolab_smtp_access_policy.py:814
#, python-format
msgid "Domain %s is a primary domain"
msgstr "Die Domain %s ist die primäre Domain"
-#: ../bin/kolab_smtp_access_policy.py:778
+#: ../bin/kolab_smtp_access_policy.py:822
#, python-format
-msgid "Checking the recipient for domain %s that is not "
+msgid ""
+"Checking the recipient for domain %s that is not ours. This is probably a "
+"configuration error."
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:794
-msgid "This recipient address is related to multiple "
+#: ../bin/kolab_smtp_access_policy.py:837
+msgid ""
+"This recipient address is related to multiple object entries and the SMTP "
+"Access Policy can therefore not restrict message flow"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:803
+#: ../bin/kolab_smtp_access_policy.py:854
#, python-format
-msgid "Recipient address %r not found. Allowing since "
+msgid ""
+"Recipient address %r not found. Allowing since the MTA was configured to "
+"accept the recipient."
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:831
+#: ../bin/kolab_smtp_access_policy.py:890
msgid "Invalid recipient"
msgstr "Ungültiger Empfänger"
-#: ../bin/kolab_smtp_access_policy.py:842
+#: ../bin/kolab_smtp_access_policy.py:901
msgid "Could not find this user, accepting"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:905
-#: ../bin/kolab_smtp_access_policy.py:958
+#: ../bin/kolab_smtp_access_policy.py:974
+#: ../bin/kolab_smtp_access_policy.py:1050
#, python-format
-msgid "Sender %s is not allowed to send to "
+msgid "Sender %s is not allowed to send to recipient %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:945
+#: ../bin/kolab_smtp_access_policy.py:1038
#, python-format
-msgid "Reproducing verify_sender(%r) from cache, "
+msgid "Reproducing verify_sender(%r) from cache"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:974
+#: ../bin/kolab_smtp_access_policy.py:1055
+msgid "Unverifiable sender."
+msgstr ""
+
+#: ../bin/kolab_smtp_access_policy.py:1060
+msgid "Sender is not using an alias"
+msgstr ""
+
+#: ../bin/kolab_smtp_access_policy.py:1068
msgid "Sender uses unauthorized envelope sender address"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:991
+#: ../bin/kolab_smtp_access_policy.py:1085
msgid "Could not verify sender"
msgstr "Konnte den Absender nicht verifizieren"
-#: ../bin/kolab_smtp_access_policy.py:998
-msgid "Verifying whether sender is allowed to send to "
+#: ../bin/kolab_smtp_access_policy.py:1092
+msgid ""
+"Verifying whether sender is allowed to send to recipient using sender policy"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1012
+#: ../bin/kolab_smtp_access_policy.py:1105
#, python-format
msgid "Result is %r"
msgstr "Das Ergebnis ist %r"
-#: ../bin/kolab_smtp_access_policy.py:1017
+#: ../bin/kolab_smtp_access_policy.py:1110
msgid "No recipient policy restrictions exist for this sender"
msgstr "Es existiert keine Empfängerrichtlinie für diesen Absender"
-#: ../bin/kolab_smtp_access_policy.py:1026
+#: ../bin/kolab_smtp_access_policy.py:1119
msgid "Found a recipient policy to apply for this sender."
msgstr "Empfänger-Richtlinie für diesen Benutzer gefunden"
-#: ../bin/kolab_smtp_access_policy.py:1041
+#: ../bin/kolab_smtp_access_policy.py:1134
#, python-format
-msgid "Sender %s not allowed to send to recipient "
+msgid "Sender %s not allowed to send to recipient %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1063
+#: ../bin/kolab_smtp_access_policy.py:1155
msgid "Cleaning up the cache"
msgstr "Aufräumen des Cache"
-#: ../bin/kolab_smtp_access_policy.py:1085
+#: ../bin/kolab_smtp_access_policy.py:1177
msgid ""
"The 'uri' setting in the kolab_smtp_access_policy section is soon going to "
"be deprecated in favor of 'cache_uri'"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1101
+#: ../bin/kolab_smtp_access_policy.py:1193
#, python-format
msgid "Operational Error in caching: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1152
+#: ../bin/kolab_smtp_access_policy.py:1245
#, python-format
msgid "Caching the policy result with timestamp %d"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1229
+#: ../bin/kolab_smtp_access_policy.py:1319
#, python-format
msgid "Returning action DEFER_IF_PERMIT: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1234
+#: ../bin/kolab_smtp_access_policy.py:1324
#, python-format
msgid "Returning action DUNNO: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1239
+#: ../bin/kolab_smtp_access_policy.py:1329
#, python-format
msgid "Returning action HOLD: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1244
+#: ../bin/kolab_smtp_access_policy.py:1334
#, python-format
msgid "Returning action PERMIT: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1249
+#: ../bin/kolab_smtp_access_policy.py:1459
#, python-format
msgid "Returning action REJECT: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1298
+#: ../bin/kolab_smtp_access_policy.py:1505
msgid "Starting to loop for new request"
msgstr "Starte Schleife für neue Anfrage"
-#: ../bin/kolab_smtp_access_policy.py:1305
+#: ../bin/kolab_smtp_access_policy.py:1512
msgid "Timeout for policy request reading exceeded"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1311
+#: ../bin/kolab_smtp_access_policy.py:1518
msgid "End of current request"
msgstr "Ende der aktuellen Anfrage"
-#: ../bin/kolab_smtp_access_policy.py:1315
+#: ../bin/kolab_smtp_access_policy.py:1522
#, python-format
msgid "Getting line: %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1319
+#: ../bin/kolab_smtp_access_policy.py:1526
msgid "Returning request"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1348
+#: ../bin/kolab_smtp_access_policy.py:1555
msgid "Access Policy Options"
msgstr "Zugriffsrichtlinien-Einstellungen"
-#: ../bin/kolab_smtp_access_policy.py:1355
+#: ../bin/kolab_smtp_access_policy.py:1562
msgid "SMTP Policy request timeout."
msgstr "Zeitüberschreitung der SMTP Richtlinien-Anfrage"
-#: ../bin/kolab_smtp_access_policy.py:1361
+#: ../bin/kolab_smtp_access_policy.py:1568
msgid "Verify the recipient access policy."
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1367
+#: ../bin/kolab_smtp_access_policy.py:1574
msgid "Verify the sender access policy."
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1373
+#: ../bin/kolab_smtp_access_policy.py:1580
msgid "Allow unauthenticated senders."
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1385
+#: ../bin/kolab_smtp_access_policy.py:1594
#, python-format
msgid "Got request instance %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1394
+#: ../bin/kolab_smtp_access_policy.py:1603
#, python-format
msgid "Request instance %s is in state %s"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1402
+#: ../bin/kolab_smtp_access_policy.py:1611
#, python-format
msgid "Request instance %s is not yet in DATA state"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1414
+#: ../bin/kolab_smtp_access_policy.py:1623
#, python-format
msgid "Request instance %s reached DATA state"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1432
+#: ../bin/kolab_smtp_access_policy.py:1643
+#, python-format
+msgid "Unhandled exception caught: %r"
+msgstr ""
+
+#: ../bin/kolab_smtp_access_policy.py:1647
msgid "Sender access denied"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1434
+#: ../bin/kolab_smtp_access_policy.py:1649
msgid "Recipient access denied"
msgstr ""
-#: ../bin/kolab_smtp_access_policy.py:1436
+#: ../bin/kolab_smtp_access_policy.py:1651
msgid "No objections"
msgstr ""
-#: ../conf.py:37 ../kolab.py:34 ../saslauthd.py:33
+#: ../conf.py:37 ../kolab-cli.py:34 ../saslauthd.py:33
msgid "Cannot load pykolab/logger.py:"
msgstr ""
-#: ../kolabd/__init__.py:49 ../saslauthd/__init__.py:48
-#: ../wallace/__init__.py:66
+#: ../kolabd/__init__.py:49 ../saslauthd/__init__.py:51
+#: ../wallace/__init__.py:85
msgid "Daemon Options"
msgstr ""
-#: ../kolabd/__init__.py:56 ../saslauthd/__init__.py:55
-#: ../wallace/__init__.py:73
+#: ../kolabd/__init__.py:56 ../saslauthd/__init__.py:58
+#: ../wallace/__init__.py:92
msgid "Fork to the background."
msgstr ""
-#: ../kolabd/__init__.py:65 ../saslauthd/__init__.py:64
-#: ../wallace/__init__.py:99
+#: ../kolabd/__init__.py:65 ../saslauthd/__init__.py:67
+#: ../wallace/__init__.py:118
msgid "Path to the PID file to use."
msgstr ""
-#: ../kolabd/__init__.py:74 ../saslauthd/__init__.py:73
-#: ../wallace/__init__.py:116
+#: ../kolabd/__init__.py:74 ../saslauthd/__init__.py:76
+#: ../wallace/__init__.py:135
msgid "Run as user USERNAME"
msgstr ""
-#: ../kolabd/__init__.py:84 ../saslauthd/__init__.py:83
-#: ../wallace/__init__.py:90
+#: ../kolabd/__init__.py:84 ../saslauthd/__init__.py:86
+#: ../wallace/__init__.py:109
msgid "Run as group GROUPNAME"
msgstr ""
-#: ../kolabd/__init__.py:122 ../pykolab/utils.py:180
-#: ../wallace/__init__.py:297
+#: ../kolabd/__init__.py:122 ../pykolab/logger.py:139 ../pykolab/utils.py:234
+#: ../saslauthd/__init__.py:292 ../wallace/__init__.py:329
#, python-format
msgid "Group %s does not exist"
msgstr ""
-#: ../kolabd/__init__.py:131 ../wallace/__init__.py:306
+#: ../kolabd/__init__.py:131 ../saslauthd/__init__.py:301
+#: ../wallace/__init__.py:338
#, python-format
msgid "Switching real and effective group id to %d"
msgstr ""
-#: ../kolabd/__init__.py:153 ../pykolab/utils.py:204
-#: ../wallace/__init__.py:328
+#: ../kolabd/__init__.py:153 ../pykolab/logger.py:159 ../pykolab/utils.py:258
+#: ../saslauthd/__init__.py:323 ../wallace/__init__.py:360
#, python-format
msgid "User %s does not exist"
msgstr ""
-#: ../kolabd/__init__.py:163 ../wallace/__init__.py:338
+#: ../kolabd/__init__.py:163 ../saslauthd/__init__.py:333
+#: ../wallace/__init__.py:370
#, python-format
msgid "Switching real and effective user id to %d"
msgstr ""
-#: ../kolabd/__init__.py:172 ../wallace/__init__.py:347
+#: ../kolabd/__init__.py:172 ../saslauthd/__init__.py:342
+#: ../wallace/__init__.py:379
msgid "Could not change real and effective uid and/or gid"
msgstr ""
-#: ../kolabd/__init__.py:192 ../saslauthd/__init__.py:122
-#: ../wallace/__init__.py:367
+#: ../kolabd/__init__.py:192 ../saslauthd/__init__.py:133
+#: ../wallace/__init__.py:399
msgid "Interrupted by user"
msgstr ""
#: ../kolabd/__init__.py:197 ../kolabd/__init__.py:208
-#: ../wallace/__init__.py:371 ../wallace/__init__.py:381
msgid "Traceback occurred, please report a "
msgstr ""
-#: ../kolabd/__init__.py:203 ../saslauthd/__init__.py:130
-#: ../wallace/__init__.py:377
+#: ../kolabd/__init__.py:203 ../saslauthd/__init__.py:141
+#: ../wallace/__init__.py:408
#, python-format
msgid "Type Error: %s"
msgstr ""
-#: ../kolabd/__init__.py:223 ../pykolab/auth/ldap/__init__.py:1623
+#: ../kolabd/__init__.py:230
+msgid "Could not connect to LDAP, is it running?"
+msgstr ""
+
+#: ../kolabd/__init__.py:233 ../pykolab/auth/ldap/__init__.py:2137
#: ../pykolab/cli/cmd_sync.py:36
msgid "Listing domains..."
+msgstr "Domänen werden geladenâ¦"
+
+#: ../kolabd/__init__.py:244
+msgid "No domains. Not syncing"
msgstr ""
-#: ../kolabd/__init__.py:260
+#: ../kolabd/__init__.py:275
#, python-format
msgid "added domains: %r, removed domains: %r"
msgstr ""
-#: ../kolabd/process.py:48
+#: ../kolabd/process.py:33
+#, python-format
+msgid "Process created for domain %s"
+msgstr ""
+
+#: ../kolabd/process.py:42
#, python-format
-msgid "Error in process %r, terminating: %r"
+msgid "Synchronizing for domain %s"
+msgstr ""
+
+#: ../kolabd/process.py:59
+#, python-format
+msgid ""
+"Error in process %r, terminating:\n"
+"\t%r"
msgstr ""
#: ../kolabd.py:31 ../setup-kolab.py:36 ../wallace.py:31
msgid "Cannot load pykolab/constants.py:"
msgstr ""
-#: ../pykolab/auth/__init__.py:94
+#: ../pykolab/auth/__init__.py:89
#, python-format
msgid "Called for domain %r"
msgstr ""
-#: ../pykolab/auth/__init__.py:107 ../pykolab/auth/__init__.py:116
+#: ../pykolab/auth/__init__.py:106 ../pykolab/auth/__init__.py:115
#, python-format
msgid "Using section %s and domain %s"
msgstr ""
-#: ../pykolab/auth/__init__.py:121
+#: ../pykolab/auth/__init__.py:120
#, python-format
msgid "Connecting to Authentication backend for domain %s"
msgstr ""
-#: ../pykolab/auth/__init__.py:132
+#: ../pykolab/auth/__init__.py:131
#, python-format
msgid "Section %s has no option 'auth_mechanism'"
msgstr ""
-#: ../pykolab/auth/__init__.py:139
+#: ../pykolab/auth/__init__.py:138
#, python-format
msgid "Section %s has auth_mechanism: %r"
msgstr ""
-#: ../pykolab/auth/__init__.py:148 ../pykolab/auth/__init__.py:157
+#: ../pykolab/auth/__init__.py:147 ../pykolab/auth/__init__.py:156
msgid "Starting LDAP..."
msgstr ""
-#: ../pykolab/auth/ldap/cache.py:112
+#: ../pykolab/auth/ldap/cache.py:126
#, python-format
msgid "Inserting cache entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/cache.py:129
+#: ../pykolab/auth/ldap/cache.py:147
#, python-format
msgid "Updating timestamp for cache entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/cache.py:136
+#: ../pykolab/auth/ldap/cache.py:155
#, python-format
msgid "Updating result_attribute for cache entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:51
+#: ../pykolab/auth/ldap/__init__.py:52
msgid "Python LDAP library does not support persistent search"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:142
+#: ../pykolab/auth/ldap/__init__.py:143
#, python-format
msgid "Attempting to authenticate user %s in realm %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:184
+#: ../pykolab/auth/ldap/__init__.py:175 ../pykolab/auth/ldap/__init__.py:226
+#, python-format
+msgid "Authentication cache failed: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:216 ../pykolab/auth/ldap/__init__.py:240
#, python-format
msgid "Binding with user_dn %s and password %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:194
+#: ../pykolab/auth/ldap/__init__.py:231 ../pykolab/auth/ldap/__init__.py:263
#, python-format
msgid "Failed to authenticate as user %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:211
-msgid "Connecting to LDAP..."
+#: ../pykolab/auth/ldap/__init__.py:249
+#, python-format
+msgid "Error occured, there is no such object: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:254
+msgid "Authentication cache failed to clear entry"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:215
+#: ../pykolab/auth/ldap/__init__.py:260
+#, python-format
+msgid "Exception occured: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:280
+msgid "Connecting to LDAP..."
+msgstr "Zum LDAP verbindenâ¦"
+
+#: ../pykolab/auth/ldap/__init__.py:284
#, python-format
msgid "Attempting to use LDAP URI %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:363
+#: ../pykolab/auth/ldap/__init__.py:371
+#, python-format
+msgid "Entry ID: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:373
+#, python-format
+msgid "Entry DN: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:376
+#, python-format
+msgid ""
+"ldap search: (%r, %r, filterstr='(objectclass=*)', attrlist=[ 'dn' ] + %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:453
#, python-format
msgid "Finding recipient with filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:431
+#: ../pykolab/auth/ldap/__init__.py:529
#, python-format
msgid "Finding resource with filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:454
+#: ../pykolab/auth/ldap/__init__.py:560
#, python-format
msgid "Using timestamp %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:486
+#: ../pykolab/auth/ldap/__init__.py:595
+msgid "Applying recipient policy disabled through configuration"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:600
#, python-format
msgid "Applying recipient policy to %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:503
+#: ../pykolab/auth/ldap/__init__.py:617
#, python-format
msgid "Using mail attributes: %r, with primary %r and "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:514
+#: ../pykolab/auth/ldap/__init__.py:628
#, python-format
msgid "key %r not in entry"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:516
+#: ../pykolab/auth/ldap/__init__.py:630
#, python-format
msgid "key %r is the prim. mail attr."
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:518
+#: ../pykolab/auth/ldap/__init__.py:632
msgid "prim. mail pol. is not empty"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:521
+#: ../pykolab/auth/ldap/__init__.py:635
#, python-format
msgid "key %r is the sec. mail attr."
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:523
+#: ../pykolab/auth/ldap/__init__.py:637
msgid "sec. mail pol. is not empty"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:527 ../pykolab/auth/ldap/__init__.py:541
+#: ../pykolab/auth/ldap/__init__.py:641 ../pykolab/auth/ldap/__init__.py:655
#, python-format
msgid "Attributes %r are not yet available for entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:577
+#: ../pykolab/auth/ldap/__init__.py:694
#, python-format
msgid "No results for mail address %s found"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:588
+#: ../pykolab/auth/ldap/__init__.py:705
#, python-format
msgid "1 result for address %s found, verifying"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:598
+#: ../pykolab/auth/ldap/__init__.py:715
#, python-format
msgid "Too bad, primary email address %s "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:609 ../pykolab/auth/ldap/__init__.py:698
+#: ../pykolab/auth/ldap/__init__.py:726 ../pykolab/auth/ldap/__init__.py:815
msgid "Address assigned to us"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:664
+#: ../pykolab/auth/ldap/__init__.py:781
#, python-format
msgid "No results for address %s found"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:675
+#: ../pykolab/auth/ldap/__init__.py:792
#, python-format
msgid "1 result for address %s found, "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:686
+#: ../pykolab/auth/ldap/__init__.py:803
msgid "Too bad, secondary email "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:713
+#: ../pykolab/auth/ldap/__init__.py:830
msgid "Recipient policy composed the following set of secondary "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:724
+#: ../pykolab/auth/ldap/__init__.py:841
#, python-format
msgid "Secondary mail addresses that we want is not None: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:735
+#: ../pykolab/auth/ldap/__init__.py:852
msgid "Avoiding the duplication of the primary mail "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:746
+#: ../pykolab/auth/ldap/__init__.py:863
#, python-format
msgid "Entry is getting secondary mail addresses: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:754
+#: ../pykolab/auth/ldap/__init__.py:871
msgid "Entry did not have any secondary mail "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:780
+#: ../pykolab/auth/ldap/__init__.py:888 ../pykolab/auth/ldap/__init__.py:894
+#, python-format
+msgid "secondary_mail_addresses: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:889 ../pykolab/auth/ldap/__init__.py:895
+#, python-format
+msgid "entry[%s]: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:906
#, python-format
msgid "Entry modifications list: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:800
+#: ../pykolab/auth/ldap/__init__.py:934
#, python-format
msgid "Setting entry attribute %r to %r for %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:836
+#: ../pykolab/auth/ldap/__init__.py:970
#, python-format
-msgid "Could not update dn %r"
+msgid ""
+"Could not update dn %r:\n"
+"%r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:849
+#: ../pykolab/auth/ldap/__init__.py:983
#, python-format
msgid "Using filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:887
+#: ../pykolab/auth/ldap/__init__.py:998
+#, python-format
+msgid "Synchronization is searching against base DN: %s"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:1044
#, python-format
msgid "About to consider the user quota for %r (used: %r, "
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:953
-#, fuzzy
-msgid "Invalid bind credentials"
-msgstr "Ungültiger Empfänger"
+#: ../pykolab/auth/ldap/__init__.py:1115
+msgid "Invalid DN, username and/or password."
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:1236 ../pykolab/auth/ldap/__init__.py:1249
+#: ../pykolab/auth/ldap/__init__.py:1614 ../pykolab/auth/ldap/__init__.py:1627
+#, python-format
+msgid "Found a subject %r with access %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:1356
+#, python-format
+msgid "Entry %s attribute value: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:1364
+#, python-format
+msgid "imap.user_mailbox_server(%r) result: %r"
+msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1248 ../pykolab/auth/ldap/__init__.py:1372
+#: ../pykolab/auth/ldap/__init__.py:1684 ../pykolab/auth/ldap/__init__.py:1853
#, python-format
msgid "Result from recipient policy: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1417
+#: ../pykolab/auth/ldap/__init__.py:1908
#, python-format
msgid "Kolab user %s does not have a result attribute %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1559
+#: ../pykolab/auth/ldap/__init__.py:2067
#, python-format
msgid "Finding domain root dn for domain %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1647
+#: ../pykolab/auth/ldap/__init__.py:2164
msgid "Authentication database DOWN"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1731 ../pykolab/auth/ldap/__init__.py:1766
+#: ../pykolab/auth/ldap/__init__.py:2248 ../pykolab/auth/ldap/__init__.py:2296
#, python-format
msgid "Entry type: %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1854
+#: ../pykolab/auth/ldap/__init__.py:2321
+#, python-format
+msgid "Done with _synchronize_callback() for entry %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/__init__.py:2393
msgid "LDAP Search Result Data Entry:"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1870
+#: ../pykolab/auth/ldap/__init__.py:2409
msgid "Entry Change Notification attributes:"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1875
+#: ../pykolab/auth/ldap/__init__.py:2414
#, python-format
msgid "Change Type: %r (%r)"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1883
+#: ../pykolab/auth/ldap/__init__.py:2422
#, python-format
msgid "Previous DN: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1938
+#: ../pykolab/auth/ldap/__init__.py:2477
#, python-format
msgid "Object %s searched no longer exists"
-msgstr ""
+msgstr "Das gesuchte Objekt %s existiert nicht mehr"
-#: ../pykolab/auth/ldap/__init__.py:1948
+#: ../pykolab/auth/ldap/__init__.py:2487
#, python-format
msgid "%d results..."
-msgstr ""
+msgstr "%d Ergebnisseâ¦"
-#: ../pykolab/auth/ldap/__init__.py:2051
+#: ../pykolab/auth/ldap/__init__.py:2590
#, python-format
msgid "Searching with filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2095
+#: ../pykolab/auth/ldap/__init__.py:2642
#, python-format
msgid "Checking for support for %s on %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2114
+#: ../pykolab/auth/ldap/__init__.py:2661
#, python-format
msgid "Found support for %s"
msgstr ""
-#: ../pykolab/cli/cmd_add_domain.py:36 ../pykolab/cli/cmd_create_mailbox.py:36
+#: ../pykolab/auth/ldap/__init__.py:2706
+#, python-format
+msgid "An error occured using %s: %r"
+msgstr ""
+
+#: ../pykolab/auth/ldap/syncrepl.py:46
+msgid "The name of the persistent, unique attribute "
+msgstr ""
+
+#: ../pykolab/cli/cmd_acl_cleanup.py:34
+msgid "Clean up ACLs that use identifiers that no longer exist"
+msgstr ""
+
+#: ../pykolab/cli/cmd_acl_cleanup.py:56
+#, python-format
+msgid "Deleting ACL %s for subject %s on folder %s"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:42
+msgid "Specify the (new) alias address"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:45
+msgid "Specify the existing recipient address"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:66 ../pykolab/cli/cmd_add_alias.py:70
+#, python-format
+msgid "Domain %r is not a local domain"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:75
+msgid "Primary and secondary domain do not have the same parent domain"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:81
+#, python-format
+msgid "No such recipient %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:87
+#, python-format
+msgid "Recipient for alias %r already exists"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:97
+msgid "Environment is not configured for "
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_alias.py:105
+#, python-format
+msgid "Recipient %r is not the primary recipient for address %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_domain.py:36
+#: ../pykolab/cli/cmd_count_domain_mailboxes.py:38
+#: ../pykolab/cli/cmd_create_mailbox.py:36
#: ../pykolab/cli/cmd_export_mailbox.py:33
-#: ../pykolab/cli/cmd_list_mailboxes.py:39
+#: ../pykolab/cli/cmd_list_deleted_mailboxes.py:38
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:36
+#: ../pykolab/cli/cmd_list_mailboxes.py:40
#: ../pykolab/cli/cmd_list_mailbox_metadata.py:37
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:37
+#: ../pykolab/cli/cmd_list_messages.py:37 ../pykolab/cli/cmd_list_quota.py:36
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:36
+#: ../pykolab/cli/cmd_server_info.py:34
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:38
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:39
+#: ../pykolab/cli/cmd_undelete_mailbox.py:34
msgid "CLI Options"
-msgstr ""
+msgstr "Kommandozeilenoptionen"
#: ../pykolab/cli/cmd_add_domain.py:42
-msgid "Add domain as alias for DOMAIN"
+msgid "Add alias domain."
msgstr ""
#: ../pykolab/cli/cmd_add_domain.py:47
-msgid "Add a new domain or domain alias."
+msgid "Add a new domain."
msgstr ""
-#: ../pykolab/cli/cmd_add_domain.py:55
+#: ../pykolab/cli/cmd_add_domain.py:55 ../pykolab/cli/cmd_delete_domain.py:44
+#: ../pykolab/cli/cmd_find_domain.py:44
msgid "Could not find credentials with sufficient permissions"
msgstr ""
-#: ../pykolab/cli/cmd_add_domain.py:80 ../pykolab/wap_client/__init__.py:113
-msgid "Invalid parent domain"
+#: ../pykolab/cli/cmd_add_domain.py:67 ../pykolab/cli/cmd_delete_domain.py:56
+#: ../pykolab/cli/cmd_find_domain.py:56
+msgid "Domain name"
msgstr ""
-#: ../pykolab/cli/cmd_add_domain.py:86
-msgid "Domain name"
+#: ../pykolab/cli/cmd_add_user_subscription.py:37
+msgid "Subscribe a user to a folder."
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_user_subscription.py:47
+#: ../pykolab/cli/cmd_add_user_subscription.py:51
+#: ../pykolab/cli/cmd_remove_user_subscription.py:47
+#: ../pykolab/cli/cmd_remove_user_subscription.py:51
+msgid "Folder pattern"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_user_subscription.py:50
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:63
+#: ../pykolab/cli/cmd_remove_user_subscription.py:50
+msgid "User ID"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_user_subscription.py:72
+#: ../pykolab/cli/cmd_remove_user_subscription.py:72
+#, python-format
+msgid "Cannot subscribe user to folder %r:"
+msgstr ""
+
+#: ../pykolab/cli/cmd_add_user_subscription.py:73
+#: ../pykolab/cli/cmd_delete_message.py:61
+#: ../pykolab/cli/cmd_list_messages.py:67
+#: ../pykolab/cli/cmd_remove_user_subscription.py:73
+msgid "No such folder"
+msgstr ""
+
+#: ../pykolab/cli/cmd_count_domain_mailboxes.py:44
+#: ../pykolab/cli/cmd_list_deleted_mailboxes.py:50
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:48
+#: ../pykolab/cli/cmd_list_mailboxes.py:52 ../pykolab/cli/cmd_list_quota.py:42
+#: ../pykolab/cli/cmd_server_info.py:40
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:57
+msgid "List mailboxes on server SERVER only."
msgstr ""
#: ../pykolab/cli/cmd_create_mailbox.py:42
msgid "Set metadata for folder to ANNOTATION=VALUE"
msgstr ""
-#: ../pykolab/cli/cmd_create_mailbox.py:52
-msgid "Invalid argument"
+#: ../pykolab/cli/cmd_create_mailbox.py:50
+msgid "Create folder on PARTITION."
msgstr ""
#: ../pykolab/cli/cmd_create_mailbox.py:60
+msgid "Invalid argument"
+msgstr ""
+
+#: ../pykolab/cli/cmd_create_mailbox.py:68
msgid "Invalid argument for metadata"
msgstr ""
+#: ../pykolab/cli/cmd_delete_domain.py:36
+msgid "Delete a domain."
+msgstr ""
+
#: ../pykolab/cli/cmd_delete_mailbox_acl.py:45
#: ../pykolab/cli/cmd_delete_mailbox_acl.py:49
#: ../pykolab/cli/cmd_set_mailbox_acl.py:50
@@ -684,15 +919,20 @@ msgstr ""
#: ../pykolab/cli/cmd_list_mailbox_acls.py:43
#: ../pykolab/cli/cmd_list_mailbox_metadata.py:54
#: ../pykolab/cli/cmd_set_mailbox_acl.py:54
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:65
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:66
+#: ../pykolab/cli/cmd_set_quota.py:46 ../tests/unit/test-015-translate.py:12
+#: ../tests/unit/test-015-translate.py:16
+#: ../tests/unit/test-015-translate.py:18
+#: ../tests/unit/test-015-translate.py:20
msgid "Folder name"
-msgstr "Ordnername"
+msgstr ""
#: ../pykolab/cli/cmd_delete_mailbox_acl.py:60
#: ../pykolab/cli/cmd_list_mailbox_acls.py:54
#: ../pykolab/cli/cmd_list_mailbox_metadata.py:80
#: ../pykolab/cli/cmd_set_mailbox_acl.py:67
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:93
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:94
+#: ../pykolab/cli/cmd_set_quota.py:58
#, python-format
msgid "No such folder %r"
msgstr ""
@@ -701,6 +941,23 @@ msgstr ""
msgid "No mailbox specified"
msgstr ""
+#: ../pykolab/cli/cmd_delete_mailbox.py:56
+msgid "No such folder(s)"
+msgstr ""
+
+#: ../pykolab/cli/cmd_delete_message.py:36
+msgid "Delete a message from a folder"
+msgstr ""
+
+#: ../pykolab/cli/cmd_delete_message.py:49
+msgid "Specify a UID"
+msgstr ""
+
+#: ../pykolab/cli/cmd_delete_message.py:52
+#: ../pykolab/cli/cmd_list_messages.py:58
+msgid "Specify a folder"
+msgstr ""
+
#: ../pykolab/cli/cmd_export_mailbox.py:38
msgid "All folders this user has access to"
msgstr ""
@@ -720,11 +977,22 @@ msgstr ""
msgid "No directories found for user %s"
msgstr ""
-#: ../pykolab/cli/cmd_list_mailboxes.py:44
+#: ../pykolab/cli/cmd_find_domain.py:36
+msgid "Find a domain."
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_deleted_mailboxes.py:43
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:41
+#: ../pykolab/cli/cmd_list_mailboxes.py:45
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:41
msgid "Display raw IMAP UTF-7 folder names"
msgstr ""
-#: ../pykolab/cli/cmd_list_mailboxes.py:75
+#: ../pykolab/cli/cmd_list_domain_mailboxes.py:58
+msgid "Domain"
+msgstr "Domäne"
+
+#: ../pykolab/cli/cmd_list_mailboxes.py:87
#, python-format
msgid "Appending folder search for %r"
msgstr ""
@@ -733,11 +1001,41 @@ msgstr ""
msgid "List annotations as user USER"
msgstr ""
-#: ../pykolab/cli/cmd_list_quota.py:59 ../pykolab/cli/cmd_list_quota.py:71
+#: ../pykolab/cli/cmd_list_messages.py:43
+msgid "Include messages flagged as \\Deleted"
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_messages.py:47
+msgid "List messages in a folder"
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_quota.py:73 ../pykolab/cli/cmd_list_quota.py:89
#, python-format
msgid "The quota for folder %s is set to literally allow 0KB of storage."
msgstr ""
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:47
+msgid "List unsubscribed folders"
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:50
+msgid "List the folders a user is subscribed to."
+msgstr ""
+
+#: ../pykolab/cli/cmd_list_user_subscriptions.py:98
+#, python-format
+msgid "No unsubscribed folders for user %s"
+msgstr ""
+
+#: ../pykolab/cli/cmd_mailbox_cleanup.py:37
+msgid "Clean up mailboxes that do no longer have an owner."
+msgstr ""
+
+#: ../pykolab/cli/cmd_mailbox_cleanup.py:61
+#, python-format
+msgid "Deleting folder 'user/%s'"
+msgstr ""
+
#: ../pykolab/cli/cmd_remove_mailaddress.py:49
msgid "Invalid or unqualified email address."
msgstr ""
@@ -761,20 +1059,34 @@ msgstr ""
msgid "Found the following recipients:"
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:48
+#: ../pykolab/cli/cmd_remove_user_subscription.py:37
+msgid "Unsubscribe a user from a folder."
+msgstr ""
+
+#: ../pykolab/cli/cmd_remove_user_subscription.py:86
+#, python-format
+msgid "Successfully unsubscribed user %s from the following folders:"
+msgstr ""
+
+#: ../pykolab/cli/cmd_remove_user_subscription.py:92
+#, python-format
+msgid "User %s was not unsubscribed from any folders."
+msgstr ""
+
+#: ../pykolab/cli/cmd_rename_mailbox.py:52
msgid "No target mailbox name specified"
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:50
+#: ../pykolab/cli/cmd_rename_mailbox.py:54
msgid "No source mailbox name specified"
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:62
+#: ../pykolab/cli/cmd_rename_mailbox.py:66
#, python-format
msgid "Source folder %r does not exist"
msgstr ""
-#: ../pykolab/cli/cmd_rename_mailbox.py:66
+#: ../pykolab/cli/cmd_rename_mailbox.py:70
#, python-format
msgid "Target folder %r already exists"
msgstr ""
@@ -785,21 +1097,75 @@ msgstr ""
msgid "ACI Permissions"
msgstr ""
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:44
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:45
msgid "Set annotation as user USER"
msgstr ""
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:58
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:62
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:67
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:59
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:63
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:68
msgid "Metadata value"
msgstr ""
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:61
-#: ../pykolab/cli/cmd_set_mailbox_metadata.py:66
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:62
+#: ../pykolab/cli/cmd_set_mailbox_metadata.py:67
msgid "Metadata path"
msgstr ""
+#: ../pykolab/cli/cmd_set_quota.py:43 ../pykolab/cli/cmd_set_quota.py:47
+msgid "New quota"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:44
+msgid "Delete mailboxes for recipients that do not appear to exist in LDAP."
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:50
+msgid "Display changes, do not apply them."
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:88
+#, python-format
+msgid "Domains in IMAP not in LDAP: %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:101
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:142
+#, python-format
+msgid ""
+"No recipients for '%s' (would have deleted the mailbox if not for --dry-"
+"run)!"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:106
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:147
+#, python-format
+msgid "Deleting mailbox '%s' because it has no recipients"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:110
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:151
+#, python-format
+msgid "An error occurred removing mailbox %r: %r"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:112
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:153
+#, python-format
+msgid "Not automatically deleting shared folder '%s'"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:114
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:155
+#, python-format
+msgid "No recipients for '%s' (use --delete to delete)!"
+msgstr ""
+
+#: ../pykolab/cli/cmd_sync_mailhost_attrs.py:136
+#, python-format
+msgid "Multiple recipients for '%s'!"
+msgstr ""
+
#: ../pykolab/cli/cmd_sync.py:41
#, python-format
msgid "Found %d domains in %d seconds"
@@ -810,37 +1176,126 @@ msgstr ""
msgid "Running for domain %s"
msgstr ""
-#: ../pykolab/cli/cmd_sync.py:57
+#: ../pykolab/cli/cmd_sync.py:58
#, python-format
msgid "Synchronizing users for %s took %d seconds"
msgstr ""
+#: ../pykolab/cli/cmd_undelete_mailbox.py:39
+msgid "Do not actually execute, but state what would have been executed."
+msgstr ""
+
+#: ../pykolab/cli/cmd_undelete_mailbox.py:42
+msgid "Recover mailboxes previously deleted."
+msgstr ""
+
+#: ../pykolab/cli/cmd_user_info.py:39
+msgid "Email address"
+msgstr ""
+
#. This is a nested command
#. This is a nested component
-#: ../pykolab/cli/commands.py:101 ../pykolab/setup/components.py:90
+#: ../pykolab/cli/commands.py:98 ../pykolab/setup/components.py:90
#, python-format
msgid "Command Group: %s"
msgstr ""
-#: ../pykolab/cli/commands.py:116 ../pykolab/cli/commands.py:121
+#: ../pykolab/cli/commands.py:113 ../pykolab/cli/commands.py:118
msgid "No such command."
msgstr ""
-#: ../pykolab/cli/commands.py:171 ../pykolab/setup/components.py:231
+#: ../pykolab/cli/commands.py:168 ../pykolab/setup/components.py:231
#, python-format
msgid "Command '%s' already registered"
msgstr ""
-#: ../pykolab/cli/commands.py:196 ../pykolab/setup/components.py:257
-#: ../wallace/modules.py:348
+#: ../pykolab/cli/commands.py:193 ../pykolab/setup/components.py:257
+#: ../wallace/modules.py:369
#, python-format
msgid "Alias for %s"
msgstr ""
-#: ../pykolab/cli/commands.py:204 ../pykolab/setup/components.py:265
+#: ../pykolab/cli/commands.py:201 ../pykolab/setup/components.py:265
msgid "Not yet implemented"
msgstr ""
+#: ../pykolab/cli/sieve/cmd_list.py:43 ../pykolab/cli/sieve/cmd_put.py:42
+#: ../pykolab/cli/sieve/cmd_refresh.py:44 ../pykolab/cli/sieve/cmd_test.py:43
+msgid "Email Address"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:99
+#: ../pykolab/plugins/sievemgmt/__init__.py:111
+#, python-format
+msgid "Found the following scripts for user %s: %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:100
+#: ../pykolab/plugins/sievemgmt/__init__.py:112
+#, python-format
+msgid "And the following script is active for user %s: %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:178
+#: ../pykolab/plugins/sievemgmt/__init__.py:190
+#, python-format
+msgid ""
+"Delivery to folder active, but no folder name attribute available for user "
+"%r"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:181
+#: ../pykolab/plugins/sievemgmt/__init__.py:193
+msgid "Delivery to folder active, but no folder name attribute configured"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:359
+#, python-format
+msgid "MANAGEMENT script for user %s contents: %r"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:364
+#: ../pykolab/plugins/sievemgmt/__init__.py:374
+#, python-format
+msgid "Uploading script MANAGEMENT failed for user %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:366
+#: ../pykolab/plugins/sievemgmt/__init__.py:376
+#, python-format
+msgid "Uploading script MANAGEMENT for user %s succeeded"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:377
+#: ../pykolab/plugins/sievemgmt/__init__.py:387
+#, python-format
+msgid "Including script %s in USER (for user %s)"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:386
+#: ../pykolab/plugins/sievemgmt/__init__.py:396
+#, python-format
+msgid "Uploading script USER failed for user %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:388
+#: ../pykolab/plugins/sievemgmt/__init__.py:398
+#, python-format
+msgid "Uploading script USER for user %s succeeded"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:416
+#: ../pykolab/plugins/sievemgmt/__init__.py:426
+#, python-format
+msgid "Uploading script MASTER failed for user %s"
+msgstr ""
+
+#: ../pykolab/cli/sieve/cmd_refresh.py:418
+#: ../pykolab/plugins/sievemgmt/__init__.py:428
+#, python-format
+msgid "Uploading script MASTER for user %s succeeded"
+msgstr ""
+
#: ../pykolab/cli/telemetry/cmd_examine_command_issue.py:40
msgid "Unspecified command issue identifier"
msgstr ""
@@ -986,357 +1441,429 @@ msgstr ""
msgid "No command supplied"
msgstr ""
-#: ../pykolab/conf/__init__.py:411
+#: ../pykolab/conf/__init__.py:416
msgid "Insufficient options. Need section, key and value -in that order."
msgstr ""
-#: ../pykolab/conf/__init__.py:414
+#: ../pykolab/conf/__init__.py:419
#, python-format
msgid "No section '%s' exists."
msgstr ""
-#: ../pykolab/conf/__init__.py:445
+#: ../pykolab/conf/__init__.py:461
#, python-format
msgid "Setting %s to %r (from the default values for CLI options)"
msgstr ""
-#: ../pykolab/conf/__init__.py:514
+#: ../pykolab/conf/__init__.py:534
#, python-format
msgid "Could not execute configuration function: %s"
msgstr ""
-#: ../pykolab/conf/__init__.py:522
+#: ../pykolab/conf/__init__.py:542
#, python-format
msgid "Option %s/%s does not exist in config file %s, pulling from defaults"
msgstr ""
-#: ../pykolab/conf/__init__.py:530 ../pykolab/conf/__init__.py:533
+#: ../pykolab/conf/__init__.py:550 ../pykolab/conf/__init__.py:553
msgid "Option does not exist in defaults."
msgstr ""
-#: ../pykolab/conf/__init__.py:543
+#: ../pykolab/conf/__init__.py:563
#, python-format
msgid "Configuration file %s not readable."
msgstr ""
-#: ../pykolab/conf/__init__.py:546
+#: ../pykolab/conf/__init__.py:566
#, python-format
msgid "Configuration file %s does not exist."
msgstr ""
-#: ../pykolab/conf/__init__.py:551
+#: ../pykolab/conf/__init__.py:571
msgid ""
-"WARNING: A negative debug level value does not make this program be any more "
-"silent."
+"WARNING: A negative debug level value does not make this program be any more"
+" silent."
msgstr ""
-#: ../pykolab/conf/__init__.py:557
+#: ../pykolab/conf/__init__.py:577
msgid "This program has 9 levels of verbosity. Using the maximum of 9."
msgstr ""
-#: ../pykolab/conf/__init__.py:565 ../pykolab/conf/__init__.py:571
+#: ../pykolab/conf/__init__.py:585 ../pykolab/conf/__init__.py:591
msgid "Cannot start SASL authentication daemon"
msgstr ""
-#: ../pykolab/conf/__init__.py:582
+#: ../pykolab/conf/__init__.py:602
msgid "No imaplib library found."
msgstr ""
-#: ../pykolab/conf/__init__.py:592
+#: ../pykolab/conf/__init__.py:612
msgid "No LMTP class found in the smtplib library."
msgstr ""
-#: ../pykolab/conf/__init__.py:602
+#: ../pykolab/conf/__init__.py:622
msgid "No SMTP class found in the smtplib library."
msgstr ""
-#: ../pykolab/conf/__init__.py:616
+#: ../pykolab/conf/__init__.py:636
#, python-format
msgid "Found you specified a specific set of items to test: %s"
msgstr ""
-#: ../pykolab/conf/__init__.py:624
+#: ../pykolab/conf/__init__.py:644
#, python-format
msgid "Selectively selecting: %s"
msgstr ""
#: ../pykolab/constants.py.in:40
-msgid "PyKolab is a Kolab Systems product. For more information "
+msgid ""
+"PyKolab is a Kolab Systems product. For more information about Kolab or "
+"PyKolab, visit http://www.kolabsys.com"
msgstr ""
-#: ../pykolab/constants.py.in:54
+#: ../pykolab/constants.py.in:53
msgid "WARNING"
msgstr ""
-#: ../pykolab/constants.py.in:54
-msgid "The Fully Qualified "
+#: ../pykolab/constants.py.in:53
+msgid ""
+"The Fully Qualified Domain Name or FQDN for this system is incorrect. "
+"Falling back to 'localdomain'."
msgstr ""
-#: ../pykolab/constants.py.in:75
+#: ../pykolab/constants.py.in:72
msgid "389 Directory Server or Red Hat Directory Server"
msgstr ""
-#: ../pykolab/constants.py.in:79 ../pykolab/constants.py.in:83
+#: ../pykolab/constants.py.in:76 ../pykolab/constants.py.in:80
msgid "OpenLDAP or compatible"
msgstr ""
-#: ../pykolab/imap/cyrus.py:79
+#: ../pykolab/imap/cyrus.py:80
#, python-format
msgid "Could not connect to Cyrus IMAP server %r"
msgstr ""
-#: ../pykolab/imap/cyrus.py:136
+#: ../pykolab/imap/cyrus.py:137
#, python-format
msgid "Continuing with separator: %r"
msgstr ""
-#: ../pykolab/imap/cyrus.py:141
+#: ../pykolab/imap/cyrus.py:142
msgid "Detected we are running in a Murder topology"
msgstr ""
-#: ../pykolab/imap/cyrus.py:145
+#: ../pykolab/imap/cyrus.py:146
msgid "This system is not part of a murder topology"
msgstr ""
-#: ../pykolab/imap/cyrus.py:166
+#: ../pykolab/imap/cyrus.py:167
#, python-format
msgid "Checking actual backend server for folder %s through annotations"
msgstr ""
-#: ../pykolab/imap/cyrus.py:181
+#: ../pykolab/imap/cyrus.py:172
+msgid "Possibly reproducing the find "
+msgstr ""
+
+#: ../pykolab/imap/cyrus.py:195
#, python-format
msgid "Could not get the annotations after %s tries."
msgstr ""
-#: ../pykolab/imap/cyrus.py:185
+#: ../pykolab/imap/cyrus.py:199
#, python-format
msgid "No annotations for %s: %r"
msgstr ""
-#: ../pykolab/imap/cyrus.py:192
+#: ../pykolab/imap/cyrus.py:206
#, python-format
msgid "Server for INBOX folder %s is %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:204
+#: ../pykolab/imap/cyrus.py:226
#, python-format
msgid "Setting quota for folder %s to %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:208
+#: ../pykolab/imap/cyrus.py:230
#, python-format
msgid "Could not set quota for mailfolder %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:217
+#: ../pykolab/imap/cyrus.py:239
#, python-format
msgid "Moving INBOX folder %s to %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:232
+#: ../pykolab/imap/cyrus.py:254
#, python-format
msgid "Setting annotation %s on folder %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:237
+#: ../pykolab/imap/cyrus.py:259
#, python-format
msgid "Could not set annotation %r on mail folder %r: %r"
msgstr ""
-#: ../pykolab/imap/cyrus.py:241
+#: ../pykolab/imap/cyrus.py:263
#, python-format
msgid "Transferring folder %s from %s to %s"
msgstr ""
-#: ../pykolab/imap/cyrus.py:301
+#: ../pykolab/imap/cyrus.py:323
#, python-format
msgid "Undeleting %s to %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:45
+#: ../pykolab/imap/cyrus.py:334
+#, python-format
+msgid "Would have transfered %s from %s to %s"
+msgstr ""
+
+#: ../pykolab/imap/cyrus.py:336
+#, python-format
+msgid "Would have renamed %s to %s"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:46
#, python-format
msgid "Cleaning up ACL entries for %s across all folders"
msgstr ""
-#: ../pykolab/imap/__init__.py:60
+#: ../pykolab/imap/__init__.py:61
#, python-format
msgid "Cleaning up ACL entries referring to identifier %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:69
+#: ../pykolab/imap/__init__.py:70
#, python-format
msgid "Iterating over %d folders"
msgstr ""
#. Set the ACL to '' (effectively deleting the ACL entry)
-#: ../pykolab/imap/__init__.py:82
+#: ../pykolab/imap/__init__.py:83
#, python-format
msgid "Removing acl %r for subject %r from folder %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:143
+#: ../pykolab/imap/__init__.py:145
+msgid "No administrator password is available."
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:153
#, python-format
msgid "Logging on to Cyrus IMAP server %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:152
+#: ../pykolab/imap/__init__.py:162
#, python-format
msgid "Logging on to Dovecot IMAP server %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:161
+#: ../pykolab/imap/__init__.py:171
#, python-format
msgid "Logging on to generic IMAP server %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:179
+#: ../pykolab/imap/__init__.py:189
#, python-format
msgid "Reusing existing IMAP server connection to %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:181
+#: ../pykolab/imap/__init__.py:191
#, python-format
msgid "Reconnecting to IMAP server %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:197
+#: ../pykolab/imap/__init__.py:208
msgid "Called imap.disconnect() on a server that we had no connection to."
msgstr ""
-#: ../pykolab/imap/__init__.py:212
+#: ../pykolab/imap/__init__.py:222 ../pykolab/imap/__init__.py:234
#, python-format
-msgid "%r has no attribute %s"
+msgid "Could not create folder %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:223
+#, python-format
+msgid " on server %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:279
-msgid "Private annotations need to be set using the appropriate user account."
+#: ../pykolab/imap/__init__.py:244 ../pykolab/imap/__init__.py:246
+#, python-format
+msgid "%r has no attribute %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:294 ../pykolab/imap/__init__.py:329
+#: ../pykolab/imap/__init__.py:393 ../pykolab/imap/__init__.py:428
#, python-format
msgid "Creating new shared folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:354 ../pykolab/imap/__init__.py:504
+#: ../pykolab/imap/__init__.py:453 ../pykolab/imap/__init__.py:675
#, python-format
msgid "Downcasing mailbox name %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:358
+#: ../pykolab/imap/__init__.py:457
#, python-format
msgid "Creating new mailbox for user %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:387
+#: ../pykolab/imap/__init__.py:470
+msgid "Waiting for the Cyrus IMAP Murder to settle..."
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:516
#, python-format
msgid "Creating additional folders for user %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:407
+#: ../pykolab/imap/__init__.py:535
+#, python-format
+msgid "Waiting for the Cyrus murder to settle... %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:547
+#, python-format
+msgid "Correcting additional folder name from %r to %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:553
#, python-format
msgid "Mailbox already exists: %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:443
+#: ../pykolab/imap/__init__.py:593
msgid "Subscribing user to the additional folders"
msgstr ""
-#: ../pykolab/imap/__init__.py:458
+#: ../pykolab/imap/__init__.py:607
+msgid "Using the following tests for folder subscriptions:"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:609
+#, python-format
+msgid " %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:612
#, python-format
msgid "Folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:470
+#: ../pykolab/imap/__init__.py:624
#, python-format
msgid "Subscribing %s to folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:520 ../pykolab/imap/__init__.py:594
+#: ../pykolab/imap/__init__.py:628
+#, python-format
+msgid "Subscribing %s to folder %s failed: %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:658
+#, python-format
+msgid "Could not rename %s to reside on partition %s"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:691
+#, python-format
+msgid "INBOX folder to rename (%s) does not exist"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:694 ../pykolab/imap/__init__.py:770
#, python-format
msgid "Renaming INBOX from %s to %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:524
+#: ../pykolab/imap/__init__.py:698
#, python-format
msgid "Could not rename INBOX folder %s to %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:526 ../pykolab/imap/__init__.py:598
+#: ../pykolab/imap/__init__.py:700 ../pykolab/imap/__init__.py:774
#, python-format
-msgid "Moving INBOX folder %s won't succeed as target folder %s already exists"
+msgid ""
+"Moving INBOX folder %s won't succeed as target folder %s already exists"
msgstr ""
-#: ../pykolab/imap/__init__.py:536
+#: ../pykolab/imap/__init__.py:704
+#, python-format
+msgid "Server for mailbox %r is %r"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:712
#, python-format
msgid "Looking for folder '%s', we found folders: %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:559
+#: ../pykolab/imap/__init__.py:735
#, python-format
msgid "Setting ACL rights %s for subject %s on folder "
msgstr ""
-#: ../pykolab/imap/__init__.py:570
+#: ../pykolab/imap/__init__.py:746
#, python-format
msgid "Removing ACL rights %s for subject %s on folder "
msgstr ""
-#: ../pykolab/imap/__init__.py:591
+#: ../pykolab/imap/__init__.py:767
#, python-format
msgid "Found old INBOX folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:600
+#: ../pykolab/imap/__init__.py:776
#, python-format
msgid "Did not find old folder user/%s to rename"
msgstr ""
-#: ../pykolab/imap/__init__.py:602
+#: ../pykolab/imap/__init__.py:778
msgid "Value for user is not a dictionary"
msgstr ""
#. TODO: Go in fact correct the quota.
-#: ../pykolab/imap/__init__.py:662
+#: ../pykolab/imap/__init__.py:846
#, python-format
msgid "Cannot get current IMAP quota for folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:675
+#: ../pykolab/imap/__init__.py:859
#, python-format
msgid "Quota for %s currently is %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:681
+#: ../pykolab/imap/__init__.py:865
#, python-format
msgid "Adjusting authentication database quota for folder %s to %d"
msgstr ""
-#: ../pykolab/imap/__init__.py:686
+#: ../pykolab/imap/__init__.py:870
#, python-format
msgid "Correcting quota for %s to %s (currently %s)"
msgstr ""
-#: ../pykolab/imap/__init__.py:763
+#: ../pykolab/imap/__init__.py:947
#, python-format
msgid "Checking folder: %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:768
+#: ../pykolab/imap/__init__.py:952
#, python-format
msgid "Folder has no corresponding user (1): %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:771
+#: ../pykolab/imap/__init__.py:955
#, python-format
msgid "Folder has no corresponding user (2): %s"
msgstr ""
#. We got user identifier only
-#: ../pykolab/imap/__init__.py:786
+#: ../pykolab/imap/__init__.py:970
msgid "Please don't give us just a user identifier"
msgstr ""
-#: ../pykolab/imap/__init__.py:789
+#: ../pykolab/imap/__init__.py:973
#, python-format
msgid "Deleting folder %s"
msgstr ""
@@ -1345,12 +1872,50 @@ msgstr ""
msgid "Returning thread local configuration"
msgstr ""
-#: ../pykolab/logger.py:106
+#: ../pykolab/itip/__init__.py:43
+#, python-format
+msgid "Method %r not really interesting for us."
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:49
+#, python-format
+msgid "Raw iTip payload: %s"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:59
+msgid "Could not read iTip from message."
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:67
+#, python-format
+msgid "Duplicate iTip object: %s"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:90
+msgid "iTip event without a start"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:132
+msgid "Message is not an iTip message (non-multipart message)"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:225
+#, python-format
+msgid "Failed to compose iTip reply message: %r"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:236 ../wallace/module_invitationpolicy.py:936
+#: ../wallace/module_resources.py:964
#, python-format
-msgid "Could not change the ownership of log file %s"
+msgid "SMTP sendmail error: %r"
msgstr ""
-#: ../pykolab/logger.py:122
+#: ../pykolab/logger.py:173 ../pykolab/logger.py:179
+#, python-format
+msgid "Could not change permissions on %s: %r"
+msgstr ""
+
+#: ../pykolab/logger.py:196
#, python-format
msgid "Cannot log to file %s: %s"
msgstr ""
@@ -1448,27 +2013,51 @@ msgstr ""
msgid "Attribute substitution for 'mail' failed in Recipient Policy"
msgstr ""
-#: ../pykolab/plugins/recipientpolicy/__init__.py:115
+#: ../pykolab/plugins/recipientpolicy/__init__.py:116
msgid "Could not parse the alternative mail routines"
msgstr ""
-#: ../pykolab/plugins/recipientpolicy/__init__.py:119
+#: ../pykolab/plugins/recipientpolicy/__init__.py:120
#, python-format
msgid "Alternative mail routines: %r"
msgstr ""
-#: ../pykolab/plugins/recipientpolicy/__init__.py:130
-#: ../pykolab/plugins/recipientpolicy/__init__.py:141
+#: ../pykolab/plugins/recipientpolicy/__init__.py:127
+#, python-format
+msgid ""
+"An error occurred in composing the secondary mail attribute for entry %r"
+msgstr ""
+
+#: ../pykolab/plugins/recipientpolicy/__init__.py:138
+#: ../pykolab/plugins/recipientpolicy/__init__.py:153
#, python-format
msgid "Appending additional mail address: %s"
msgstr ""
-#: ../pykolab/plugins/recipientpolicy/__init__.py:134
-#: ../pykolab/plugins/recipientpolicy/__init__.py:145
+#: ../pykolab/plugins/recipientpolicy/__init__.py:142
+#, python-format
+msgid "Policy for secondary email address failed: %r"
+msgstr ""
+
+#: ../pykolab/plugins/recipientpolicy/__init__.py:157
msgid ""
"Attribute substitution for 'alternative_mail' failed in Recipient Policy"
msgstr ""
+#: ../pykolab/plugins/roundcubedb/__init__.py:48
+#, python-format
+msgid "user_delete: %r"
+msgstr ""
+
+#: ../pykolab/plugins/roundcubedb/__init__.py:55
+#: ../pykolab/setup/setup_roundcube.py:160
+msgid "Roundcube installation path not found."
+msgstr ""
+
+#: ../pykolab/plugins/sievemgmt/__init__.py:51
+msgid "Wrong number of arguments for sieve management plugin"
+msgstr ""
+
#: ../pykolab/setup/components.py:58
msgid "Display this help."
msgstr ""
@@ -1489,61 +2078,29 @@ msgstr ""
msgid "Free/Busy is not installed on this system"
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:55
-msgid ""
-"\n"
-" Please supply the MySQL password for the "
-"'roundcube'\n"
-" user. You have supplied this password earlier, and "
-"it is\n"
-" available from the database URI setting in\n"
-" /etc/roundcubemail/db.inc.php.\n"
-" "
-msgstr ""
-
-#: ../pykolab/setup/setup_freebusy.py:64
-#: ../pykolab/setup/setup_roundcube.py:56
-msgid "MySQL roundcube password"
+#: ../pykolab/setup/setup_imap.py:45
+msgid "Setup IMAP."
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:92
-#: ../pykolab/setup/setup_roundcube.py:115 ../pykolab/setup/setup_zpush.py:71
-#, python-format
-msgid "Using template file %r"
+#: ../pykolab/setup/setup_imap.py:89
+msgid "Could not write out Cyrus IMAP configuration file /etc/imapd.conf"
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:99
-#: ../pykolab/setup/setup_roundcube.py:122 ../pykolab/setup/setup_zpush.py:78
-#, python-format
-msgid "Successfully compiled template %r, writing out to %r"
+#: ../pykolab/setup/setup_imap.py:114
+msgid "Could not write out Cyrus IMAP configuration file /etc/cyrus.conf"
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:119
-#: ../pykolab/setup/setup_roundcube.py:193
-#: ../pykolab/setup/setup_syncroton.py:66 ../pykolab/setup/setup_zpush.py:98
-msgid "Could not start the webserver server service."
+#: ../pykolab/setup/setup_imap.py:158
+msgid "Could not start the cyrus-imapd and kolab-saslauthd services."
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:128 ../pykolab/setup/setup_imap.py:169
-#: ../pykolab/setup/setup_kolabd.py:81 ../pykolab/setup/setup_ldap.py:327
-#: ../pykolab/setup/setup_mta.py:378 ../pykolab/setup/setup_mysql.py:58
-#: ../pykolab/setup/setup_roundcube.py:202
-#: ../pykolab/setup/setup_syncroton.py:75 ../pykolab/setup/setup_zpush.py:107
+#: ../pykolab/setup/setup_imap.py:173 ../pykolab/setup/setup_kolabd.py:81
+#: ../pykolab/setup/setup_ldap.py:426 ../pykolab/setup/setup_mta.py:455
+#: ../pykolab/setup/setup_mysql.py:58 ../pykolab/setup/setup_roundcube.py:237
+#: ../pykolab/setup/setup_syncroton.py:102
msgid "Could not configure to start on boot, the "
msgstr ""
-#: ../pykolab/setup/setup_imap.py:45
-msgid "Setup IMAP."
-msgstr ""
-
-#: ../pykolab/setup/setup_imap.py:89 ../pykolab/setup/setup_imap.py:114
-msgid "Could not write out Cyrus IMAP configuration file /etc/imapd.conf"
-msgstr ""
-
-#: ../pykolab/setup/setup_imap.py:154
-msgid "Could not start the cyrus-imapd and kolab-saslauthd services."
-msgstr ""
-
#: ../pykolab/setup/setup_kolabd.py:43
msgid "Setup the Kolab daemon."
msgstr ""
@@ -1552,8 +2109,7 @@ msgstr ""
#, python-format
msgid ""
"\n"
-" Copying the configuration section for 'example."
-"org' over to\n"
+" Copying the configuration section for 'example.org' over to\n"
" a section applicable to your domain '%s'.\n"
" "
msgstr ""
@@ -1574,220 +2130,250 @@ msgstr ""
msgid "Allow anonymous binds (default: no)."
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:64
-msgid "Setup LDAP."
+#: ../pykolab/setup/setup_ldap.py:68
+msgid "Skip setting up the LDAP server."
msgstr ""
#: ../pykolab/setup/setup_ldap.py:76
+msgid "Setup configuration for OpenLDAP compatibility."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:84
+msgid "Setup configuration for Active Directory compatibility."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:88
+msgid "Setup LDAP."
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:97
+msgid "Skipping setup of LDAP, as specified"
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:126
+msgid ""
+"\n"
+" You can not configure Kolab to run against OpenLDAP\n"
+" and Active Directory simultaneously.\n"
+" "
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:139
+msgid ""
+"\n"
+" It seems 389 Directory Server has an existing\n"
+" instance configured. This setup script does not\n"
+" intend to destroy or overwrite your data. Please\n"
+" make sure /etc/dirsrv/ and /var/lib/dirsrv/ are\n"
+" clean so that this setup does not have to worry.\n"
+" "
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:154
msgid ""
"\n"
-" Please supply a password for the LDAP administrator "
-"user\n"
-" 'admin', used to login to the graphical console of "
-"389\n"
+" Please supply a password for the LDAP administrator user\n"
+" 'admin', used to login to the graphical console of 389\n"
" Directory server.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:84
+#: ../pykolab/setup/setup_ldap.py:162
msgid "Administrator password"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:91
+#: ../pykolab/setup/setup_ldap.py:169
msgid ""
"\n"
-" Please supply a password for the LDAP Directory "
-"Manager\n"
-" user, which is the administrator user you will be "
-"using\n"
-" to at least initially log in to the Web Admin, and "
-"that\n"
+" Please supply a password for the LDAP Directory Manager\n"
+" user, which is the administrator user you will be using\n"
+" to at least initially log in to the Web Admin, and that\n"
" Kolab uses to perform administrative tasks.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:100
+#: ../pykolab/setup/setup_ldap.py:178
msgid "Directory Manager password"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:107
+#: ../pykolab/setup/setup_ldap.py:185
msgid ""
"\n"
" Please choose the system user and group the service\n"
" should use to run under. These should be existing,\n"
-" unprivileged, local system POSIX accounts with no "
-"shell.\n"
+" unprivileged, local system POSIX accounts with no shell.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:117 ../pykolab/setup/setup_ldap.py:120
+#: ../pykolab/setup/setup_ldap.py:195 ../pykolab/setup/setup_ldap.py:198
msgid "User"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:118 ../pykolab/setup/setup_ldap.py:121
+#: ../pykolab/setup/setup_ldap.py:196 ../pykolab/setup/setup_ldap.py:199
msgid "Group"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:157
+#: ../pykolab/setup/setup_ldap.py:234
msgid ""
"\n"
-" This setup procedure plans to set up Kolab Groupware "
-"for\n"
-" the following domain name space. This domain name "
-"is\n"
+" This setup procedure plans to set up Kolab Groupware for\n"
+" the following domain name space. This domain name is\n"
" obtained from the reverse DNS entry on your network\n"
-" interface. Please confirm this is the appropriate "
-"domain\n"
+" interface. Please confirm this is the appropriate domain\n"
" name space.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:171
+#: ../pykolab/setup/setup_ldap.py:248
msgid "Domain name to use"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:176 ../pykolab/setup/setup_ldap.py:201
+#: ../pykolab/setup/setup_ldap.py:253 ../pykolab/setup/setup_ldap.py:278
msgid ""
"\n"
" Invalid input. Please try again.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:185
+#: ../pykolab/setup/setup_ldap.py:262
msgid ""
"\n"
-" The standard root dn we composed for you follows. "
-"Please\n"
+" The standard root dn we composed for you follows. Please\n"
" confirm this is the root dn you wish to use.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:196
+#: ../pykolab/setup/setup_ldap.py:273
msgid "Root DN to use"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:244
+#: ../pykolab/setup/setup_ldap.py:325
msgid "No directory server setup tool available."
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:255
+#: ../pykolab/setup/setup_ldap.py:337
msgid ""
"\n"
-" Setup is now going to set up the 389 Directory Server. "
-"This\n"
-" may take a little while (during which period there is "
-"no\n"
+" Setup is now going to set up the 389 Directory Server. This\n"
+" may take a little while (during which period there is no\n"
" output and no progress indication).\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:262
+#: ../pykolab/setup/setup_ldap.py:344
msgid "Setting up 389 Directory Server"
msgstr ""
-#. TODO: Get the return code and display output if not successful.
-#: ../pykolab/setup/setup_ldap.py:274
+#: ../pykolab/setup/setup_ldap.py:356
+msgid ""
+"\n"
+" An error was detected in the setup procedure for 389\n"
+" Directory Server. This setup will write out stderr and\n"
+" stdout to /var/log/kolab/setup.error.log and\n"
+" /var/log/kolab/setup.out.log respectively, before it\n"
+" exits.\n"
+" "
+msgstr ""
+
+#: ../pykolab/setup/setup_ldap.py:373
msgid "Setup DS stdout:"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:277
+#: ../pykolab/setup/setup_ldap.py:376
msgid "Setup DS stderr:"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:303
+#: ../pykolab/setup/setup_ldap.py:402
msgid "Could not copy the LDAP extensions for Kolab"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:306
+#: ../pykolab/setup/setup_ldap.py:405
msgid "Could not find the ldap Kolab schema file"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:318
+#: ../pykolab/setup/setup_ldap.py:417
msgid "Could not start the directory server service."
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:332
+#: ../pykolab/setup/setup_ldap.py:431
msgid ""
"\n"
" Please supply a Cyrus Administrator password. This\n"
" password is used by Kolab to execute administrative\n"
" tasks in Cyrus IMAP. You may also need the password\n"
" yourself to troubleshoot Cyrus IMAP and/or perform\n"
-" other administrative tasks against Cyrus IMAP "
-"directly.\n"
+" other administrative tasks against Cyrus IMAP directly.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:342
+#: ../pykolab/setup/setup_ldap.py:441
msgid "Cyrus Administrator password"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:349
+#: ../pykolab/setup/setup_ldap.py:448
msgid ""
"\n"
-" Please supply a Kolab Service account password. "
-"This\n"
-" account is used by various services such as "
-"Postfix,\n"
-" and Roundcube, as anonymous binds to the LDAP "
-"server\n"
+" Please supply a Kolab Service account password. This\n"
+" account is used by various services such as Postfix,\n"
+" and Roundcube, as anonymous binds to the LDAP server\n"
" will not be allowed.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:358
+#: ../pykolab/setup/setup_ldap.py:457
msgid "Kolab Service password"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:368
+#: ../pykolab/setup/setup_ldap.py:467
msgid "Writing out configuration to kolab.conf"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:382
+#: ../pykolab/setup/setup_ldap.py:481
msgid "Inserting service users into LDAP."
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:456
+#: ../pykolab/setup/setup_ldap.py:555
msgid "Writing out cn=kolab,cn=config"
msgstr ""
#. TODO: Add kolab-admin role
#. TODO: Assign kolab-admin admin ACLs
-#: ../pykolab/setup/setup_ldap.py:480
+#: ../pykolab/setup/setup_ldap.py:579
#, python-format
msgid "Adding domain %s to list of domains for this deployment"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:497
+#: ../pykolab/setup/setup_ldap.py:607
msgid "Disabling anonymous binds"
msgstr ""
#. TODO: Ensure the uid attribute is unique
-#. TODO^2: Consider renaming the general "attribute uniqueness to "uid attribute uniqueness"
-#: ../pykolab/setup/setup_ldap.py:505
+#. TODO^2: Consider renaming the general "attribute uniqueness to "uid
+#. attribute uniqueness"
+#: ../pykolab/setup/setup_ldap.py:615
msgid "Enabling attribute uniqueness plugin"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:511
+#: ../pykolab/setup/setup_ldap.py:621
msgid "Enabling referential integrity plugin"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:517
+#: ../pykolab/setup/setup_ldap.py:627
msgid "Enabling and configuring account policy plugin"
msgstr ""
#. TODO: Add kolab-admin role
-#: ../pykolab/setup/setup_ldap.py:532
+#: ../pykolab/setup/setup_ldap.py:642
msgid "Adding the kolab-admin role"
msgstr ""
#. TODO: User writeable attributes on root_dn
-#: ../pykolab/setup/setup_ldap.py:543
+#: ../pykolab/setup/setup_ldap.py:653
#, python-format
msgid "Setting access control to %s"
msgstr ""
-#: ../pykolab/setup/setup_ldap.py:568
+#: ../pykolab/setup/setup_ldap.py:679
msgid "Could not start and configure to start on boot, the "
msgstr ""
@@ -1795,24 +2381,24 @@ msgstr ""
msgid "Setup MTA."
msgstr ""
-#: ../pykolab/setup/setup_mta.py:245 ../pykolab/setup/setup_php.py:104
+#: ../pykolab/setup/setup_mta.py:317 ../pykolab/setup/setup_php.py:106
#, python-format
msgid "Setting key %r to %r"
msgstr ""
-#: ../pykolab/setup/setup_mta.py:278
+#: ../pykolab/setup/setup_mta.py:350
msgid "Could not write out Postfix configuration file /etc/postfix/master.cf"
msgstr ""
-#: ../pykolab/setup/setup_mta.py:321
-msgid "Could not write out Amavis configuration file /etc/amavisd/amavisd.conf"
+#: ../pykolab/setup/setup_mta.py:397
+msgid "Could not write out Amavis configuration file amavisd.conf"
msgstr ""
-#: ../pykolab/setup/setup_mta.py:329
+#: ../pykolab/setup/setup_mta.py:405
msgid "Not writing out any configuration for Amavis."
msgstr ""
-#: ../pykolab/setup/setup_mta.py:360
+#: ../pykolab/setup/setup_mta.py:437
msgid "Could not start the postfix, clamav and amavisd services services."
msgstr ""
@@ -1824,55 +2410,50 @@ msgstr ""
msgid "Could not start the MySQL database service."
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:68
+#: ../pykolab/setup/setup_mysql.py:71
msgid "What MySQL server are we setting up?"
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:72
+#: ../pykolab/setup/setup_mysql.py:75
msgid ""
"\n"
-" Please supply the root password for MySQL, so we can "
-"set\n"
-" up user accounts for other components that use "
-"MySQL.\n"
+" Please supply the root password for MySQL, so we can set\n"
+" up user accounts for other components that use MySQL.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:79 ../pykolab/setup/setup_mysql.py:96
+#: ../pykolab/setup/setup_mysql.py:82 ../pykolab/setup/setup_mysql.py:99
+#: ../pykolab/setup/setup_roundcube.py:183
+#: ../pykolab/setup/setup_syncroton.py:63
msgid "MySQL root password"
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:85
+#: ../pykolab/setup/setup_mysql.py:88
msgid ""
"\n"
-" Please supply a root password for MySQL. This "
-"password\n"
-" will be the administrative user for this MySQL "
-"server,\n"
-" and it should be kept a secret. After this setup "
-"process\n"
+" Please supply a root password for MySQL. This password\n"
+" will be the administrative user for this MySQL server,\n"
+" and it should be kept a secret. After this setup process\n"
" has completed, Kolab is going to discard and forget\n"
" about this password, but you will need it for\n"
" administrative tasks in MySQL.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:136
+#: ../pykolab/setup/setup_mysql.py:139
msgid ""
"\n"
-" Please supply a password for the MySQL user "
-"'kolab'.\n"
-" This password will be used by Kolab services, such "
-"as\n"
+" Please supply a password for the MySQL user 'kolab'.\n"
+" This password will be used by Kolab services, such as\n"
" the Web Administration Panel.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:144
+#: ../pykolab/setup/setup_mysql.py:147
msgid "MySQL kolab password"
msgstr ""
-#: ../pykolab/setup/setup_mysql.py:162
+#: ../pykolab/setup/setup_mysql.py:165
msgid "Could not find the MySQL Kolab schema file"
msgstr ""
@@ -1896,19 +2477,21 @@ msgstr ""
msgid ""
"\n"
" Please supply the timezone PHP should be using.\n"
+" You have to use a Continent or Country / City locality name\n"
+" like 'Europe/Berlin', but not just 'CEST'.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_php.py:72
+#: ../pykolab/setup/setup_php.py:74
msgid "Timezone ID"
msgstr ""
-#: ../pykolab/setup/setup_php.py:78
+#: ../pykolab/setup/setup_php.py:80
#, python-format
msgid "Cannot configure PHP through %r (No such file or directory)"
msgstr ""
-#: ../pykolab/setup/setup_php.py:89
+#: ../pykolab/setup/setup_php.py:91
msgid "Could not find PHP configuration file php.ini"
msgstr ""
@@ -1919,23 +2502,33 @@ msgstr ""
#: ../pykolab/setup/setup_roundcube.py:48
msgid ""
"\n"
-" Please supply a password for the MySQL user "
-"'roundcube'.\n"
+" Please supply a password for the MySQL user 'roundcube'.\n"
" This password will be used by the Roundcube webmail\n"
" interface.\n"
" "
msgstr ""
-#: ../pykolab/setup/setup_syncroton.py:40
-msgid "Setup Syncroton."
+#: ../pykolab/setup/setup_roundcube.py:56
+msgid "MySQL roundcube password"
msgstr ""
-#: ../pykolab/setup/setup_zpush.py:41
-msgid "Setup zpush."
+#: ../pykolab/setup/setup_roundcube.py:120
+#, python-format
+msgid "Using template file %r"
msgstr ""
-#: ../pykolab/setup/setup_zpush.py:45
-msgid "Z-Push is not installed on this system"
+#: ../pykolab/setup/setup_roundcube.py:127
+#, python-format
+msgid "Successfully compiled template %r, writing out to %r"
+msgstr ""
+
+#: ../pykolab/setup/setup_roundcube.py:228
+#: ../pykolab/setup/setup_syncroton.py:93
+msgid "Could not start the webserver server service."
+msgstr ""
+
+#: ../pykolab/setup/setup_syncroton.py:40
+msgid "Setup Syncroton."
msgstr ""
#. start_max = (int)(time.time())
@@ -1963,198 +2556,616 @@ msgstr ""
msgid "No database available"
msgstr ""
-#: ../pykolab/utils.py:60 ../pykolab/utils.py:62
+#: ../pykolab/utils.py:62 ../pykolab/utils.py:64
#, python-format
msgid "Confirm %s: "
msgstr ""
-#: ../pykolab/utils.py:65
+#: ../pykolab/utils.py:67
msgid "Incorrect confirmation. "
msgstr ""
-#: ../pykolab/utils.py:70 ../pykolab/utils.py:75
+#: ../pykolab/utils.py:72 ../pykolab/utils.py:77
#, python-format
msgid "%s: "
msgstr ""
-#: ../pykolab/utils.py:72 ../pykolab/utils.py:77
+#: ../pykolab/utils.py:74 ../pykolab/utils.py:79
#, python-format
msgid "%s [%s]: "
msgstr ""
-#: ../pykolab/utils.py:122
+#: ../pykolab/utils.py:124
msgid "Please answer 'yes' or 'no'."
msgstr ""
-#: ../pykolab/utils.py:148
+#: ../pykolab/utils.py:164
msgid "Choice"
msgstr ""
-#: ../pykolab/utils.py:214
+#: ../pykolab/utils.py:167
+msgid "Choice (type '?' for options)"
+msgstr ""
+
+#: ../pykolab/utils.py:268
#, python-format
msgid "Could not change the permissions on %s"
msgstr ""
-#: ../pykolab/utils.py:395
+#: ../pykolab/utils.py:479
#, python-format
msgid "Transliterating string %r with locale %r"
msgstr ""
-#: ../pykolab/utils.py:403
+#: ../pykolab/utils.py:487
msgid "Attempting to set locale"
msgstr ""
-#: ../pykolab/utils.py:405
+#: ../pykolab/utils.py:489
msgid "Success setting locale"
msgstr ""
-#: ../pykolab/utils.py:407
+#: ../pykolab/utils.py:491
msgid "Failure to set locale"
msgstr ""
-#: ../pykolab/utils.py:415
+#: ../pykolab/utils.py:499
#, python-format
msgid "Executing '%s | %s'"
msgstr ""
-#: ../pykolab/wap_client/__init__.py:257
+#: ../pykolab/utils.py:510
+#, python-format
+msgid "Could not translate %s using locale %s"
+msgstr ""
+
+#: ../pykolab/wap_client/__init__.py:320
#, python-format
msgid "Requesting %r with params %r"
msgstr ""
-#: ../pykolab/wap_client/__init__.py:263
+#: ../pykolab/wap_client/__init__.py:328
#, python-format
msgid "Got response: %r"
msgstr ""
#. Some data is not JSON
-#: ../pykolab/wap_client/__init__.py:268
+#: ../pykolab/wap_client/__init__.py:334
msgid "Response data is not JSON"
msgstr ""
-#: ../pykolab/xml/attendee.py:79 ../pykolab/xml/attendee.py:99
+#. support integer values, too
+#: ../pykolab/xml/attendee.py:9 ../pykolab/xml/attendee.py:17
+msgid "Needs Action"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:10 ../pykolab/xml/attendee.py:18
+msgid "Accepted"
+msgstr "Akzeptiert"
+
+#: ../pykolab/xml/attendee.py:11 ../pykolab/xml/attendee.py:19
+msgid "Declined"
+msgstr "Abgelehnt"
+
+#: ../pykolab/xml/attendee.py:12 ../pykolab/xml/attendee.py:20
+msgid "Tentatively Accepted"
+msgstr "Provisorisch Akzeptiert"
+
+#: ../pykolab/xml/attendee.py:13 ../pykolab/xml/attendee.py:21
+msgid "Delegated"
+msgstr "Delegiert"
+
+#: ../pykolab/xml/attendee.py:14
+msgid "Completed"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:15
+msgid "In Process"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:108 ../pykolab/xml/attendee.py:130
msgid "Not a valid attendee"
msgstr ""
-#: ../pykolab/xml/attendee.py:84
+#: ../pykolab/xml/attendee.py:115
msgid "No valid delegator references found"
msgstr ""
-#: ../pykolab/xml/attendee.py:104
+#: ../pykolab/xml/attendee.py:135
msgid "No valid delegatee references found"
msgstr ""
-#: ../pykolab/xml/attendee.py:140
+#: ../pykolab/xml/attendee.py:180
#, python-format
msgid "Invalid cutype %r"
msgstr ""
-#: ../pykolab/xml/attendee.py:151
+#: ../pykolab/xml/attendee.py:192
#, python-format
msgid "Invalid participant status %r"
msgstr ""
-#: ../pykolab/xml/attendee.py:159
+#: ../pykolab/xml/attendee.py:200
#, python-format
msgid "Invalid role %r"
msgstr ""
-#: ../pykolab/xml/event.py:172
+#: ../pykolab/xml/event.py:100 ../pykolab/xml/event.py:708
+#: ../pykolab/xml/event.py:751
+msgid "Event start needs datetime.date or datetime.datetime instance"
+msgstr ""
+
+#: ../pykolab/xml/event.py:241
#, python-format
msgid "No attendee with email or name %r"
msgstr ""
-#: ../pykolab/xml/event.py:180
+#: ../pykolab/xml/event.py:249
#, python-format
msgid "Invalid argument value attendee %r, must be basestring or Attendee"
msgstr ""
-#: ../pykolab/xml/event.py:186
+#: ../pykolab/xml/event.py:255
#, python-format
msgid "No attendee with email %r"
msgstr ""
-#: ../pykolab/xml/event.py:192
+#: ../pykolab/xml/event.py:261
#, python-format
msgid "No attendee with name %r"
msgstr ""
-#: ../pykolab/xml/event.py:338
+#: ../pykolab/xml/event.py:426
msgid "Invalid participant status"
msgstr ""
-#: ../pykolab/xml/event.py:538
-msgid "Event end needs datetime.date or datetime.datetime instance"
+#: ../pykolab/xml/event.py:542
+#, python-format
+msgid "Invalid status %r"
msgstr ""
-#: ../pykolab/xml/event.py:657
+#: ../pykolab/xml/event.py:550
#, python-format
-msgid "Invalid status %r"
+msgid "Invalid classification %r"
msgstr ""
-#: ../pykolab/xml/event.py:678 ../pykolab/xml/event.py:728
-msgid "Event start needs datetime.date or datetime.datetime instance"
+#: ../pykolab/xml/event.py:577
+msgid "Event end needs datetime.date or datetime.datetime instance"
msgstr ""
-#: ../pykolab/xml/event.py:764
+#: ../pykolab/xml/event.py:761
#, python-format
msgid "Invalid status set: %r"
msgstr ""
-#: ../pykolab/xml/event.py:882
+#: ../pykolab/xml/event.py:923
msgid "No sender specified"
msgstr ""
-#: ../saslauthd/__init__.py:126 ../saslauthd/__init__.py:134
-msgid "Traceback occurred, please report a bug at http://bugzilla.kolabsys.com"
+#: ../pykolab/xml/event.py:932
+#, python-format
+msgid "Invitation for %s was %s"
+msgstr ""
+
+#: ../pykolab/xml/event.py:937
+msgid "This is an automated response to one of your event requests."
msgstr ""
-#: ../wallace/__init__.py:62
+#: ../saslauthd/__init__.py:99
+#, python-format
+msgid "Could not create %r: %r"
+msgstr ""
+
+#: ../saslauthd/__init__.py:137 ../saslauthd/__init__.py:145
+#: ../wallace/__init__.py:403 ../wallace/__init__.py:412
+msgid ""
+"Traceback occurred, please report a bug at http://bugzilla.kolabsys.com"
+msgstr ""
+
+#: ../saslauthd/__init__.py:185
+msgid "kolab-saslauthd could not accept "
+msgstr ""
+
+#: ../saslauthd/__init__.py:190
+msgid "Maximum tries exceeded, exiting"
+msgstr ""
+
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:190
+#: ../wallace/module_resources.py:879
+#, python-format
+msgid "Reservation Request for %(summary)s was %(status)s"
+msgstr ""
+
+#. check notification message sent to resource owner (jane)
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:605
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:621
+#: ../wallace/module_resources.py:954
+#, python-format
+msgid "Booking for %s has been %s"
+msgstr ""
+
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:146
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:720
+#: ../wallace/module_invitationpolicy.py:374
+#, python-format
+msgid "\"%(summary)s\" has been %(status)s"
+msgstr ""
+
+#. check for notification message
+#. this notification should be suppressed until mark has replied, too
+#. this triggers an additional notification
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:616
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:622
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:635
+#: ../wallace/module_invitationpolicy.py:925
+#, python-format
+msgid "\"%s\" has been updated"
+msgstr ""
+
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:627
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:639
+msgid "PENDING"
+msgstr ""
+
+#: ../wallace/__init__.py:57
+#, python-format
+msgid "Wallace modules: %r"
+msgstr ""
+
+#: ../wallace/__init__.py:69
+#, python-format
+msgid "Module %s.execute() failed on message %r with error: %s"
+msgstr ""
+
+#: ../wallace/__init__.py:78
#, python-format
msgid "Worker process %s initializing"
msgstr ""
-#: ../wallace/__init__.py:81
+#: ../wallace/__init__.py:100
msgid "Bind address for Wallace."
msgstr ""
-#: ../wallace/__init__.py:107
+#: ../wallace/__init__.py:126
msgid "Port that Wallace is supposed to use."
msgstr ""
-#: ../wallace/__init__.py:158
+#: ../wallace/__init__.py:177
#, python-format
msgid "Could not bind to socket on port %d on bind "
msgstr ""
-#: ../wallace/__init__.py:170
+#: ../wallace/__init__.py:189
msgid "Could not shut down socket"
msgstr ""
-#: ../wallace/__init__.py:227
+#: ../wallace/__init__.py:253
msgid "Accepted connection"
msgstr ""
-#: ../wallace/__init__.py:398
+#: ../wallace/__init__.py:428
#, python-format
msgid "Could not write pid file %s"
msgstr ""
-#: ../wallace/module_optout.py:61 ../wallace/module_resources.py:93
+#: ../wallace/module_footer.py:60 ../wallace/module_gpgencrypt.py:60
+#: ../wallace/module_invitationpolicy.py:168 ../wallace/module_optout.py:61
+#: ../wallace/module_resources.py:120
#, python-format
msgid "Issuing callback after processing to stage %s"
msgstr ""
-#: ../wallace/module_optout.py:62 ../wallace/module_resources.py:99
+#: ../wallace/module_footer.py:61 ../wallace/module_gpgencrypt.py:61
+#: ../wallace/module_invitationpolicy.py:170 ../wallace/module_optout.py:62
+#: ../wallace/module_resources.py:126
#, python-format
msgid "Testing cb_action_%s()"
msgstr ""
-#: ../wallace/module_optout.py:64 ../wallace/module_resources.py:102
+#: ../wallace/module_footer.py:63 ../wallace/module_gpgencrypt.py:63
+#: ../wallace/module_invitationpolicy.py:172 ../wallace/module_optout.py:64
+#: ../wallace/module_resources.py:129
#, python-format
msgid "Attempting to execute cb_action_%s()"
msgstr ""
+#: ../wallace/module_footer.py:67
+#, python-format
+msgid "Executing module footer for %r, %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:66
+#, python-format
+msgid "Executing module gpgencrypt for %r, %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:98
+msgid "Message is already encrypted (app/pgp-enc content-type)"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:102
+msgid "Message already encrypted by main content-type header"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:131
+msgid ""
+"Configured to encrypt to a key not configured, and strict policy enabled. "
+"Bailing out."
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:134
+msgid ""
+"Configured to encrypt to a key not configured, but continuing anyway (see "
+"'gpgencrypt_strict')."
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:171
+#, python-format
+msgid "Recipients: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:183
+#, python-format
+msgid "Current keys: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:188
+#, python-format
+msgid "Retrieving key for recipient: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:192 ../wallace/module_gpgencrypt.py:208
+#, python-format
+msgid "Found matching address %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:200
+#, python-format
+msgid "Found matching address %r in remote keys"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:232
+#, python-format
+msgid "An error occurred: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:154
+#, python-format
+msgid "Invitation policy called for %r, %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:211
+#: ../wallace/module_resources.py:169
+#, python-format
+msgid "Failed to parse iTip events from message: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:215
+msgid ""
+"Message is not an iTip message or does not contain any (valid) iTip events."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:219
+#, python-format
+msgid ""
+"iTip events attached to this message contain the following information: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:232
+#, python-format
+msgid "No itips, no users, pass along %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:235
+#, python-format
+msgid "iTips, but no users, pass along %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:255
+#, python-format
+msgid "No user attendee matching envelope recipient %s, skip message"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:259
+#, python-format
+msgid "Receiving user: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:284
+#, python-format
+msgid "Apply invitation policy %r for domain %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:295
+#, python-format
+msgid "Ignoring '%s' iTip method"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:299
+#, python-format
+msgid "iTip message %r consumed by the invitationpolicy module"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:315
+msgid "Pass invitation for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:320
+#, python-format
+msgid "Receiving Attendee: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:339
+#, python-format
+msgid "Existing event: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:350
+#, python-format
+msgid "Precondition for event %r fulfilled: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:386
+#, python-format
+msgid "No RSVP for recipient %r requested"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:412
+msgid "Pass reply for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:419
+#, python-format
+msgid "Sender Attendee: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:431
+#, python-format
+msgid ""
+"The iTip reply sequence (%r) doesn't match the referred event version (%r). "
+"Forwarding to Inbox."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:437
+#, python-format
+msgid "Auto-updating event %r on iTip REPLY"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:459
+#: ../wallace/module_invitationpolicy.py:488
+msgid ""
+"The event referred by this reply was not found in the user's calendars. "
+"Forwarding to Inbox."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:472
+msgid "Pass cancellation for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:517
+#, python-format
+msgid "Checking if email address %r belongs to a local user"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:522
+#, python-format
+msgid "User DN: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:524
+#, python-format
+msgid "No user record(s) found for %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:577
+#, python-format
+msgid "User record doesn't have the mailbox attribute %r set"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:590
+#, python-format
+msgid "IMAP proxy authentication failed: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:612
+#, python-format
+msgid "List calendar folders for user %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:628
+#, python-format
+msgid "IMAP metadata for %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:658
+#, python-format
+msgid "Searching folder %r for event %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:670
+#: ../wallace/module_invitationpolicy.py:709
+#: ../wallace/module_resources.py:486
+#, python-format
+msgid "Failed to parse event from message %s/%s: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:696
+#, python-format
+msgid "Listing events from folder %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:715
+#, python-format
+msgid "Existing event %r conflicts with invitation %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:722
+#: ../wallace/module_resources.py:344
+#, python-format
+msgid "start: %r, end: %r, total: %r, messages: %d"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:748
+#, python-format
+msgid "%r is locked, waiting..."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:811
+#, python-format
+msgid "Failed to save event: no calendar folder found for user %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:814
+#, python-format
+msgid "Save event %r to user calendar %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:827
+#, python-format
+msgid "Failed to save event to user calendar at %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:843
+#, python-format
+msgid "Delete event %r in %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:863
+#, python-format
+msgid "Compose participation status summary for event %r to user %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:901
+#, python-format
+msgid ""
+"Waiting for more automated replies (got %d of %d); skipping notification"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:998
+#, python-format
+msgid "Updated %s's copy of %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1001
+#, python-format
+msgid "Attendee %s's copy of %r not found"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1004
+#, python-format
+msgid "Attendee %r not found in LDAP"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1008
+#, python-format
+msgid ""
+"\n"
+" %(name)s has %(status)s your invitation for %(summary)s.\n"
+"\n"
+" *** This is an automated response sent by the Kolab Invitation system ***\n"
+" "
+msgstr ""
+
#. modules.next_module('optout')
#: ../wallace/module_optout.py:70
#, python-format
@@ -2176,171 +3187,256 @@ msgstr ""
msgid "Could not send request to optout_url %s"
msgstr ""
-#: ../wallace/module_resources.py:80
+#: ../wallace/module_resources.py:110
#, python-format
msgid "Resource Management called for %r, %r"
msgstr ""
-#: ../wallace/module_resources.py:143
+#: ../wallace/module_resources.py:174
msgid "Message is not an iTip message or does not contain any "
msgstr ""
-#: ../wallace/module_resources.py:151
+#: ../wallace/module_resources.py:182
msgid "iTip events attached to this message contain the "
msgstr ""
-#: ../wallace/module_resources.py:171
+#: ../wallace/module_resources.py:205
msgid "Not an iTip message, but sent to resource nonetheless. Reject message"
msgstr ""
-#: ../wallace/module_resources.py:179
-msgid "No itips, no resources, pass along"
+#: ../wallace/module_resources.py:213
+#, python-format
+msgid "No itips, no resources, pass along %r"
msgstr ""
-#: ../wallace/module_resources.py:183
-msgid "iTips, but no resources, pass along"
+#: ../wallace/module_resources.py:216
+#, python-format
+msgid "iTips, but no resources, pass along %r"
msgstr ""
-#: ../wallace/module_resources.py:215
+#: ../wallace/module_resources.py:225
#, python-format
-msgid "Resources: %r"
+msgid "No resource attendees matching envelope recipient %s, Reject message"
msgstr ""
-#: ../wallace/module_resources.py:233
+#: ../wallace/module_resources.py:234
#, python-format
-msgid "Checking events in resource folder %r"
+msgid "Resources: %r; %r"
msgstr ""
-#: ../wallace/module_resources.py:240
+#: ../wallace/module_resources.py:244
#, python-format
-msgid "Mailbox for resource %r doesn't exist"
+msgid "Receiving Resource: %r; %r"
msgstr ""
-#: ../wallace/module_resources.py:253
+#: ../wallace/module_resources.py:252
#, python-format
-msgid "Fetching message UID %r from folder %r"
+msgid "Recipient %r is non-participant, ignoring message"
msgstr ""
-#: ../wallace/module_resources.py:292
+#: ../wallace/module_resources.py:279
#, python-format
-msgid "Event %r conflicts with event "
+msgid "Accept invitation for individual resource %r / %r"
msgstr ""
-#: ../wallace/module_resources.py:305
+#: ../wallace/module_resources.py:308
#, python-format
-msgid "start: %r, end: %r, total: %r, messages: %r"
+msgid "Delegate invitation for resource collection %r to %r"
msgstr ""
-#: ../wallace/module_resources.py:312
+#: ../wallace/module_resources.py:340
+#, python-format
+msgid "Failed to read resource calendar for %r: %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:350
#, python-format
msgid "Polling for resource %r"
msgstr ""
-#: ../wallace/module_resources.py:316
+#: ../wallace/module_resources.py:353
#, python-format
msgid "Resource %r has been popped from the list"
msgstr ""
-#: ../wallace/module_resources.py:323
+#: ../wallace/module_resources.py:357
msgid "Resource is a collection"
msgstr ""
-#: ../wallace/module_resources.py:371 ../wallace/module_resources.py:421
+#: ../wallace/module_resources.py:368
#, python-format
-msgid "Adding event to %r"
+msgid "Removed conflicting resources from %r: (%r) => %r"
msgstr ""
-#: ../wallace/module_resources.py:470
+#: ../wallace/module_resources.py:380
#, python-format
-msgid "Method %r not really interesting for us."
+msgid "Conflicting events: %r for resource %r"
msgstr ""
-#: ../wallace/module_resources.py:478
+#: ../wallace/module_resources.py:397
#, python-format
-msgid "Raw iTip payload: %s"
+msgid "Delegate to another resource collection member: %r to %r"
msgstr ""
-#: ../wallace/module_resources.py:488
-msgid "Could not read iTip from message."
+#: ../wallace/module_resources.py:459
+#, python-format
+msgid "Checking events in resource folder %r"
msgstr ""
-#: ../wallace/module_resources.py:510
-msgid "iTip event without a start"
+#: ../wallace/module_resources.py:475
+#, python-format
+msgid "Fetching message UID %r from folder %r"
msgstr ""
-#. end if c.name == "VEVENT"
-#. end for c in cal.walk()
-#. end if part.get_content_type() == "text/calendar"
-#. end for part in message.walk()
-#. if message.is_multipart()
-#: ../wallace/module_resources.py:540
-msgid "Message is not an iTip message (non-multipart message)"
+#: ../wallace/module_resources.py:498
+#, python-format
+msgid "Event %r conflicts with event %r"
msgstr ""
-#: ../wallace/module_resources.py:561
+#: ../wallace/module_resources.py:525
#, python-format
-msgid "Checking if email address %r belongs to a resource (collection)"
+msgid "Adding event to %r: %r"
msgstr ""
-#: ../wallace/module_resources.py:572 ../wallace/module_resources.py:646
-#: ../wallace/module_resources.py:696
+#: ../wallace/module_resources.py:573
#, python-format
-msgid "No resource (collection) records found for %r"
+msgid "Failed to save event to resource calendar at %r: %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:590
+#, python-format
+msgid "Delete resource calendar object %r in %r: %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:633
+#, python-format
+msgid "Checking if email address %r belongs to a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:580 ../wallace/module_resources.py:654
-#: ../wallace/module_resources.py:704
+#: ../wallace/module_resources.py:641 ../wallace/module_resources.py:709
+#: ../wallace/module_resources.py:743
#, python-format
msgid "Resource record(s): %r"
msgstr ""
-#: ../wallace/module_resources.py:586 ../wallace/module_resources.py:661
-#: ../wallace/module_resources.py:711
+#: ../wallace/module_resources.py:643 ../wallace/module_resources.py:711
+#: ../wallace/module_resources.py:746
+#, python-format
+msgid "No resource (collection) records found for %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:647 ../wallace/module_resources.py:715
+#: ../wallace/module_resources.py:750
#, python-format
msgid "Resource record: %r"
msgstr ""
-#: ../wallace/module_resources.py:605
+#: ../wallace/module_resources.py:667
#, python-format
msgid "Raw itip_events: %r"
msgstr ""
-#: ../wallace/module_resources.py:613
+#: ../wallace/module_resources.py:675
#, python-format
msgid "Raw set of attendees: %r"
msgstr ""
-#: ../wallace/module_resources.py:621
+#: ../wallace/module_resources.py:683
#, python-format
msgid "Raw set of resources: %r"
msgstr ""
-#: ../wallace/module_resources.py:635
+#: ../wallace/module_resources.py:702
#, python-format
msgid "Checking if attendee %r is a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:668 ../wallace/module_resources.py:714
+#: ../wallace/module_resources.py:718 ../wallace/module_resources.py:752
msgid "Resource reservation made but no resource records found"
msgstr ""
-#: ../wallace/module_resources.py:686
+#: ../wallace/module_resources.py:737
#, python-format
msgid "Checking if resource %r is a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:718
+#: ../wallace/module_resources.py:755
msgid "The following resources are being referred to in the "
msgstr ""
+#: ../wallace/module_resources.py:894
+#, python-format
+msgid ""
+"\n"
+" *** This is an automated response, please do not reply! ***\n"
+"\n"
+" Your reservation was delegated to \"%s\" which is available for the requested time.\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:905
+#, python-format
+msgid ""
+"\n"
+" *** This is an automated response, please do not reply! ***\n"
+" \n"
+" We hereby inform you that your reservation was %s.\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:912
+#, python-format
+msgid ""
+"\n"
+" If you have questions about this reservation, please contact\n"
+" %s <%s> %s\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:941
+#, python-format
+msgid "Sending booking notification for event %r to %r from %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:954
+msgid "failed"
+msgstr ""
+
+#: ../wallace/module_resources.py:973
+#, python-format
+msgid ""
+"\n"
+" The resource booking for %(resource)s by %(orgname)s <%(orgemail)s> has been %(status)s for %(date)s.\n"
+"\n"
+" *** This is an automated message, sent to you as the resource owner. ***\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:979
+#, python-format
+msgid ""
+"\n"
+" A reservation request for %(resource)s could not be processed automatically.\n"
+" Please contact %(orgname)s <%(orgemail)s> who requested this resource for %(date)s. Subject: %(summary)s.\n"
+"\n"
+" *** This is an automated message, sent to you as the resource owner. ***\n"
+" "
+msgstr ""
+
#. This is a nested module
#: ../wallace/modules.py:97
#, python-format
msgid "Module Group: %s"
msgstr ""
-#: ../wallace/modules.py:108 ../wallace/modules.py:113
-msgid "No such module."
+#: ../wallace/modules.py:108
+#, python-format
+msgid "No such module %r in modules %r (1)."
+msgstr ""
+
+#: ../wallace/modules.py:113
+#, python-format
+msgid "No such module %r in modules %r (2)."
msgstr ""
#: ../wallace/modules.py:119
@@ -2353,33 +3449,33 @@ msgstr ""
msgid "Deferring message in %s (by module %s)"
msgstr ""
-#: ../wallace/modules.py:133
+#: ../wallace/modules.py:134
#, python-format
msgid "The time when the message was sent: %r"
msgstr ""
-#: ../wallace/modules.py:134
+#: ../wallace/modules.py:135
#, python-format
msgid "The time now: %r"
msgstr ""
-#: ../wallace/modules.py:135
+#: ../wallace/modules.py:136
#, python-format
msgid "The time delta: %r"
msgstr ""
#. TODO: Send NDR back to user
-#: ../wallace/modules.py:139
+#: ../wallace/modules.py:140
#, python-format
msgid "Message in file %s older then 5 days, deleting"
msgstr ""
-#: ../wallace/modules.py:164
+#: ../wallace/modules.py:165
#, python-format
msgid "Rejecting message in %s (by module %s)"
msgstr ""
-#: ../wallace/modules.py:185
+#: ../wallace/modules.py:186
#, python-format
msgid ""
"This is the email system Wallace at %s.\n"
@@ -2394,19 +3490,29 @@ msgid ""
"recipients.\n"
msgstr ""
-#: ../wallace/modules.py:200
+#: ../wallace/modules.py:201
#, python-format
msgid ""
"X-Wallace-Module: %s\n"
"X-Wallace-Result: REJECT\n"
msgstr ""
-#: ../wallace/modules.py:253
+#: ../wallace/modules.py:260
#, python-format
msgid "Accepting message in %s (by module %s)"
msgstr ""
-#: ../wallace/modules.py:326
+#: ../wallace/modules.py:262
+#, python-format
+msgid "Accepting message in: %r"
+msgstr ""
+
+#: ../wallace/modules.py:269
+#, python-format
+msgid "recipients: %r"
+msgstr ""
+
+#: ../wallace/modules.py:347
#, python-format
msgid "Module '%s' already registered"
msgstr ""
diff --git a/po/pykolab.pot b/po/pykolab.pot
index c3c276a..389ca9b 100644
--- a/po/pykolab.pot
+++ b/po/pykolab.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2014-02-21 02:15-0500\n"
+"POT-Creation-Date: 2014-07-10 07:21-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
"Language-Team: LANGUAGE <LL at li.org>\n"
@@ -291,66 +291,66 @@ msgstr ""
msgid "No objections"
msgstr ""
-#: ../conf.py:37 ../kolab.py:34 ../saslauthd.py:33
+#: ../conf.py:37 ../kolab-cli.py:34 ../saslauthd.py:33
msgid "Cannot load pykolab/logger.py:"
msgstr ""
#: ../kolabd/__init__.py:49 ../saslauthd/__init__.py:51
-#: ../wallace/__init__.py:68
+#: ../wallace/__init__.py:85
msgid "Daemon Options"
msgstr ""
#: ../kolabd/__init__.py:56 ../saslauthd/__init__.py:58
-#: ../wallace/__init__.py:75
+#: ../wallace/__init__.py:92
msgid "Fork to the background."
msgstr ""
#: ../kolabd/__init__.py:65 ../saslauthd/__init__.py:67
-#: ../wallace/__init__.py:101
+#: ../wallace/__init__.py:118
msgid "Path to the PID file to use."
msgstr ""
#: ../kolabd/__init__.py:74 ../saslauthd/__init__.py:76
-#: ../wallace/__init__.py:118
+#: ../wallace/__init__.py:135
msgid "Run as user USERNAME"
msgstr ""
#: ../kolabd/__init__.py:84 ../saslauthd/__init__.py:86
-#: ../wallace/__init__.py:92
+#: ../wallace/__init__.py:109
msgid "Run as group GROUPNAME"
msgstr ""
#: ../kolabd/__init__.py:122 ../pykolab/logger.py:139 ../pykolab/utils.py:234
-#: ../saslauthd/__init__.py:292 ../wallace/__init__.py:312
+#: ../saslauthd/__init__.py:292 ../wallace/__init__.py:329
#, python-format
msgid "Group %s does not exist"
msgstr ""
#: ../kolabd/__init__.py:131 ../saslauthd/__init__.py:301
-#: ../wallace/__init__.py:321
+#: ../wallace/__init__.py:338
#, python-format
msgid "Switching real and effective group id to %d"
msgstr ""
#: ../kolabd/__init__.py:153 ../pykolab/logger.py:159 ../pykolab/utils.py:258
-#: ../saslauthd/__init__.py:323 ../wallace/__init__.py:343
+#: ../saslauthd/__init__.py:323 ../wallace/__init__.py:360
#, python-format
msgid "User %s does not exist"
msgstr ""
#: ../kolabd/__init__.py:163 ../saslauthd/__init__.py:333
-#: ../wallace/__init__.py:353
+#: ../wallace/__init__.py:370
#, python-format
msgid "Switching real and effective user id to %d"
msgstr ""
#: ../kolabd/__init__.py:172 ../saslauthd/__init__.py:342
-#: ../wallace/__init__.py:362
+#: ../wallace/__init__.py:379
msgid "Could not change real and effective uid and/or gid"
msgstr ""
#: ../kolabd/__init__.py:192 ../saslauthd/__init__.py:133
-#: ../wallace/__init__.py:382
+#: ../wallace/__init__.py:399
msgid "Interrupted by user"
msgstr ""
@@ -359,7 +359,7 @@ msgid "Traceback occurred, please report a "
msgstr ""
#: ../kolabd/__init__.py:203 ../saslauthd/__init__.py:141
-#: ../wallace/__init__.py:391
+#: ../wallace/__init__.py:408
#, python-format
msgid "Type Error: %s"
msgstr ""
@@ -368,7 +368,7 @@ msgstr ""
msgid "Could not connect to LDAP, is it running?"
msgstr ""
-#: ../kolabd/__init__.py:233 ../pykolab/auth/ldap/__init__.py:2110
+#: ../kolabd/__init__.py:233 ../pykolab/auth/ldap/__init__.py:2137
#: ../pykolab/cli/cmd_sync.py:36
msgid "Listing domains..."
msgstr ""
@@ -442,7 +442,7 @@ msgstr ""
msgid "Updating timestamp for cache entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/cache.py:154
+#: ../pykolab/auth/ldap/cache.py:155
#, python-format
msgid "Updating result_attribute for cache entry %r"
msgstr ""
@@ -668,95 +668,95 @@ msgstr ""
msgid "Invalid DN, username and/or password."
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1234 ../pykolab/auth/ldap/__init__.py:1247
-#: ../pykolab/auth/ldap/__init__.py:1603 ../pykolab/auth/ldap/__init__.py:1616
+#: ../pykolab/auth/ldap/__init__.py:1236 ../pykolab/auth/ldap/__init__.py:1249
+#: ../pykolab/auth/ldap/__init__.py:1614 ../pykolab/auth/ldap/__init__.py:1627
#, python-format
msgid "Found a subject %r with access %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1354
+#: ../pykolab/auth/ldap/__init__.py:1356
#, python-format
msgid "Entry %s attribute value: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1362
+#: ../pykolab/auth/ldap/__init__.py:1364
#, python-format
msgid "imap.user_mailbox_server(%r) result: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1673 ../pykolab/auth/ldap/__init__.py:1830
+#: ../pykolab/auth/ldap/__init__.py:1684 ../pykolab/auth/ldap/__init__.py:1853
#, python-format
msgid "Result from recipient policy: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:1885
+#: ../pykolab/auth/ldap/__init__.py:1908
#, python-format
msgid "Kolab user %s does not have a result attribute %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2040
+#: ../pykolab/auth/ldap/__init__.py:2067
#, python-format
msgid "Finding domain root dn for domain %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2137
+#: ../pykolab/auth/ldap/__init__.py:2164
msgid "Authentication database DOWN"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2221 ../pykolab/auth/ldap/__init__.py:2269
+#: ../pykolab/auth/ldap/__init__.py:2248 ../pykolab/auth/ldap/__init__.py:2296
#, python-format
msgid "Entry type: %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2294
+#: ../pykolab/auth/ldap/__init__.py:2321
#, python-format
msgid "Done with _synchronize_callback() for entry %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2366
+#: ../pykolab/auth/ldap/__init__.py:2393
msgid "LDAP Search Result Data Entry:"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2382
+#: ../pykolab/auth/ldap/__init__.py:2409
msgid "Entry Change Notification attributes:"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2387
+#: ../pykolab/auth/ldap/__init__.py:2414
#, python-format
msgid "Change Type: %r (%r)"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2395
+#: ../pykolab/auth/ldap/__init__.py:2422
#, python-format
msgid "Previous DN: %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2450
+#: ../pykolab/auth/ldap/__init__.py:2477
#, python-format
msgid "Object %s searched no longer exists"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2460
+#: ../pykolab/auth/ldap/__init__.py:2487
#, python-format
msgid "%d results..."
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2563
+#: ../pykolab/auth/ldap/__init__.py:2590
#, python-format
msgid "Searching with filter %r"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2615
+#: ../pykolab/auth/ldap/__init__.py:2642
#, python-format
msgid "Checking for support for %s on %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2634
+#: ../pykolab/auth/ldap/__init__.py:2661
#, python-format
msgid "Found support for %s"
msgstr ""
-#: ../pykolab/auth/ldap/__init__.py:2679
+#: ../pykolab/auth/ldap/__init__.py:2706
#, python-format
msgid "An error occured using %s: %r"
msgstr ""
@@ -916,7 +916,10 @@ msgstr ""
#: ../pykolab/cli/cmd_list_mailbox_metadata.py:54
#: ../pykolab/cli/cmd_set_mailbox_acl.py:54
#: ../pykolab/cli/cmd_set_mailbox_metadata.py:66
-#: ../pykolab/cli/cmd_set_quota.py:46
+#: ../pykolab/cli/cmd_set_quota.py:46 ../tests/unit/test-015-translate.py:12
+#: ../tests/unit/test-015-translate.py:16
+#: ../tests/unit/test-015-translate.py:18
+#: ../tests/unit/test-015-translate.py:20
msgid "Folder name"
msgstr ""
@@ -1063,7 +1066,7 @@ msgstr ""
#: ../pykolab/cli/cmd_remove_user_subscription.py:92
#, python-format
-msgid "User %s not be unsubscribed from any folders."
+msgid "User %s was not unsubscribed from any folders."
msgstr ""
#: ../pykolab/cli/cmd_rename_mailbox.py:52
@@ -1432,76 +1435,76 @@ msgstr ""
msgid "No command supplied"
msgstr ""
-#: ../pykolab/conf/__init__.py:411
+#: ../pykolab/conf/__init__.py:416
msgid "Insufficient options. Need section, key and value -in that order."
msgstr ""
-#: ../pykolab/conf/__init__.py:414
+#: ../pykolab/conf/__init__.py:419
#, python-format
msgid "No section '%s' exists."
msgstr ""
-#: ../pykolab/conf/__init__.py:445
+#: ../pykolab/conf/__init__.py:461
#, python-format
msgid "Setting %s to %r (from the default values for CLI options)"
msgstr ""
-#: ../pykolab/conf/__init__.py:518
+#: ../pykolab/conf/__init__.py:534
#, python-format
msgid "Could not execute configuration function: %s"
msgstr ""
-#: ../pykolab/conf/__init__.py:526
+#: ../pykolab/conf/__init__.py:542
#, python-format
msgid "Option %s/%s does not exist in config file %s, pulling from defaults"
msgstr ""
-#: ../pykolab/conf/__init__.py:534 ../pykolab/conf/__init__.py:537
+#: ../pykolab/conf/__init__.py:550 ../pykolab/conf/__init__.py:553
msgid "Option does not exist in defaults."
msgstr ""
-#: ../pykolab/conf/__init__.py:547
+#: ../pykolab/conf/__init__.py:563
#, python-format
msgid "Configuration file %s not readable."
msgstr ""
-#: ../pykolab/conf/__init__.py:550
+#: ../pykolab/conf/__init__.py:566
#, python-format
msgid "Configuration file %s does not exist."
msgstr ""
-#: ../pykolab/conf/__init__.py:555
+#: ../pykolab/conf/__init__.py:571
msgid ""
"WARNING: A negative debug level value does not make this program be any more "
"silent."
msgstr ""
-#: ../pykolab/conf/__init__.py:561
+#: ../pykolab/conf/__init__.py:577
msgid "This program has 9 levels of verbosity. Using the maximum of 9."
msgstr ""
-#: ../pykolab/conf/__init__.py:569 ../pykolab/conf/__init__.py:575
+#: ../pykolab/conf/__init__.py:585 ../pykolab/conf/__init__.py:591
msgid "Cannot start SASL authentication daemon"
msgstr ""
-#: ../pykolab/conf/__init__.py:586
+#: ../pykolab/conf/__init__.py:602
msgid "No imaplib library found."
msgstr ""
-#: ../pykolab/conf/__init__.py:596
+#: ../pykolab/conf/__init__.py:612
msgid "No LMTP class found in the smtplib library."
msgstr ""
-#: ../pykolab/conf/__init__.py:606
+#: ../pykolab/conf/__init__.py:622
msgid "No SMTP class found in the smtplib library."
msgstr ""
-#: ../pykolab/conf/__init__.py:620
+#: ../pykolab/conf/__init__.py:636
#, python-format
msgid "Found you specified a specific set of items to test: %s"
msgstr ""
-#: ../pykolab/conf/__init__.py:628
+#: ../pykolab/conf/__init__.py:644
#, python-format
msgid "Selectively selecting: %s"
msgstr ""
@@ -1686,169 +1689,174 @@ msgstr ""
msgid "%r has no attribute %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:390 ../pykolab/imap/__init__.py:425
+#: ../pykolab/imap/__init__.py:393 ../pykolab/imap/__init__.py:428
#, python-format
msgid "Creating new shared folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:450 ../pykolab/imap/__init__.py:672
+#: ../pykolab/imap/__init__.py:453 ../pykolab/imap/__init__.py:675
#, python-format
msgid "Downcasing mailbox name %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:454
+#: ../pykolab/imap/__init__.py:457
#, python-format
msgid "Creating new mailbox for user %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:467
+#: ../pykolab/imap/__init__.py:470
msgid "Waiting for the Cyrus IMAP Murder to settle..."
msgstr ""
-#: ../pykolab/imap/__init__.py:513
+#: ../pykolab/imap/__init__.py:516
#, python-format
msgid "Creating additional folders for user %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:532
+#: ../pykolab/imap/__init__.py:535
#, python-format
msgid "Waiting for the Cyrus murder to settle... %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:544
+#: ../pykolab/imap/__init__.py:547
#, python-format
msgid "Correcting additional folder name from %r to %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:550
+#: ../pykolab/imap/__init__.py:553
#, python-format
msgid "Mailbox already exists: %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:590
+#: ../pykolab/imap/__init__.py:593
msgid "Subscribing user to the additional folders"
msgstr ""
-#: ../pykolab/imap/__init__.py:604
+#: ../pykolab/imap/__init__.py:607
msgid "Using the following tests for folder subscriptions:"
msgstr ""
-#: ../pykolab/imap/__init__.py:606
+#: ../pykolab/imap/__init__.py:609
#, python-format
msgid " %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:609
+#: ../pykolab/imap/__init__.py:612
#, python-format
msgid "Folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:621
+#: ../pykolab/imap/__init__.py:624
#, python-format
msgid "Subscribing %s to folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:625
+#: ../pykolab/imap/__init__.py:628
#, python-format
msgid "Subscribing %s to folder %s failed: %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:655
+#: ../pykolab/imap/__init__.py:658
#, python-format
msgid "Could not rename %s to reside on partition %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:688 ../pykolab/imap/__init__.py:764
+#: ../pykolab/imap/__init__.py:691
+#, python-format
+msgid "INBOX folder to rename (%s) does not exist"
+msgstr ""
+
+#: ../pykolab/imap/__init__.py:694 ../pykolab/imap/__init__.py:770
#, python-format
msgid "Renaming INBOX from %s to %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:692
+#: ../pykolab/imap/__init__.py:698
#, python-format
msgid "Could not rename INBOX folder %s to %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:694 ../pykolab/imap/__init__.py:768
+#: ../pykolab/imap/__init__.py:700 ../pykolab/imap/__init__.py:774
#, python-format
msgid "Moving INBOX folder %s won't succeed as target folder %s already exists"
msgstr ""
-#: ../pykolab/imap/__init__.py:698
+#: ../pykolab/imap/__init__.py:704
#, python-format
msgid "Server for mailbox %r is %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:706
+#: ../pykolab/imap/__init__.py:712
#, python-format
msgid "Looking for folder '%s', we found folders: %r"
msgstr ""
-#: ../pykolab/imap/__init__.py:729
+#: ../pykolab/imap/__init__.py:735
#, python-format
msgid "Setting ACL rights %s for subject %s on folder "
msgstr ""
-#: ../pykolab/imap/__init__.py:740
+#: ../pykolab/imap/__init__.py:746
#, python-format
msgid "Removing ACL rights %s for subject %s on folder "
msgstr ""
-#: ../pykolab/imap/__init__.py:761
+#: ../pykolab/imap/__init__.py:767
#, python-format
msgid "Found old INBOX folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:770
+#: ../pykolab/imap/__init__.py:776
#, python-format
msgid "Did not find old folder user/%s to rename"
msgstr ""
-#: ../pykolab/imap/__init__.py:772
+#: ../pykolab/imap/__init__.py:778
msgid "Value for user is not a dictionary"
msgstr ""
#. TODO: Go in fact correct the quota.
-#: ../pykolab/imap/__init__.py:840
+#: ../pykolab/imap/__init__.py:846
#, python-format
msgid "Cannot get current IMAP quota for folder %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:853
+#: ../pykolab/imap/__init__.py:859
#, python-format
msgid "Quota for %s currently is %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:859
+#: ../pykolab/imap/__init__.py:865
#, python-format
msgid "Adjusting authentication database quota for folder %s to %d"
msgstr ""
-#: ../pykolab/imap/__init__.py:864
+#: ../pykolab/imap/__init__.py:870
#, python-format
msgid "Correcting quota for %s to %s (currently %s)"
msgstr ""
-#: ../pykolab/imap/__init__.py:941
+#: ../pykolab/imap/__init__.py:947
#, python-format
msgid "Checking folder: %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:946
+#: ../pykolab/imap/__init__.py:952
#, python-format
msgid "Folder has no corresponding user (1): %s"
msgstr ""
-#: ../pykolab/imap/__init__.py:949
+#: ../pykolab/imap/__init__.py:955
#, python-format
msgid "Folder has no corresponding user (2): %s"
msgstr ""
#. We got user identifier only
-#: ../pykolab/imap/__init__.py:964
+#: ../pykolab/imap/__init__.py:970
msgid "Please don't give us just a user identifier"
msgstr ""
-#: ../pykolab/imap/__init__.py:967
+#: ../pykolab/imap/__init__.py:973
#, python-format
msgid "Deleting folder %s"
msgstr ""
@@ -1857,6 +1865,44 @@ msgstr ""
msgid "Returning thread local configuration"
msgstr ""
+#: ../pykolab/itip/__init__.py:43
+#, python-format
+msgid "Method %r not really interesting for us."
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:49
+#, python-format
+msgid "Raw iTip payload: %s"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:59
+msgid "Could not read iTip from message."
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:67
+#, python-format
+msgid "Duplicate iTip object: %s"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:90
+msgid "iTip event without a start"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:132
+msgid "Message is not an iTip message (non-multipart message)"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:225
+#, python-format
+msgid "Failed to compose iTip reply message: %r"
+msgstr ""
+
+#: ../pykolab/itip/__init__.py:236 ../wallace/module_invitationpolicy.py:936
+#: ../wallace/module_resources.py:964
+#, python-format
+msgid "SMTP sendmail error: %r"
+msgstr ""
+
#: ../pykolab/logger.py:173 ../pykolab/logger.py:179
#, python-format
msgid "Could not change permissions on %s: %r"
@@ -1991,6 +2037,16 @@ msgid ""
"Attribute substitution for 'alternative_mail' failed in Recipient Policy"
msgstr ""
+#: ../pykolab/plugins/roundcubedb/__init__.py:48
+#, python-format
+msgid "user_delete: %r"
+msgstr ""
+
+#: ../pykolab/plugins/roundcubedb/__init__.py:55
+#: ../pykolab/setup/setup_roundcube.py:160
+msgid "Roundcube installation path not found."
+msgstr ""
+
#: ../pykolab/plugins/sievemgmt/__init__.py:51
msgid "Wrong number of arguments for sieve management plugin"
msgstr ""
@@ -2007,11 +2063,11 @@ msgstr ""
msgid "No such component."
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:45
+#: ../pykolab/setup/setup_freebusy.py:46
msgid "Setup Free/Busy."
msgstr ""
-#: ../pykolab/setup/setup_freebusy.py:49
+#: ../pykolab/setup/setup_freebusy.py:50
msgid "Free/Busy is not installed on this system"
msgstr ""
@@ -2033,7 +2089,7 @@ msgstr ""
#: ../pykolab/setup/setup_imap.py:173 ../pykolab/setup/setup_kolabd.py:81
#: ../pykolab/setup/setup_ldap.py:426 ../pykolab/setup/setup_mta.py:455
-#: ../pykolab/setup/setup_mysql.py:58 ../pykolab/setup/setup_roundcube.py:234
+#: ../pykolab/setup/setup_mysql.py:58 ../pykolab/setup/setup_roundcube.py:237
#: ../pykolab/setup/setup_syncroton.py:102
msgid "Could not configure to start on boot, the "
msgstr ""
@@ -2371,10 +2427,6 @@ msgstr ""
msgid "Could not start the MySQL database service."
msgstr ""
-#. Regular old-fashioned Enterprise Linux
-#. Debian
-#. (open)SUSE
-#. "Unbreakable" Linux from Oracle
#: ../pykolab/setup/setup_mysql.py:71
msgid "What MySQL server are we setting up?"
msgstr ""
@@ -2390,7 +2442,7 @@ msgid ""
msgstr ""
#: ../pykolab/setup/setup_mysql.py:82 ../pykolab/setup/setup_mysql.py:99
-#: ../pykolab/setup/setup_roundcube.py:180
+#: ../pykolab/setup/setup_roundcube.py:183
#: ../pykolab/setup/setup_syncroton.py:63
msgid "MySQL root password"
msgstr ""
@@ -2486,21 +2538,17 @@ msgstr ""
msgid "MySQL roundcube password"
msgstr ""
-#: ../pykolab/setup/setup_roundcube.py:117
+#: ../pykolab/setup/setup_roundcube.py:120
#, python-format
msgid "Using template file %r"
msgstr ""
-#: ../pykolab/setup/setup_roundcube.py:124
+#: ../pykolab/setup/setup_roundcube.py:127
#, python-format
msgid "Successfully compiled template %r, writing out to %r"
msgstr ""
-#: ../pykolab/setup/setup_roundcube.py:157
-msgid "Roundcube installation path not found."
-msgstr ""
-
-#: ../pykolab/setup/setup_roundcube.py:225
+#: ../pykolab/setup/setup_roundcube.py:228
#: ../pykolab/setup/setup_syncroton.py:93
msgid "Could not start the webserver server service."
msgstr ""
@@ -2570,29 +2618,29 @@ msgstr ""
msgid "Could not change the permissions on %s"
msgstr ""
-#: ../pykolab/utils.py:476
+#: ../pykolab/utils.py:479
#, python-format
msgid "Transliterating string %r with locale %r"
msgstr ""
-#: ../pykolab/utils.py:484
+#: ../pykolab/utils.py:487
msgid "Attempting to set locale"
msgstr ""
-#: ../pykolab/utils.py:486
+#: ../pykolab/utils.py:489
msgid "Success setting locale"
msgstr ""
-#: ../pykolab/utils.py:488
+#: ../pykolab/utils.py:491
msgid "Failure to set locale"
msgstr ""
-#: ../pykolab/utils.py:496
+#: ../pykolab/utils.py:499
#, python-format
msgid "Executing '%s | %s'"
msgstr ""
-#: ../pykolab/utils.py:507
+#: ../pykolab/utils.py:510
#, python-format
msgid "Could not translate %s using locale %s"
msgstr ""
@@ -2608,90 +2656,124 @@ msgid "Got response: %r"
msgstr ""
#. Some data is not JSON
-#: ../pykolab/wap_client/__init__.py:333
+#: ../pykolab/wap_client/__init__.py:334
msgid "Response data is not JSON"
msgstr ""
-#: ../pykolab/xml/attendee.py:86 ../pykolab/xml/attendee.py:108
+#. support integer values, too
+#: ../pykolab/xml/attendee.py:9 ../pykolab/xml/attendee.py:17
+msgid "Needs Action"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:10 ../pykolab/xml/attendee.py:18
+msgid "Accepted"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:11 ../pykolab/xml/attendee.py:19
+msgid "Declined"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:12 ../pykolab/xml/attendee.py:20
+msgid "Tentatively Accepted"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:13 ../pykolab/xml/attendee.py:21
+msgid "Delegated"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:14
+msgid "Completed"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:15
+msgid "In Process"
+msgstr ""
+
+#: ../pykolab/xml/attendee.py:108 ../pykolab/xml/attendee.py:130
msgid "Not a valid attendee"
msgstr ""
-#: ../pykolab/xml/attendee.py:93
+#: ../pykolab/xml/attendee.py:115
msgid "No valid delegator references found"
msgstr ""
-#: ../pykolab/xml/attendee.py:113
+#: ../pykolab/xml/attendee.py:135
msgid "No valid delegatee references found"
msgstr ""
-#: ../pykolab/xml/attendee.py:149
+#: ../pykolab/xml/attendee.py:180
#, python-format
msgid "Invalid cutype %r"
msgstr ""
-#: ../pykolab/xml/attendee.py:160
+#: ../pykolab/xml/attendee.py:192
#, python-format
msgid "Invalid participant status %r"
msgstr ""
-#: ../pykolab/xml/attendee.py:168
+#: ../pykolab/xml/attendee.py:200
#, python-format
msgid "Invalid role %r"
msgstr ""
-#: ../pykolab/xml/event.py:70 ../pykolab/xml/event.py:570
-#: ../pykolab/xml/event.py:606
+#: ../pykolab/xml/event.py:100 ../pykolab/xml/event.py:708
+#: ../pykolab/xml/event.py:751
msgid "Event start needs datetime.date or datetime.datetime instance"
msgstr ""
-#: ../pykolab/xml/event.py:198
+#: ../pykolab/xml/event.py:241
#, python-format
msgid "No attendee with email or name %r"
msgstr ""
-#: ../pykolab/xml/event.py:206
+#: ../pykolab/xml/event.py:249
#, python-format
msgid "Invalid argument value attendee %r, must be basestring or Attendee"
msgstr ""
-#: ../pykolab/xml/event.py:212
+#: ../pykolab/xml/event.py:255
#, python-format
msgid "No attendee with email %r"
msgstr ""
-#: ../pykolab/xml/event.py:218
+#: ../pykolab/xml/event.py:261
#, python-format
msgid "No attendee with name %r"
msgstr ""
-#: ../pykolab/xml/event.py:323
+#: ../pykolab/xml/event.py:426
msgid "Invalid participant status"
msgstr ""
-#: ../pykolab/xml/event.py:445
-msgid "Event end needs datetime.date or datetime.datetime instance"
+#: ../pykolab/xml/event.py:542
+#, python-format
+msgid "Invalid status %r"
msgstr ""
-#: ../pykolab/xml/event.py:549
+#: ../pykolab/xml/event.py:550
#, python-format
-msgid "Invalid status %r"
+msgid "Invalid classification %r"
msgstr ""
-#: ../pykolab/xml/event.py:616
+#: ../pykolab/xml/event.py:577
+msgid "Event end needs datetime.date or datetime.datetime instance"
+msgstr ""
+
+#: ../pykolab/xml/event.py:761
#, python-format
msgid "Invalid status set: %r"
msgstr ""
-#: ../pykolab/xml/event.py:735
+#: ../pykolab/xml/event.py:923
msgid "No sender specified"
msgstr ""
-#: ../pykolab/xml/event.py:744
+#: ../pykolab/xml/event.py:932
#, python-format
-msgid "Reservation Request for %s was %s"
+msgid "Invitation for %s was %s"
msgstr ""
-#: ../pykolab/xml/event.py:749
+#: ../pykolab/xml/event.py:937
msgid "This is an automated response to one of your event requests."
msgstr ""
@@ -2701,7 +2783,7 @@ msgid "Could not create %r: %r"
msgstr ""
#: ../saslauthd/__init__.py:137 ../saslauthd/__init__.py:145
-#: ../wallace/__init__.py:386 ../wallace/__init__.py:395
+#: ../wallace/__init__.py:403 ../wallace/__init__.py:412
msgid "Traceback occurred, please report a bug at http://bugzilla.kolabsys.com"
msgstr ""
@@ -2713,51 +2795,101 @@ msgstr ""
msgid "Maximum tries exceeded, exiting"
msgstr ""
-#: ../wallace/__init__.py:61
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:190
+#: ../wallace/module_resources.py:879
+#, python-format
+msgid "Reservation Request for %(summary)s was %(status)s"
+msgstr ""
+
+#. check notification message sent to resource owner (jane)
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:605
+#: ../tests/functional/test_wallace/test_005_resource_invitation.py:621
+#: ../wallace/module_resources.py:954
+#, python-format
+msgid "Booking for %s has been %s"
+msgstr ""
+
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:146
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:720
+#: ../wallace/module_invitationpolicy.py:374
+#, python-format
+msgid "\"%(summary)s\" has been %(status)s"
+msgstr ""
+
+#. check for notification message
+#. this notification should be suppressed until mark has replied, too
+#. this triggers an additional notification
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:616
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:622
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:635
+#: ../wallace/module_invitationpolicy.py:925
+#, python-format
+msgid "\"%s\" has been updated"
+msgstr ""
+
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:627
+#: ../tests/functional/test_wallace/test_007_invitationpolicy.py:639
+msgid "PENDING"
+msgstr ""
+
+#: ../wallace/__init__.py:57
+#, python-format
+msgid "Wallace modules: %r"
+msgstr ""
+
+#: ../wallace/__init__.py:69
+#, python-format
+msgid "Module %s.execute() failed on message %r with error: %s"
+msgstr ""
+
+#: ../wallace/__init__.py:78
#, python-format
msgid "Worker process %s initializing"
msgstr ""
-#: ../wallace/__init__.py:83
+#: ../wallace/__init__.py:100
msgid "Bind address for Wallace."
msgstr ""
-#: ../wallace/__init__.py:109
+#: ../wallace/__init__.py:126
msgid "Port that Wallace is supposed to use."
msgstr ""
-#: ../wallace/__init__.py:160
+#: ../wallace/__init__.py:177
#, python-format
msgid "Could not bind to socket on port %d on bind "
msgstr ""
-#: ../wallace/__init__.py:172
+#: ../wallace/__init__.py:189
msgid "Could not shut down socket"
msgstr ""
-#: ../wallace/__init__.py:236
+#: ../wallace/__init__.py:253
msgid "Accepted connection"
msgstr ""
-#: ../wallace/__init__.py:411
+#: ../wallace/__init__.py:428
#, python-format
msgid "Could not write pid file %s"
msgstr ""
-#: ../wallace/module_footer.py:60 ../wallace/module_optout.py:61
-#: ../wallace/module_resources.py:109
+#: ../wallace/module_footer.py:60 ../wallace/module_gpgencrypt.py:60
+#: ../wallace/module_invitationpolicy.py:168 ../wallace/module_optout.py:61
+#: ../wallace/module_resources.py:120
#, python-format
msgid "Issuing callback after processing to stage %s"
msgstr ""
-#: ../wallace/module_footer.py:61 ../wallace/module_optout.py:62
-#: ../wallace/module_resources.py:115
+#: ../wallace/module_footer.py:61 ../wallace/module_gpgencrypt.py:61
+#: ../wallace/module_invitationpolicy.py:170 ../wallace/module_optout.py:62
+#: ../wallace/module_resources.py:126
#, python-format
msgid "Testing cb_action_%s()"
msgstr ""
-#: ../wallace/module_footer.py:63 ../wallace/module_optout.py:64
-#: ../wallace/module_resources.py:118
+#: ../wallace/module_footer.py:63 ../wallace/module_gpgencrypt.py:63
+#: ../wallace/module_invitationpolicy.py:172 ../wallace/module_optout.py:64
+#: ../wallace/module_resources.py:129
#, python-format
msgid "Attempting to execute cb_action_%s()"
msgstr ""
@@ -2767,6 +2899,299 @@ msgstr ""
msgid "Executing module footer for %r, %r"
msgstr ""
+#: ../wallace/module_gpgencrypt.py:66
+#, python-format
+msgid "Executing module gpgencrypt for %r, %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:98
+msgid "Message is already encrypted (app/pgp-enc content-type)"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:102
+msgid "Message already encrypted by main content-type header"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:131
+msgid ""
+"Configured to encrypt to a key not configured, and strict policy enabled. "
+"Bailing out."
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:134
+msgid ""
+"Configured to encrypt to a key not configured, but continuing anyway (see "
+"'gpgencrypt_strict')."
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:171
+#, python-format
+msgid "Recipients: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:183
+#, python-format
+msgid "Current keys: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:188
+#, python-format
+msgid "Retrieving key for recipient: %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:192 ../wallace/module_gpgencrypt.py:208
+#, python-format
+msgid "Found matching address %r"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:200
+#, python-format
+msgid "Found matching address %r in remote keys"
+msgstr ""
+
+#: ../wallace/module_gpgencrypt.py:232
+#, python-format
+msgid "An error occurred: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:154
+#, python-format
+msgid "Invitation policy called for %r, %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:211
+#: ../wallace/module_resources.py:169
+#, python-format
+msgid "Failed to parse iTip events from message: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:215
+msgid ""
+"Message is not an iTip message or does not contain any (valid) iTip events."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:219
+#, python-format
+msgid ""
+"iTip events attached to this message contain the following information: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:232
+#, python-format
+msgid "No itips, no users, pass along %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:235
+#, python-format
+msgid "iTips, but no users, pass along %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:255
+#, python-format
+msgid "No user attendee matching envelope recipient %s, skip message"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:259
+#, python-format
+msgid "Receiving user: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:284
+#, python-format
+msgid "Apply invitation policy %r for domain %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:295
+#, python-format
+msgid "Ignoring '%s' iTip method"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:299
+#, python-format
+msgid "iTip message %r consumed by the invitationpolicy module"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:315
+msgid "Pass invitation for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:320
+#, python-format
+msgid "Receiving Attendee: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:339
+#, python-format
+msgid "Existing event: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:350
+#, python-format
+msgid "Precondition for event %r fulfilled: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:386
+#, python-format
+msgid "No RSVP for recipient %r requested"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:412
+msgid "Pass reply for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:419
+#, python-format
+msgid "Sender Attendee: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:431
+#, python-format
+msgid ""
+"The iTip reply sequence (%r) doesn't match the referred event version (%r). "
+"Forwarding to Inbox."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:437
+#, python-format
+msgid "Auto-updating event %r on iTip REPLY"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:459
+#: ../wallace/module_invitationpolicy.py:488
+msgid ""
+"The event referred by this reply was not found in the user's calendars. "
+"Forwarding to Inbox."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:472
+msgid "Pass cancellation for manual processing"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:517
+#, python-format
+msgid "Checking if email address %r belongs to a local user"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:522
+#, python-format
+msgid "User DN: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:524
+#, python-format
+msgid "No user record(s) found for %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:577
+#, python-format
+msgid "User record doesn't have the mailbox attribute %r set"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:590
+#, python-format
+msgid "IMAP proxy authentication failed: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:612
+#, python-format
+msgid "List calendar folders for user %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:628
+#, python-format
+msgid "IMAP metadata for %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:658
+#, python-format
+msgid "Searching folder %r for event %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:670
+#: ../wallace/module_invitationpolicy.py:709
+#: ../wallace/module_resources.py:486
+#, python-format
+msgid "Failed to parse event from message %s/%s: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:696
+#, python-format
+msgid "Listing events from folder %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:715
+#, python-format
+msgid "Existing event %r conflicts with invitation %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:722
+#: ../wallace/module_resources.py:344
+#, python-format
+msgid "start: %r, end: %r, total: %r, messages: %d"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:748
+#, python-format
+msgid "%r is locked, waiting..."
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:811
+#, python-format
+msgid "Failed to save event: no calendar folder found for user %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:814
+#, python-format
+msgid "Save event %r to user calendar %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:827
+#, python-format
+msgid "Failed to save event to user calendar at %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:843
+#, python-format
+msgid "Delete event %r in %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:863
+#, python-format
+msgid "Compose participation status summary for event %r to user %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:901
+#, python-format
+msgid ""
+"Waiting for more automated replies (got %d of %d); skipping notification"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:998
+#, python-format
+msgid "Updated %s's copy of %r: %r"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1001
+#, python-format
+msgid "Attendee %s's copy of %r not found"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1004
+#, python-format
+msgid "Attendee %r not found in LDAP"
+msgstr ""
+
+#: ../wallace/module_invitationpolicy.py:1008
+#, python-format
+msgid ""
+"\n"
+" %(name)s has %(status)s your invitation for %(summary)s.\n"
+"\n"
+" *** This is an automated response sent by the Kolab Invitation "
+"system ***\n"
+" "
+msgstr ""
+
#. modules.next_module('optout')
#: ../wallace/module_optout.py:70
#, python-format
@@ -2788,220 +3213,262 @@ msgstr ""
msgid "Could not send request to optout_url %s"
msgstr ""
-#: ../wallace/module_resources.py:96
+#: ../wallace/module_resources.py:110
#, python-format
msgid "Resource Management called for %r, %r"
msgstr ""
-#: ../wallace/module_resources.py:159
+#: ../wallace/module_resources.py:174
msgid "Message is not an iTip message or does not contain any "
msgstr ""
-#: ../wallace/module_resources.py:167
+#: ../wallace/module_resources.py:182
msgid "iTip events attached to this message contain the "
msgstr ""
-#: ../wallace/module_resources.py:188
+#: ../wallace/module_resources.py:205
msgid "Not an iTip message, but sent to resource nonetheless. Reject message"
msgstr ""
-#: ../wallace/module_resources.py:196
-msgid "No itips, no resources, pass along"
+#: ../wallace/module_resources.py:213
+#, python-format
+msgid "No itips, no resources, pass along %r"
msgstr ""
-#: ../wallace/module_resources.py:200
-msgid "iTips, but no resources, pass along"
+#: ../wallace/module_resources.py:216
+#, python-format
+msgid "iTips, but no resources, pass along %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:225
+#, python-format
+msgid "No resource attendees matching envelope recipient %s, Reject message"
msgstr ""
-#: ../wallace/module_resources.py:233
+#: ../wallace/module_resources.py:234
#, python-format
msgid "Resources: %r; %r"
msgstr ""
-#: ../wallace/module_resources.py:242
+#: ../wallace/module_resources.py:244
#, python-format
msgid "Receiving Resource: %r; %r"
msgstr ""
-#: ../wallace/module_resources.py:250
+#: ../wallace/module_resources.py:252
#, python-format
msgid "Recipient %r is non-participant, ignoring message"
msgstr ""
-#: ../wallace/module_resources.py:281
+#: ../wallace/module_resources.py:279
#, python-format
-msgid "Failed to read resource calendar for %r: %r"
+msgid "Accept invitation for individual resource %r / %r"
msgstr ""
-#: ../wallace/module_resources.py:286
+#: ../wallace/module_resources.py:308
#, python-format
-msgid "start: %r, end: %r, total: %r, messages: %d"
+msgid "Delegate invitation for resource collection %r to %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:340
+#, python-format
+msgid "Failed to read resource calendar for %r: %r"
msgstr ""
-#: ../wallace/module_resources.py:292
+#: ../wallace/module_resources.py:350
#, python-format
msgid "Polling for resource %r"
msgstr ""
-#: ../wallace/module_resources.py:295
+#: ../wallace/module_resources.py:353
#, python-format
msgid "Resource %r has been popped from the list"
msgstr ""
-#: ../wallace/module_resources.py:299
+#: ../wallace/module_resources.py:357
msgid "Resource is a collection"
msgstr ""
-#: ../wallace/module_resources.py:310
+#: ../wallace/module_resources.py:368
#, python-format
msgid "Removed conflicting resources from %r: (%r) => %r"
msgstr ""
-#: ../wallace/module_resources.py:322
+#: ../wallace/module_resources.py:380
#, python-format
msgid "Conflicting events: %r for resource %r"
msgstr ""
-#: ../wallace/module_resources.py:351
+#: ../wallace/module_resources.py:397
#, python-format
-msgid "Accept invitation for individual resource %r / %r"
+msgid "Delegate to another resource collection member: %r to %r"
msgstr ""
-#: ../wallace/module_resources.py:365
-#, python-format
-msgid "Delegate invitation for resource collection %r to %r"
-msgstr ""
-
-#: ../wallace/module_resources.py:408
+#: ../wallace/module_resources.py:459
#, python-format
msgid "Checking events in resource folder %r"
msgstr ""
-#: ../wallace/module_resources.py:424
+#: ../wallace/module_resources.py:475
#, python-format
msgid "Fetching message UID %r from folder %r"
msgstr ""
-#: ../wallace/module_resources.py:472
+#: ../wallace/module_resources.py:498
#, python-format
msgid "Event %r conflicts with event %r"
msgstr ""
-#: ../wallace/module_resources.py:499
+#: ../wallace/module_resources.py:525
#, python-format
msgid "Adding event to %r: %r"
msgstr ""
-#: ../wallace/module_resources.py:537
+#: ../wallace/module_resources.py:573
#, python-format
msgid "Failed to save event to resource calendar at %r: %r"
msgstr ""
-#: ../wallace/module_resources.py:553
+#: ../wallace/module_resources.py:590
#, python-format
msgid "Delete resource calendar object %r in %r: %r"
msgstr ""
-#: ../wallace/module_resources.py:587
-#, python-format
-msgid "Method %r not really interesting for us."
-msgstr ""
-
-#: ../wallace/module_resources.py:595
-#, python-format
-msgid "Raw iTip payload: %s"
-msgstr ""
-
-#: ../wallace/module_resources.py:605
-msgid "Could not read iTip from message."
-msgstr ""
-
-#: ../wallace/module_resources.py:613
-#, python-format
-msgid "Duplicate iTip event: %s"
-msgstr ""
-
-#: ../wallace/module_resources.py:638
-msgid "iTip event without a start"
-msgstr ""
-
-#: ../wallace/module_resources.py:676
-msgid "Message is not an iTip message (non-multipart message)"
-msgstr ""
-
-#: ../wallace/module_resources.py:705
+#: ../wallace/module_resources.py:633
#, python-format
msgid "Checking if email address %r belongs to a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:713 ../wallace/module_resources.py:781
-#: ../wallace/module_resources.py:815
+#: ../wallace/module_resources.py:641 ../wallace/module_resources.py:709
+#: ../wallace/module_resources.py:743
#, python-format
msgid "Resource record(s): %r"
msgstr ""
-#: ../wallace/module_resources.py:715 ../wallace/module_resources.py:783
-#: ../wallace/module_resources.py:818
+#: ../wallace/module_resources.py:643 ../wallace/module_resources.py:711
+#: ../wallace/module_resources.py:746
#, python-format
msgid "No resource (collection) records found for %r"
msgstr ""
-#: ../wallace/module_resources.py:719 ../wallace/module_resources.py:787
-#: ../wallace/module_resources.py:822
+#: ../wallace/module_resources.py:647 ../wallace/module_resources.py:715
+#: ../wallace/module_resources.py:750
#, python-format
msgid "Resource record: %r"
msgstr ""
-#: ../wallace/module_resources.py:739
+#: ../wallace/module_resources.py:667
#, python-format
msgid "Raw itip_events: %r"
msgstr ""
-#: ../wallace/module_resources.py:747
+#: ../wallace/module_resources.py:675
#, python-format
msgid "Raw set of attendees: %r"
msgstr ""
-#: ../wallace/module_resources.py:755
+#: ../wallace/module_resources.py:683
#, python-format
msgid "Raw set of resources: %r"
msgstr ""
-#: ../wallace/module_resources.py:774
+#: ../wallace/module_resources.py:702
#, python-format
msgid "Checking if attendee %r is a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:790 ../wallace/module_resources.py:824
+#: ../wallace/module_resources.py:718 ../wallace/module_resources.py:752
msgid "Resource reservation made but no resource records found"
msgstr ""
-#: ../wallace/module_resources.py:809
+#: ../wallace/module_resources.py:737
#, python-format
msgid "Checking if resource %r is a resource (collection)"
msgstr ""
-#: ../wallace/module_resources.py:827
+#: ../wallace/module_resources.py:755
msgid "The following resources are being referred to in the "
msgstr ""
-#: ../wallace/module_resources.py:867
+#: ../wallace/module_resources.py:894
#, python-format
msgid ""
"\n"
-" Your reservation was delegated to \"%s\"\n"
-" which is available for the requested time.\n"
+" *** This is an automated response, please do not reply! ***\n"
+"\n"
+" Your reservation was delegated to \"%s\" which is available "
+"for the requested time.\n"
" "
msgstr ""
+#: ../wallace/module_resources.py:905
+#, python-format
+msgid ""
+"\n"
+" *** This is an automated response, please do not reply! ***\n"
+" \n"
+" We hereby inform you that your reservation was %s.\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:912
+#, python-format
+msgid ""
+"\n"
+" If you have questions about this reservation, please contact\n"
+" %s <%s> %s\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:941
+#, python-format
+msgid "Sending booking notification for event %r to %r from %r"
+msgstr ""
+
+#: ../wallace/module_resources.py:954
+msgid "failed"
+msgstr ""
+
+#: ../wallace/module_resources.py:973
+#, python-format
+msgid ""
+"\n"
+" The resource booking for %(resource)s by %(orgname)s <%(orgemail)"
+"s> has been %(status)s for %(date)s.\n"
+"\n"
+" *** This is an automated message, sent to you as the resource "
+"owner. ***\n"
+" "
+msgstr ""
+
+#: ../wallace/module_resources.py:979
+#, python-format
+msgid ""
+"\n"
+" A reservation request for %(resource)s could not be processed "
+"automatically.\n"
+" Please contact %(orgname)s <%(orgemail)s> who requested this "
+"resource for %(date)s. Subject: %(summary)s.\n"
+"\n"
+" *** This is an automated message, sent to you as the resource "
+"owner. ***\n"
+" "
+msgstr ""
+
#. This is a nested module
#: ../wallace/modules.py:97
#, python-format
msgid "Module Group: %s"
msgstr ""
-#: ../wallace/modules.py:108 ../wallace/modules.py:113
-msgid "No such module."
+#: ../wallace/modules.py:108
+#, python-format
+msgid "No such module %r in modules %r (1)."
+msgstr ""
+
+#: ../wallace/modules.py:113
+#, python-format
+msgid "No such module %r in modules %r (2)."
msgstr ""
#: ../wallace/modules.py:119
More information about the commits
mailing list