diff options
| author | Adrian Holovaty <adrian@holovaty.com> | 2007-05-12 02:36:05 +0000 |
|---|---|---|
| committer | Adrian Holovaty <adrian@holovaty.com> | 2007-05-12 02:36:05 +0000 |
| commit | 415e84ad53e0d0d8f7df87784c1893489bdbe0b8 (patch) | |
| tree | 09541f8319c45ec51fb44154534abc41cb86aee9 /django | |
| parent | 4938c8ea6db6f23ebb0883b8a092985344508b25 (diff) | |
newforms-admin: Merged to [5194]
git-svn-id: http://code.djangoproject.com/svn/django/branches/newforms-admin@5195 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django')
152 files changed, 18554 insertions, 8827 deletions
diff --git a/django/bin/make-messages.py b/django/bin/make-messages.py index 34fb68dcfe..bf9e7a1962 100755 --- a/django/bin/make-messages.py +++ b/django/bin/make-messages.py @@ -81,7 +81,7 @@ def make_messages(): src = pythonize_re.sub('\n#', src) open(os.path.join(dirpath, '%s.py' % file), "wb").write(src) thefile = '%s.py' % file - cmd = 'xgettext %s -d %s -L Perl --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy --from-code UTF-8 -o - "%s"' % ( + cmd = 'xgettext %s -d %s -L Perl --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy:1,2 --from-code UTF-8 -o - "%s"' % ( os.path.exists(potfile) and '--omit-header' or '', domain, os.path.join(dirpath, thefile)) (stdin, stdout, stderr) = os.popen3(cmd, 'b') msgs = stdout.read() @@ -103,7 +103,7 @@ def make_messages(): open(os.path.join(dirpath, '%s.py' % file), "wb").write(templatize(src)) thefile = '%s.py' % file if verbose: sys.stdout.write('processing file %s in %s\n' % (file, dirpath)) - cmd = 'xgettext %s -d %s -L Python --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy --from-code UTF-8 -o - "%s"' % ( + cmd = 'xgettext %s -d %s -L Python --keyword=gettext_noop --keyword=gettext_lazy --keyword=ngettext_lazy:1,2 --from-code UTF-8 -o - "%s"' % ( os.path.exists(potfile) and '--omit-header' or '', domain, os.path.join(dirpath, thefile)) (stdin, stdout, stderr) = os.popen3(cmd, 'b') msgs = stdout.read() diff --git a/django/bin/profiling/gather_profile_stats.py b/django/bin/profiling/gather_profile_stats.py index 852f16229d..c0844930e9 100644 --- a/django/bin/profiling/gather_profile_stats.py +++ b/django/bin/profiling/gather_profile_stats.py @@ -22,7 +22,7 @@ def gather_stats(p): else: continue print "Processing %s" % f - if profiles.has_key(path): + if path in profiles: profiles[path].add(prof) else: profiles[path] = prof diff --git a/django/conf/global_settings.py b/django/conf/global_settings.py index f26911d7f9..61751db8cd 100644 --- a/django/conf/global_settings.py +++ b/django/conf/global_settings.py @@ -55,6 +55,7 @@ LANGUAGES = ( ('is', gettext_noop('Icelandic')), ('it', gettext_noop('Italian')), ('ja', gettext_noop('Japanese')), + ('ko', gettext_noop('Korean')), ('kn', gettext_noop('Kannada')), ('lv', gettext_noop('Latvian')), ('mk', gettext_noop('Macedonian')), @@ -118,6 +119,7 @@ EMAIL_PORT = 25 # Optional SMTP authentication information for EMAIL_HOST. EMAIL_HOST_USER = '' EMAIL_HOST_PASSWORD = '' +EMAIL_USE_TLS = False # List of strings representing installed apps. INSTALLED_APPS = () @@ -311,6 +313,12 @@ BANNED_IPS = () AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend',) +LOGIN_URL = '/accounts/login/' + +LOGOUT_URL = '/accounts/logout/' + +LOGIN_REDIRECT_URL = '/accounts/profile/' + ########### # TESTING # ########### diff --git a/django/conf/locale/de/LC_MESSAGES/django.mo b/django/conf/locale/de/LC_MESSAGES/django.mo Binary files differindex b5c518c13c..5f2eee4f33 100644 --- a/django/conf/locale/de/LC_MESSAGES/django.mo +++ b/django/conf/locale/de/LC_MESSAGES/django.mo diff --git a/django/conf/locale/de/LC_MESSAGES/django.po b/django/conf/locale/de/LC_MESSAGES/django.po index 2f0991c8cc..52b70bda00 100644 --- a/django/conf/locale/de/LC_MESSAGES/django.po +++ b/django/conf/locale/de/LC_MESSAGES/django.po @@ -6,152 +6,180 @@ msgid "" msgstr "" "Project-Id-Version: Django 1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-02-05 02:56+0100\n" +"POT-Creation-Date: 2007-04-09 22:42+0200\n" "PO-Revision-Date: 2007-02-05 03:19+0100\n" -"Last-Translator: Dirk Eschler <dirk.eschler@gmx.net>\n" +"Last-Translator: Jannis Leidel <jl@websushi.org>\n" +"Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language-Team: \n" "X-Poedit-Language: German\n" "X-Poedit-Country: GERMANY\n" "X-Poedit-SourceCharset: utf-8\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" "X-Generator: KBabel 1.11.4\n" -#: .\conf\global_settings.py:39 +#: conf/global_settings.py:39 msgid "Arabic" msgstr "Arabisch" -#: .\conf\global_settings.py:40 +#: conf/global_settings.py:40 msgid "Bengali" msgstr "Bengali" -#: .\conf\global_settings.py:41 +#: conf/global_settings.py:41 +msgid "Catalan" +msgstr "Katalanisch" + +#: conf/global_settings.py:42 msgid "Czech" msgstr "Tschechisch" -#: .\conf\global_settings.py:42 +#: conf/global_settings.py:43 msgid "Welsh" msgstr "Walisisch" -#: .\conf\global_settings.py:43 +#: conf/global_settings.py:44 msgid "Danish" msgstr "Dänisch" -#: .\conf\global_settings.py:44 +#: conf/global_settings.py:45 msgid "German" msgstr "Deutsch" -#: .\conf\global_settings.py:45 +#: conf/global_settings.py:46 msgid "Greek" msgstr "Griechisch" -#: .\conf\global_settings.py:46 +#: conf/global_settings.py:47 msgid "English" msgstr "Englisch" -#: .\conf\global_settings.py:47 +#: conf/global_settings.py:48 msgid "Spanish" msgstr "Spanisch" -#: .\conf\global_settings.py:48 +#: conf/global_settings.py:49 msgid "Argentinean Spanish" msgstr "Argentinisches Spanisch" -#: .\conf\global_settings.py:49 +#: conf/global_settings.py:50 msgid "Finnish" msgstr "Finnisch" -#: .\conf\global_settings.py:50 +#: conf/global_settings.py:51 msgid "French" msgstr "Französisch" -#: .\conf\global_settings.py:51 +#: conf/global_settings.py:52 msgid "Galician" msgstr "Galicisch" -#: .\conf\global_settings.py:52 +#: conf/global_settings.py:53 msgid "Hungarian" msgstr "Ungarisch" -#: .\conf\global_settings.py:53 +#: conf/global_settings.py:54 msgid "Hebrew" msgstr "Hebräisch" -#: .\conf\global_settings.py:54 +#: conf/global_settings.py:55 msgid "Icelandic" msgstr "Isländisch" -#: .\conf\global_settings.py:55 +#: conf/global_settings.py:56 msgid "Italian" msgstr "Italienisch" -#: .\conf\global_settings.py:56 +#: conf/global_settings.py:57 msgid "Japanese" msgstr "Japanisch" -#: .\conf\global_settings.py:57 +#: conf/global_settings.py:58 +msgid "Korean" +msgstr "Koreanisch" + +#: conf/global_settings.py:59 +msgid "Kannada" +msgstr "Kannada" + +#: conf/global_settings.py:60 +msgid "Latvian" +msgstr "Lettisch" + +#: conf/global_settings.py:61 +msgid "Macedonian" +msgstr "Mazedonisch" + +#: conf/global_settings.py:62 msgid "Dutch" msgstr "Holländisch" -#: .\conf\global_settings.py:58 +#: conf/global_settings.py:63 msgid "Norwegian" msgstr "Norwegisch" -#: .\conf\global_settings.py:59 +#: conf/global_settings.py:64 msgid "Polish" msgstr "Polnisch" -#: .\conf\global_settings.py:60 +#: conf/global_settings.py:65 +msgid "Portugese" +msgstr "Portugiesisch" + +#: conf/global_settings.py:66 msgid "Brazilian" -msgstr "Brasilianisch" +msgstr "Brasilianisches Portugiesisch" -#: .\conf\global_settings.py:61 +#: conf/global_settings.py:67 msgid "Romanian" msgstr "Rumänisch" -#: .\conf\global_settings.py:62 +#: conf/global_settings.py:68 msgid "Russian" msgstr "Russisch" -#: .\conf\global_settings.py:63 +#: conf/global_settings.py:69 msgid "Slovak" msgstr "Slowakisch" -#: .\conf\global_settings.py:64 +#: conf/global_settings.py:70 msgid "Slovenian" msgstr "Slowenisch" -#: .\conf\global_settings.py:65 +#: conf/global_settings.py:71 msgid "Serbian" msgstr "Serbisch" -#: .\conf\global_settings.py:66 +#: conf/global_settings.py:72 msgid "Swedish" msgstr "Schwedisch" -#: .\conf\global_settings.py:67 +#: conf/global_settings.py:73 msgid "Tamil" msgstr "Tamilisch" -#: .\conf\global_settings.py:68 +#: conf/global_settings.py:74 +msgid "Telugu" +msgstr "Telugisch" + +#: conf/global_settings.py:75 msgid "Turkish" msgstr "Türkisch" -#: .\conf\global_settings.py:69 +#: conf/global_settings.py:76 msgid "Ukrainian" msgstr "Ukrainisch" -#: .\conf\global_settings.py:70 +#: conf/global_settings.py:77 msgid "Simplified Chinese" msgstr "Vereinfachtes Chinesisch" -#: .\conf\global_settings.py:71 +#: conf/global_settings.py:78 msgid "Traditional Chinese" msgstr "Traditionelles Chinesisch" -#: .\contrib\admin\filterspecs.py:40 +#: contrib/admin/filterspecs.py:40 #, python-format msgid "" "<h3>By %s:</h3>\n" @@ -160,395 +188,422 @@ msgstr "" "<h3>Nach %s:</h3>\n" "<ul>\n" -#: .\contrib\admin\filterspecs.py:70 -#: .\contrib\admin\filterspecs.py:88 -#: .\contrib\admin\filterspecs.py:143 -#: .\contrib\admin\filterspecs.py:169 +#: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 +#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 msgid "All" msgstr "Alle" -#: .\contrib\admin\filterspecs.py:109 +#: contrib/admin/filterspecs.py:109 msgid "Any date" msgstr "Alle Daten" -#: .\contrib\admin\filterspecs.py:110 +#: contrib/admin/filterspecs.py:110 msgid "Today" msgstr "Heute" -#: .\contrib\admin\filterspecs.py:113 +#: contrib/admin/filterspecs.py:113 msgid "Past 7 days" msgstr "Letzte 7 Tage" -#: .\contrib\admin\filterspecs.py:115 +#: contrib/admin/filterspecs.py:115 msgid "This month" msgstr "Diesen Monat" -#: .\contrib\admin\filterspecs.py:117 +#: contrib/admin/filterspecs.py:117 msgid "This year" msgstr "Dieses Jahr" -#: .\contrib\admin\filterspecs.py:143 -#: .\newforms\widgets.py:162 -#: .\oldforms\__init__.py:572 +#: contrib/admin/filterspecs.py:143 newforms/widgets.py:180 +#: oldforms/__init__.py:577 msgid "Yes" msgstr "Ja" -#: .\contrib\admin\filterspecs.py:143 -#: .\newforms\widgets.py:162 -#: .\oldforms\__init__.py:572 +#: contrib/admin/filterspecs.py:143 newforms/widgets.py:180 +#: oldforms/__init__.py:577 msgid "No" msgstr "Nein" -#: .\contrib\admin\filterspecs.py:150 -#: .\newforms\widgets.py:162 -#: .\oldforms\__init__.py:572 +#: contrib/admin/filterspecs.py:150 newforms/widgets.py:180 +#: oldforms/__init__.py:577 msgid "Unknown" msgstr "Unbekannt" -#: .\contrib\admin\models.py:16 +#: contrib/admin/models.py:16 msgid "action time" msgstr "Zeitpunkt der Aktion" -#: .\contrib\admin\models.py:19 +#: contrib/admin/models.py:19 msgid "object id" msgstr "Objekt-ID" -#: .\contrib\admin\models.py:20 +#: contrib/admin/models.py:20 msgid "object repr" msgstr "Objekt Darst." -#: .\contrib\admin\models.py:21 +#: contrib/admin/models.py:21 msgid "action flag" msgstr "Aktionskennzeichen" -#: .\contrib\admin\models.py:22 +#: contrib/admin/models.py:22 msgid "change message" msgstr "Änderungsmeldung" -#: .\contrib\admin\models.py:25 +#: contrib/admin/models.py:25 msgid "log entry" msgstr "Logeintrag" -#: .\contrib\admin\models.py:26 +#: contrib/admin/models.py:26 msgid "log entries" msgstr "Logeinträge" -#: .\contrib\admin\templates\admin\404.html.py:4 -#: .\contrib\admin\templates\admin\404.html.py:8 +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 msgid "Page not found" msgstr "Seite nicht gefunden" -#: .\contrib\admin\templates\admin\404.html.py:10 +#: contrib/admin/templates/admin/404.html:10 msgid "We're sorry, but the requested page could not be found." -msgstr "Es tut uns leid, aber die angeforderte Seite konnte nicht gefunden werden." +msgstr "" +"Es tut uns leid, aber die angeforderte Seite konnte nicht gefunden werden." -#: .\contrib\admin\templates\admin\500.html.py:4 -#: .\contrib\admin\templates\admin\base.html.py:30 -#: .\contrib\admin\templates\admin\change_form.html.py:13 -#: .\contrib\admin\templates\admin\change_list.html.py:6 -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:6 -#: .\contrib\admin\templates\admin\invalid_setup.html.py:4 -#: .\contrib\admin\templates\admin\object_history.html.py:5 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:12 -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:3 -#: .\contrib\admin\templates\registration\logged_out.html.py:4 -#: .\contrib\admin\templates\registration\password_change_done.html.py:4 -#: .\contrib\admin\templates\registration\password_change_form.html.py:4 -#: .\contrib\admin\templates\registration\password_reset_done.html.py:4 -#: .\contrib\admin\templates\registration\password_reset_form.html.py:4 +#: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/base.html:30 +#: contrib/admin/templates/admin/change_form.html:13 +#: contrib/admin/templates/admin/change_list.html:6 +#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/object_history.html:5 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +#: contrib/admin/templates/registration/logged_out.html:4 +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 msgid "Home" msgstr "Start" -#: .\contrib\admin\templates\admin\500.html.py:4 +#: contrib/admin/templates/admin/500.html:4 msgid "Server error" msgstr "Serverfehler" -#: .\contrib\admin\templates\admin\500.html.py:6 +#: contrib/admin/templates/admin/500.html:6 msgid "Server error (500)" msgstr "Serverfehler (500)" -#: .\contrib\admin\templates\admin\500.html.py:9 +#: contrib/admin/templates/admin/500.html:9 msgid "Server Error <em>(500)</em>" msgstr "Serverfehler <em>(500)</em>" -#: .\contrib\admin\templates\admin\500.html.py:10 -msgid "There's been an error. It's been reported to the site administrators via e-mail and should be fixed shortly. Thanks for your patience." -msgstr "Ein Fehler ist aufgetreten. Dieser Fehler wurde an die Serververwalter per E-Mail weitergegeben und sollte bald behoben sein. Vielen Dank für Ihr Verständnis." +#: contrib/admin/templates/admin/500.html:10 +msgid "" +"There's been an error. It's been reported to the site administrators via e-" +"mail and should be fixed shortly. Thanks for your patience." +msgstr "" +"Ein Fehler ist aufgetreten. Dieser Fehler wurde an die Serververwalter per E-" +"Mail weitergegeben und sollte bald behoben sein. Vielen Dank für Ihr " +"Verständnis." -#: .\contrib\admin\templates\admin\base.html.py:25 +#: contrib/admin/templates/admin/base.html:25 msgid "Welcome," msgstr "Willkommen," -#: .\contrib\admin\templates\admin\base.html.py:25 -#: .\contrib\admin\templates\admin\change_form.html.py:10 -#: .\contrib\admin\templates\admin\change_list.html.py:5 -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:3 -#: .\contrib\admin\templates\admin\object_history.html.py:3 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:9 -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:3 -#: .\contrib\admin\templates\registration\password_change_done.html.py:3 -#: .\contrib\admin\templates\registration\password_change_form.html.py:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 msgid "Documentation" msgstr "Dokumentation" -#: .\contrib\admin\templates\admin\base.html.py:25 -#: .\contrib\admin\templates\admin\change_form.html.py:10 -#: .\contrib\admin\templates\admin\change_list.html.py:5 -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:3 -#: .\contrib\admin\templates\admin\object_history.html.py:3 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:9 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:15 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:46 -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:4 -#: .\contrib\admin\templates\admin_doc\index.html.py:4 -#: .\contrib\admin\templates\admin_doc\missing_docutils.html.py:4 -#: .\contrib\admin\templates\admin_doc\model_detail.html.py:3 -#: .\contrib\admin\templates\admin_doc\model_index.html.py:5 -#: .\contrib\admin\templates\admin_doc\template_detail.html.py:4 -#: .\contrib\admin\templates\admin_doc\template_filter_index.html.py:5 -#: .\contrib\admin\templates\admin_doc\template_tag_index.html.py:5 -#: .\contrib\admin\templates\admin_doc\view_detail.html.py:4 -#: .\contrib\admin\templates\admin_doc\view_index.html.py:5 -#: .\contrib\admin\templates\registration\password_change_done.html.py:3 -#: .\contrib\admin\templates\registration\password_change_form.html.py:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin/auth/user/change_password.html:15 +#: contrib/admin/templates/admin/auth/user/change_password.html:46 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 msgid "Change password" msgstr "Passwort ändern" -#: .\contrib\admin\templates\admin\base.html.py:25 -#: .\contrib\admin\templates\admin\change_form.html.py:10 -#: .\contrib\admin\templates\admin\change_list.html.py:5 -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:3 -#: .\contrib\admin\templates\admin\object_history.html.py:3 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:9 -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:4 -#: .\contrib\admin\templates\admin_doc\index.html.py:4 -#: .\contrib\admin\templates\admin_doc\missing_docutils.html.py:4 -#: .\contrib\admin\templates\admin_doc\model_detail.html.py:3 -#: .\contrib\admin\templates\admin_doc\model_index.html.py:5 -#: .\contrib\admin\templates\admin_doc\template_detail.html.py:4 -#: .\contrib\admin\templates\admin_doc\template_filter_index.html.py:5 -#: .\contrib\admin\templates\admin_doc\template_tag_index.html.py:5 -#: .\contrib\admin\templates\admin_doc\view_detail.html.py:4 -#: .\contrib\admin\templates\admin_doc\view_index.html.py:5 -#: .\contrib\admin\templates\registration\password_change_done.html.py:3 -#: .\contrib\admin\templates\registration\password_change_form.html.py:3 -#: .\contrib\comments\templates\comments\form.html.py:6 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/comments/templates/comments/form.html:6 msgid "Log out" msgstr "Abmelden" -#: .\contrib\admin\templates\admin\base_site.html.py:4 +#: contrib/admin/templates/admin/base_site.html:4 msgid "Django site admin" -msgstr "Django Systemverwaltung" +msgstr "Django-Systemverwaltung" -#: .\contrib\admin\templates\admin\base_site.html.py:7 +#: contrib/admin/templates/admin/base_site.html:7 msgid "Django administration" -msgstr "Django Verwaltung" +msgstr "Django-Verwaltung" -#: .\contrib\admin\templates\admin\change_form.html.py:15 -#: .\contrib\admin\templates\admin\index.html.py:28 +#: contrib/admin/templates/admin/change_form.html:15 +#: contrib/admin/templates/admin/index.html:28 msgid "Add" msgstr "Hinzufügen" -#: .\contrib\admin\templates\admin\change_form.html.py:21 -#: .\contrib\admin\templates\admin\object_history.html.py:5 +#: contrib/admin/templates/admin/change_form.html:21 +#: contrib/admin/templates/admin/object_history.html:5 msgid "History" msgstr "Geschichte" -#: .\contrib\admin\templates\admin\change_form.html.py:22 +#: contrib/admin/templates/admin/change_form.html:22 msgid "View on site" -msgstr "Im Web Anzeigen" +msgstr "Im Web anzeigen" -#: .\contrib\admin\templates\admin\change_form.html.py:32 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:24 +#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/auth/user/change_password.html:24 msgid "Please correct the error below." msgid_plural "Please correct the errors below." msgstr[0] "Bitte den aufgeführten Fehler korrigieren." msgstr[1] "Bitte die aufgeführten Fehler korrigieren." -#: .\contrib\admin\templates\admin\change_form.html.py:50 +#: contrib/admin/templates/admin/change_form.html:50 msgid "Ordering" msgstr "Sortierung" -#: .\contrib\admin\templates\admin\change_form.html.py:53 +#: contrib/admin/templates/admin/change_form.html:53 msgid "Order:" msgstr "Reihenfolge:" -#: .\contrib\admin\templates\admin\change_list.html.py:12 +#: contrib/admin/templates/admin/change_list.html:12 #, python-format msgid "Add %(name)s" msgstr "%(name)s hinzufügen" -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:9 -#: .\contrib\admin\templates\admin\submit_line.html.py:3 +#: contrib/admin/templates/admin/delete_confirmation.html:9 +#: contrib/admin/templates/admin/submit_line.html:3 msgid "Delete" msgstr "Löschen" -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:14 +#: contrib/admin/templates/admin/delete_confirmation.html:14 #, python-format -msgid "Deleting the %(object_name)s '%(escaped_object)s' would result in deleting related objects, but your account doesn't have permission to delete the following types of objects:" -msgstr "Die Löschung des %(object_name)s '%(escaped_object)s' hätte die Löschung von abhängigen Daten zur Folge, aber Sie haben nicht die nötigen Rechte um die folgenden abhängigen Daten zu löschen:" +msgid "" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" +msgstr "" +"Die Löschung des %(object_name)s '%(escaped_object)s' hätte die Löschung von " +"abhängigen Daten zur Folge, aber Sie haben nicht die nötigen Rechte um die " +"folgenden abhängigen Daten zu löschen:" -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:21 +#: contrib/admin/templates/admin/delete_confirmation.html:21 #, python-format -msgid "Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? All of the following related items will be deleted:" -msgstr "Sind Sie sicher, dass Sie %(object_name)s \"%(escaped_object)s\" löschen wollen? Es werden zusätzlich die folgenden abhängigen Daten mit gelöscht:" +msgid "" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" +msgstr "" +"Sind Sie sicher, dass Sie %(object_name)s \"%(escaped_object)s\" löschen " +"wollen? Es werden zusätzlich die folgenden abhängigen Daten mit gelöscht:" -#: .\contrib\admin\templates\admin\delete_confirmation.html.py:26 +#: contrib/admin/templates/admin/delete_confirmation.html:26 msgid "Yes, I'm sure" msgstr "Ja, ich bin sicher" -#: .\contrib\admin\templates\admin\filter.html.py:2 +#: contrib/admin/templates/admin/filter.html:2 #, python-format msgid " By %(filter_title)s " msgstr " Nach %(filter_title)s " -#: .\contrib\admin\templates\admin\filters.html.py:4 +#: contrib/admin/templates/admin/filters.html:4 msgid "Filter" msgstr "Filter" -#: .\contrib\admin\templates\admin\index.html.py:17 +#: contrib/admin/templates/admin/index.html:17 #, python-format msgid "Models available in the %(name)s application." msgstr "Modelle, die in der Anwendung %(name)s vorhanden sind." -#: .\contrib\admin\templates\admin\index.html.py:18 +#: contrib/admin/templates/admin/index.html:18 #, python-format msgid "%(name)s" msgstr "%(name)s" -#: .\contrib\admin\templates\admin\index.html.py:34 +#: contrib/admin/templates/admin/index.html:34 msgid "Change" msgstr "Ändern" -#: .\contrib\admin\templates\admin\index.html.py:44 +#: contrib/admin/templates/admin/index.html:44 msgid "You don't have permission to edit anything." msgstr "Sie haben keine Berechtigung irgendwas zu ändern." -#: .\contrib\admin\templates\admin\index.html.py:52 +#: contrib/admin/templates/admin/index.html:52 msgid "Recent Actions" msgstr "Kürzliche Aktionen" -#: .\contrib\admin\templates\admin\index.html.py:53 +#: contrib/admin/templates/admin/index.html:53 msgid "My Actions" msgstr "Meine Aktionen" -#: .\contrib\admin\templates\admin\index.html.py:57 +#: contrib/admin/templates/admin/index.html:57 msgid "None available" msgstr "Keine vorhanden" -#: .\contrib\admin\templates\admin\invalid_setup.html.py:8 -msgid "Something's wrong with your database installation. Make sure the appropriate database tables have been created, and make sure the database is readable by the appropriate user." -msgstr "Etwas stimmt nicht mit der Datenbankkonfiguration. Bitte sicherstellen, das die richtigen Datenbanktabellen angelegt wurden und bitte sicherstellen, das die Datenbank vom verwendeten Datenbankbenutzer auch lesbar ist." +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "" +"Etwas stimmt nicht mit der Datenbankkonfiguration. Bitte sicherstellen, das " +"die richtigen Datenbanktabellen angelegt wurden und bitte sicherstellen, das " +"die Datenbank vom verwendeten Datenbankbenutzer auch lesbar ist." -#: .\contrib\admin\templates\admin\login.html.py:17 -#: .\contrib\comments\templates\comments\form.html.py:6 -#: .\contrib\comments\templates\comments\form.html.py:8 +#: contrib/admin/templates/admin/login.html:17 +#: contrib/comments/templates/comments/form.html:6 +#: contrib/comments/templates/comments/form.html:8 msgid "Username:" msgstr "Benutzername:" -#: .\contrib\admin\templates\admin\login.html.py:20 -#: .\contrib\comments\templates\comments\form.html.py:8 +#: contrib/admin/templates/admin/login.html:20 +#: contrib/comments/templates/comments/form.html:8 msgid "Password:" msgstr "Passwort:" -#: .\contrib\admin\templates\admin\login.html.py:25 -#: .\contrib\admin\views\decorators.py:24 +#: contrib/admin/templates/admin/login.html:25 +#: contrib/admin/views/decorators.py:24 msgid "Log in" msgstr "Anmelden" -#: .\contrib\admin\templates\admin\object_history.html.py:18 +#: contrib/admin/templates/admin/object_history.html:18 msgid "Date/time" msgstr "Datum/Zeit" -#: .\contrib\admin\templates\admin\object_history.html.py:19 +#: contrib/admin/templates/admin/object_history.html:19 msgid "User" msgstr "Benutzer" -#: .\contrib\admin\templates\admin\object_history.html.py:20 +#: contrib/admin/templates/admin/object_history.html:20 msgid "Action" msgstr "Aktion" -#: .\contrib\admin\templates\admin\object_history.html.py:26 +#: contrib/admin/templates/admin/object_history.html:26 msgid "DATE_WITH_TIME_FULL" msgstr "j. N Y, H:i" -#: .\contrib\admin\templates\admin\object_history.html.py:36 -msgid "This object doesn't have a change history. It probably wasn't added via this admin site." -msgstr "Dieses Objekt hat keine Änderungsgeschichte. Es wurde möglicherweise nicht über diese Verwaltungsseiten angelegt." +#: contrib/admin/templates/admin/object_history.html:36 +msgid "" +"This object doesn't have a change history. It probably wasn't added via this " +"admin site." +msgstr "" +"Dieses Objekt hat keine Änderungsgeschichte. Es wurde möglicherweise nicht " +"über diese Verwaltungsseiten angelegt." -#: .\contrib\admin\templates\admin\pagination.html.py:10 +#: contrib/admin/templates/admin/pagination.html:10 msgid "Show all" msgstr "Zeige alle" -#: .\contrib\admin\templates\admin\search_form.html.py:8 +#: contrib/admin/templates/admin/search_form.html:8 msgid "Go" msgstr "Los" -#: .\contrib\admin\templates\admin\search_form.html.py:10 +#: contrib/admin/templates/admin/search_form.html:10 #, python-format msgid "1 result" msgid_plural "%(counter)s results" msgstr[0] "Ein Ergebnis" msgstr[1] "%(counter)s Ergebnisse" -#: .\contrib\admin\templates\admin\search_form.html.py:10 +#: contrib/admin/templates/admin/search_form.html:10 #, python-format msgid "%(full_result_count)s total" msgstr "%(full_result_count)s gesamt" -#: .\contrib\admin\templates\admin\submit_line.html.py:4 +#: contrib/admin/templates/admin/submit_line.html:4 msgid "Save as new" msgstr "Als neu sichern" -#: .\contrib\admin\templates\admin\submit_line.html.py:5 +#: contrib/admin/templates/admin/submit_line.html:5 msgid "Save and add another" msgstr "Sichern und neu hinzufügen" -#: .\contrib\admin\templates\admin\submit_line.html.py:6 +#: contrib/admin/templates/admin/submit_line.html:6 msgid "Save and continue editing" msgstr "Sichern und weiter bearbeiten" -#: .\contrib\admin\templates\admin\submit_line.html.py:7 +#: contrib/admin/templates/admin/submit_line.html:7 msgid "Save" msgstr "Sichern" -#: .\contrib\admin\templates\admin\auth\user\add_form.html.py:6 -msgid "First, enter a username and password. Then, you'll be able to edit more user options." -msgstr "Zuerst einen Benutzer und ein Passwort eingeben. Danach können weitere Optionen für den Benutzer geändert werden." +#: contrib/admin/templates/admin/auth/user/add_form.html:6 +msgid "" +"First, enter a username and password. Then, you'll be able to edit more user " +"options." +msgstr "" +"Zuerst einen Benutzer und ein Passwort eingeben. Danach können weitere " +"Optionen für den Benutzer geändert werden." -#: .\contrib\admin\templates\admin\auth\user\add_form.html.py:12 +#: contrib/admin/templates/admin/auth/user/add_form.html:12 msgid "Username" msgstr "Benutzername" -#: .\contrib\admin\templates\admin\auth\user\add_form.html.py:18 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:34 +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +#: contrib/admin/templates/admin/auth/user/change_password.html:34 msgid "Password" msgstr "Passwort" -#: .\contrib\admin\templates\admin\auth\user\add_form.html.py:23 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:39 +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +#: contrib/admin/templates/admin/auth/user/change_password.html:39 msgid "Password (again)" msgstr "Passwort (wiederholen)" -#: .\contrib\admin\templates\admin\auth\user\add_form.html.py:24 -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:40 +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +#: contrib/admin/templates/admin/auth/user/change_password.html:40 msgid "Enter the same password as above, for verification." msgstr "Bitte das gleiche Passwort zur Überprüfung nochmal eingeben." -#: .\contrib\admin\templates\admin\auth\user\change_password.html.py:28 +#: contrib/admin/templates/admin/auth/user/change_password.html:28 #, python-format msgid "Enter a new password for the user <strong>%(username)s</strong>." -msgstr "Bitte geben Sie ein neues Passwort für den Benutzer <strong>%(username)s</strong> ein." +msgstr "" +"Bitte geben Sie ein neues Passwort für den Benutzer <strong>%(username)s</" +"strong> ein." -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:3 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 msgid "Bookmarklets" msgstr "Bookmarklets" -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:5 msgid "Documentation bookmarklets" msgstr "Dokumentations-Bookmarklets" -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:9 +#: contrib/admin/templates/admin_doc/bookmarklets.html:9 msgid "" "\n" "<p class=\"help\">To install bookmarklets, drag the link to your bookmarks\n" @@ -559,692 +614,742 @@ msgid "" "your computer is \"internal\").</p>\n" msgstr "" "\n" -"<p class=\"help\">Um Bookmarklets zu installieren müssen diese Links in die\n" -"Browser-Werkzeugleiste gezogen werden, oder mittels rechter Maustaste in die\n" -"Bookmarks gespeichert werden. Danach können die Bookmarklets von jeder Seite\n" +"<p class=\"help\">Um Bookmarklets zu installieren, müssen diese Links in die\n" +"Browser-Werkzeugleiste gezogen werden, oder mittels rechter Maustaste in " +"die\n" +"Bookmarks gespeichert werden. Danach können die Bookmarklets von jeder " +"Seite\n" "aufgerufen werden. Einige Bookmarklets sind für den Zugriff von 'internen'\n" "Rechnern eingeschränkt. Falls nicht klar ist, ob ein Rechner als 'intern'\n" "bewertet wird, bitte den Administrator fragen.</p>\n" -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:19 +#: contrib/admin/templates/admin_doc/bookmarklets.html:19 msgid "Documentation for this page" msgstr "Dokumentation für diese Seite" -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:20 -msgid "Jumps you from any page to the documentation for the view that generates that page." -msgstr "Springt von jeder Seite zu der Dokumentation für den View der diese Seite erzeugt." +#: contrib/admin/templates/admin_doc/bookmarklets.html:20 +msgid "" +"Jumps you from any page to the documentation for the view that generates " +"that page." +msgstr "" +"Springt von jeder Seite zu der Dokumentation für den View der diese Seite " +"erzeugt." -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:22 +#: contrib/admin/templates/admin_doc/bookmarklets.html:22 msgid "Show object ID" msgstr "Objekt-ID anzeigen" -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:23 -msgid "Shows the content-type and unique ID for pages that represent a single object." -msgstr "Zeigt den Content-Type und die eindeutige ID für Seiten die ein einzelnes Objekt repräsentieren." +#: contrib/admin/templates/admin_doc/bookmarklets.html:23 +msgid "" +"Shows the content-type and unique ID for pages that represent a single " +"object." +msgstr "" +"Zeigt den Content-Type und die eindeutige ID für Seiten die ein einzelnes " +"Objekt repräsentieren." -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:25 +#: contrib/admin/templates/admin_doc/bookmarklets.html:25 msgid "Edit this object (current window)" msgstr "Dieses Objekt im aktuellen Fenster ändern." -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:26 +#: contrib/admin/templates/admin_doc/bookmarklets.html:26 msgid "Jumps to the admin page for pages that represent a single object." -msgstr "Springt zu der Administrationsseite für dieses Objekt, wenn diese Seite ein Objekt repräsentiert." +msgstr "" +"Springt zu der Administrationsseite für dieses Objekt, wenn diese Seite ein " +"Objekt repräsentiert." -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:28 +#: contrib/admin/templates/admin_doc/bookmarklets.html:28 msgid "Edit this object (new window)" msgstr "Dieses Objekt in einem neuen Fenster ändern." -#: .\contrib\admin\templates\admin_doc\bookmarklets.html.py:29 +#: contrib/admin/templates/admin_doc/bookmarklets.html:29 msgid "As above, but opens the admin page in a new window." -msgstr "Wie zuvor, aber öffnet die Administrationsseite in einem neuen Fenster." +msgstr "" +"Wie zuvor, aber öffnet die Administrationsseite in einem neuen Fenster." -#: .\contrib\admin\templates\registration\logged_out.html.py:8 +#: contrib/admin/templates/registration/logged_out.html:8 msgid "Thanks for spending some quality time with the Web site today." msgstr "Vielen Dank, dass Sie hier ein paar nette Minuten verbracht haben." -#: .\contrib\admin\templates\registration\logged_out.html.py:10 +#: contrib/admin/templates/registration/logged_out.html:10 msgid "Log in again" msgstr "Erneut anmelden" -#: .\contrib\admin\templates\registration\password_change_done.html.py:4 -#: .\contrib\admin\templates\registration\password_change_form.html.py:4 -#: .\contrib\admin\templates\registration\password_change_form.html.py:6 -#: .\contrib\admin\templates\registration\password_change_form.html.py:10 +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_change_form.html:6 +#: contrib/admin/templates/registration/password_change_form.html:10 msgid "Password change" msgstr "Passwort ändern" -#: .\contrib\admin\templates\registration\password_change_done.html.py:6 -#: .\contrib\admin\templates\registration\password_change_done.html.py:10 +#: contrib/admin/templates/registration/password_change_done.html:6 +#: contrib/admin/templates/registration/password_change_done.html:10 msgid "Password change successful" msgstr "Passwort erfolgreich geändert" -#: .\contrib\admin\templates\registration\password_change_done.html.py:12 +#: contrib/admin/templates/registration/password_change_done.html:12 msgid "Your password was changed." msgstr "Ihr Passwort wurde geändert." -#: .\contrib\admin\templates\registration\password_change_form.html.py:12 -msgid "Please enter your old password, for security's sake, and then enter your new password twice so we can verify you typed it in correctly." -msgstr "Bitte geben Sie aus Sicherheitsgründen erst Ihr altes Passwort und darunter dann zweimal (um sicherzustellen, dass Sie es korrekt eingegeben haben) das neue Kennwort ein." +#: contrib/admin/templates/registration/password_change_form.html:12 +msgid "" +"Please enter your old password, for security's sake, and then enter your new " +"password twice so we can verify you typed it in correctly." +msgstr "" +"Bitte geben Sie aus Sicherheitsgründen erst Ihr altes Passwort und darunter " +"dann zweimal (um sicherzustellen, dass Sie es korrekt eingegeben haben) das " +"neue Kennwort ein." -#: .\contrib\admin\templates\registration\password_change_form.html.py:17 +#: contrib/admin/templates/registration/password_change_form.html:17 msgid "Old password:" msgstr "Altes Passwort:" -#: .\contrib\admin\templates\registration\password_change_form.html.py:19 +#: contrib/admin/templates/registration/password_change_form.html:19 msgid "New password:" msgstr "Neues Passwort:" -#: .\contrib\admin\templates\registration\password_change_form.html.py:21 +#: contrib/admin/templates/registration/password_change_form.html:21 msgid "Confirm password:" msgstr "Passwort wiederholen:" -#: .\contrib\admin\templates\registration\password_change_form.html.py:23 +#: contrib/admin/templates/registration/password_change_form.html:23 msgid "Change my password" msgstr "Mein Passwort ändern" -#: .\contrib\admin\templates\registration\password_reset_done.html.py:4 -#: .\contrib\admin\templates\registration\password_reset_form.html.py:4 -#: .\contrib\admin\templates\registration\password_reset_form.html.py:6 -#: .\contrib\admin\templates\registration\password_reset_form.html.py:10 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:6 +#: contrib/admin/templates/registration/password_reset_form.html:10 msgid "Password reset" msgstr "Passwort zurücksetzen" -#: .\contrib\admin\templates\registration\password_reset_done.html.py:6 -#: .\contrib\admin\templates\registration\password_reset_done.html.py:10 +#: contrib/admin/templates/registration/password_reset_done.html:6 +#: contrib/admin/templates/registration/password_reset_done.html:10 msgid "Password reset successful" msgstr "Passwort wurde erfolgreich zurückgesetzt" -#: .\contrib\admin\templates\registration\password_reset_done.html.py:12 -msgid "We've e-mailed a new password to the e-mail address you submitted. You should be receiving it shortly." -msgstr "Wir haben ein neues Passwort an die von Ihnen angegebene E-Mail-Adresse geschickt. Sie sollten es in Kürze erhalten." +#: contrib/admin/templates/registration/password_reset_done.html:12 +msgid "" +"We've e-mailed a new password to the e-mail address you submitted. You " +"should be receiving it shortly." +msgstr "" +"Wir haben ein neues Passwort an die von Ihnen angegebene E-Mail-Adresse " +"geschickt. Sie sollten es in Kürze erhalten." -#: .\contrib\admin\templates\registration\password_reset_email.html.py:2 +#: contrib/admin/templates/registration/password_reset_email.html:2 msgid "You're receiving this e-mail because you requested a password reset" msgstr "Sie erhalten diese E-Mail, weil Sie ein neues Passwort" -#: .\contrib\admin\templates\registration\password_reset_email.html.py:3 +#: contrib/admin/templates/registration/password_reset_email.html:3 #, python-format msgid "for your user account at %(site_name)s" msgstr "für Ihren Benutzer bei %(site_name)s angefordert haben." -#: .\contrib\admin\templates\registration\password_reset_email.html.py:5 +#: contrib/admin/templates/registration/password_reset_email.html:5 #, python-format msgid "Your new password is: %(new_password)s" msgstr "Ihr neues Passwort lautet: %(new_password)s" -#: .\contrib\admin\templates\registration\password_reset_email.html.py:7 +#: contrib/admin/templates/registration/password_reset_email.html:7 msgid "Feel free to change this password by going to this page:" msgstr "Sie können das Passwort auf folgender Seite ändern:" -#: .\contrib\admin\templates\registration\password_reset_email.html.py:11 +#: contrib/admin/templates/registration/password_reset_email.html:11 msgid "Your username, in case you've forgotten:" msgstr "Ihr Benutzername, falls Sie ihn vergessen haben:" -#: .\contrib\admin\templates\registration\password_reset_email.html.py:13 +#: contrib/admin/templates/registration/password_reset_email.html:13 msgid "Thanks for using our site!" msgstr "Vielen Dank, dass Sie unsere Seiten benutzen!" -#: .\contrib\admin\templates\registration\password_reset_email.html.py:15 +#: contrib/admin/templates/registration/password_reset_email.html:15 #, python-format msgid "The %(site_name)s team" msgstr "Das Team von %(site_name)s" -#: .\contrib\admin\templates\registration\password_reset_form.html.py:12 -msgid "Forgotten your password? Enter your e-mail address below, and we'll reset your password and e-mail the new one to you." -msgstr "Passwort vergessen? Einfach die E-Mail-Adresse eingeben und wir setzen das Passwort zurück und lassen es Ihnen per E-Mail zukommen." +#: contrib/admin/templates/registration/password_reset_form.html:12 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll reset " +"your password and e-mail the new one to you." +msgstr "" +"Passwort vergessen? Einfach die E-Mail-Adresse eingeben und wir setzen das " +"Passwort zurück und lassen es Ihnen per E-Mail zukommen." -#: .\contrib\admin\templates\registration\password_reset_form.html.py:16 +#: contrib/admin/templates/registration/password_reset_form.html:16 msgid "E-mail address:" msgstr "E-Mail-Adresse:" -#: .\contrib\admin\templates\registration\password_reset_form.html.py:16 +#: contrib/admin/templates/registration/password_reset_form.html:16 msgid "Reset my password" msgstr "Mein Passwort zurücksetzen" -#: .\contrib\admin\templates\widget\date_time.html.py:3 +#: contrib/admin/templates/widget/date_time.html:3 msgid "Date:" msgstr "Datum:" -#: .\contrib\admin\templates\widget\date_time.html.py:4 +#: contrib/admin/templates/widget/date_time.html:4 msgid "Time:" msgstr "Zeit:" -#: .\contrib\admin\templates\widget\file.html.py:2 +#: contrib/admin/templates/widget/file.html:2 msgid "Currently:" msgstr "Derzeit:" -#: .\contrib\admin\templates\widget\file.html.py:3 +#: contrib/admin/templates/widget/file.html:3 msgid "Change:" msgstr "Ändern:" -#: .\contrib\admin\templatetags\admin_list.py:238 +#: contrib/admin/templatetags/admin_list.py:247 msgid "All dates" msgstr "Alle Tage" -#: .\contrib\admin\views\auth.py:19 -#: .\contrib\admin\views\main.py:257 +#: contrib/admin/views/auth.py:19 contrib/admin/views/main.py:257 #, python-format msgid "The %(name)s \"%(obj)s\" was added successfully." msgstr "%(name)s \"%(obj)s\" wurde erfolgreich hinzugefügt." -#: .\contrib\admin\views\auth.py:24 -#: .\contrib\admin\views\main.py:261 -#: .\contrib\admin\views\main.py:347 +#: contrib/admin/views/auth.py:24 contrib/admin/views/main.py:261 +#: contrib/admin/views/main.py:347 msgid "You may edit it again below." msgstr "Das Element kann jetzt weiter bearbeitet werden." -#: .\contrib\admin\views\auth.py:30 +#: contrib/admin/views/auth.py:30 msgid "Add user" msgstr "Benutzer hinzufügen" -#: .\contrib\admin\views\auth.py:57 +#: contrib/admin/views/auth.py:57 msgid "Password changed successfully." msgstr "Passwort erfolgreich geändert." -#: .\contrib\admin\views\auth.py:64 +#: contrib/admin/views/auth.py:64 #, python-format msgid "Change password: %s" msgstr "Passwort ändern: %s" -#: .\contrib\admin\views\decorators.py:10 -#: .\contrib\auth\forms.py:59 -msgid "Please enter a correct username and password. Note that both fields are case-sensitive." -msgstr "Bitte einen Benutzernamen und ein Passwort eingeben. Beide Felder berücksichtigen die Groß-/Kleinschreibung." +#: contrib/admin/views/decorators.py:10 contrib/auth/forms.py:60 +msgid "" +"Please enter a correct username and password. Note that both fields are case-" +"sensitive." +msgstr "" +"Bitte einen Benutzernamen und ein Passwort eingeben. Beide Felder " +"berücksichtigen die Groß-/Kleinschreibung." -#: .\contrib\admin\views\decorators.py:62 -msgid "Please log in again, because your session has expired. Don't worry: Your submission has been saved." -msgstr "Bitte neu anmelden, da die Session ausgelaufen ist. Keine Angst, die Beiträge wurden gesichert." +#: contrib/admin/views/decorators.py:62 +msgid "" +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." +msgstr "" +"Bitte neu anmelden, da die Session ausgelaufen ist. Keine Angst, die " +"Beiträge wurden gesichert." -#: .\contrib\admin\views\decorators.py:69 -msgid "Looks like your browser isn't configured to accept cookies. Please enable cookies, reload this page, and try again." -msgstr "Es sieht danach aus, dass der Browser keine Cookies akzeptiert. Bitte im Browser Cookies aktivieren und diese Seite neu laden." +#: contrib/admin/views/decorators.py:69 +msgid "" +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." +msgstr "" +"Es sieht danach aus, dass der Browser keine Cookies akzeptiert. Bitte im " +"Browser Cookies aktivieren und diese Seite neu laden." -#: .\contrib\admin\views\decorators.py:83 +#: contrib/admin/views/decorators.py:83 msgid "Usernames cannot contain the '@' character." msgstr "Benutzernamen dürfen das Zeichen '@' nicht enthalten." -#: .\contrib\admin\views\decorators.py:85 +#: contrib/admin/views/decorators.py:85 #, python-format msgid "Your e-mail address is not your username. Try '%s' instead." -msgstr "Die E-Mail-Adresse entspricht nicht Ihrem Benutzernamen. Bitte stattdessen '%s' versuchen." +msgstr "" +"Die E-Mail-Adresse entspricht nicht Ihrem Benutzernamen. Bitte stattdessen '%" +"s' versuchen." -#: .\contrib\admin\views\doc.py:46 -#: .\contrib\admin\views\doc.py:48 -#: .\contrib\admin\views\doc.py:50 +#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 msgid "tag:" msgstr "Schlagwort:" -#: .\contrib\admin\views\doc.py:77 -#: .\contrib\admin\views\doc.py:79 -#: .\contrib\admin\views\doc.py:81 +#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 msgid "filter:" msgstr "Filter:" -#: .\contrib\admin\views\doc.py:135 -#: .\contrib\admin\views\doc.py:137 -#: .\contrib\admin\views\doc.py:139 +#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 msgid "view:" msgstr "Ansicht:" -#: .\contrib\admin\views\doc.py:164 +#: contrib/admin/views/doc.py:164 #, python-format msgid "App %r not found" msgstr "Anwendung %r nicht gefunden" -#: .\contrib\admin\views\doc.py:171 +#: contrib/admin/views/doc.py:171 #, python-format -msgid "Model %r not found in app %r" -msgstr "Modell %r wurde nicht in Anwendung %r gefunden" +msgid "Model %(name)r not found in app %(label)r" +msgstr "Modell %(name)r wurde nicht in Anwendung %(label)r gefunden" -#: .\contrib\admin\views\doc.py:183 +#: contrib/admin/views/doc.py:183 #, python-format -msgid "the related `%s.%s` object" -msgstr "Das verknüpfte `%s.%s` Objekt" +msgid "the related `%(label)s.%(type)s` object" +msgstr "Das verknüpfte `%(label)s.%(type)s` Objekt" -#: .\contrib\admin\views\doc.py:183 -#: .\contrib\admin\views\doc.py:205 -#: .\contrib\admin\views\doc.py:219 -#: .\contrib\admin\views\doc.py:224 +#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 msgid "model:" msgstr "Modell:" -#: .\contrib\admin\views\doc.py:214 +#: contrib/admin/views/doc.py:214 #, python-format -msgid "related `%s.%s` objects" -msgstr "verknüpftes `%s.%s` Objekt" +msgid "related `%(label)s.%(name)s` objects" +msgstr "verknüpftes `%(label)s.%(name)s` Objekt" -#: .\contrib\admin\views\doc.py:219 +#: contrib/admin/views/doc.py:219 #, python-format msgid "all %s" msgstr "Alle %s" -#: .\contrib\admin\views\doc.py:224 +#: contrib/admin/views/doc.py:224 #, python-format msgid "number of %s" msgstr "Anzahl von %s" -#: .\contrib\admin\views\doc.py:229 +#: contrib/admin/views/doc.py:229 #, python-format msgid "Fields on %s objects" msgstr "Felder am %s Objekt" -#: .\contrib\admin\views\doc.py:291 -#: .\contrib\admin\views\doc.py:301 -#: .\contrib\admin\views\doc.py:303 -#: .\contrib\admin\views\doc.py:309 -#: .\contrib\admin\views\doc.py:310 -#: .\contrib\admin\views\doc.py:312 +#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 msgid "Integer" msgstr "Ganzzahl" -#: .\contrib\admin\views\doc.py:292 +#: contrib/admin/views/doc.py:292 msgid "Boolean (Either True or False)" msgstr "Boolscher Wert (True oder False)" -#: .\contrib\admin\views\doc.py:293 -#: .\contrib\admin\views\doc.py:311 +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 #, python-format msgid "String (up to %(maxlength)s)" msgstr "Zeichenkette (bis zu %(maxlength)s Zeichen)" -#: .\contrib\admin\views\doc.py:294 +#: contrib/admin/views/doc.py:294 msgid "Comma-separated integers" msgstr "Kommaseparierte Liste von Ganzzahlen" -#: .\contrib\admin\views\doc.py:295 +#: contrib/admin/views/doc.py:295 msgid "Date (without time)" msgstr "Datum (ohne Uhrzeit)" -#: .\contrib\admin\views\doc.py:296 +#: contrib/admin/views/doc.py:296 msgid "Date (with time)" msgstr "Datum (mit Uhrzeit)" -#: .\contrib\admin\views\doc.py:297 +#: contrib/admin/views/doc.py:297 msgid "E-mail address" msgstr "E-Mail-Adresse" -#: .\contrib\admin\views\doc.py:298 -#: .\contrib\admin\views\doc.py:299 -#: .\contrib\admin\views\doc.py:302 +#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 msgid "File path" msgstr "Dateipfad" -#: .\contrib\admin\views\doc.py:300 +#: contrib/admin/views/doc.py:300 msgid "Decimal number" msgstr "Dezimalzahl" -#: .\contrib\admin\views\doc.py:304 -#: .\contrib\comments\models.py:85 +#: contrib/admin/views/doc.py:304 contrib/comments/models.py:85 msgid "IP address" msgstr "IP-Adresse" -#: .\contrib\admin\views\doc.py:306 +#: contrib/admin/views/doc.py:306 msgid "Boolean (Either True, False or None)" msgstr "Boolscher Wert (True, False oder None)" -#: .\contrib\admin\views\doc.py:307 +#: contrib/admin/views/doc.py:307 msgid "Relation to parent model" msgstr "Beziehung zum Eltern-Modell" -#: .\contrib\admin\views\doc.py:308 +#: contrib/admin/views/doc.py:308 msgid "Phone number" msgstr "Telefonnummer" -#: .\contrib\admin\views\doc.py:313 +#: contrib/admin/views/doc.py:313 msgid "Text" msgstr "Text" -#: .\contrib\admin\views\doc.py:314 +#: contrib/admin/views/doc.py:314 msgid "Time" msgstr "Zeit" -#: .\contrib\admin\views\doc.py:315 -#: .\contrib\flatpages\models.py:7 +#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 msgid "URL" msgstr "Adresse (URL)" -#: .\contrib\admin\views\doc.py:316 +#: contrib/admin/views/doc.py:316 msgid "U.S. state (two uppercase letters)" msgstr "U.S. Bundesstaat (zwei Großbuchstaben)" -#: .\contrib\admin\views\doc.py:317 +#: contrib/admin/views/doc.py:317 msgid "XML text" msgstr "XML-Text" -#: .\contrib\admin\views\doc.py:343 +#: contrib/admin/views/doc.py:343 #, python-format msgid "%s does not appear to be a urlpattern object" msgstr "%s ist scheinbar kein urlpattern Objekt" -#: .\contrib\admin\views\main.py:223 +#: contrib/admin/views/main.py:223 msgid "Site administration" -msgstr "Website Verwaltung" +msgstr "Website-Verwaltung" -#: .\contrib\admin\views\main.py:271 -#: .\contrib\admin\views\main.py:356 +#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 #, python-format msgid "You may add another %s below." msgstr "Jetzt kann ein weiteres Element vom Typ %s angelegt werden." -#: .\contrib\admin\views\main.py:289 +#: contrib/admin/views/main.py:289 #, python-format msgid "Add %s" msgstr "%s hinzufügen" -#: .\contrib\admin\views\main.py:335 +#: contrib/admin/views/main.py:335 #, python-format msgid "Added %s." msgstr "%s hinzugefügt." -#: .\contrib\admin\views\main.py:335 -#: .\contrib\admin\views\main.py:337 -#: .\contrib\admin\views\main.py:339 -#: .\db\models\manipulators.py:306 +#: contrib/admin/views/main.py:335 contrib/admin/views/main.py:337 +#: contrib/admin/views/main.py:339 db/models/manipulators.py:308 msgid "and" msgstr "und" -#: .\contrib\admin\views\main.py:337 +#: contrib/admin/views/main.py:337 #, python-format msgid "Changed %s." -msgstr "%s geändert" +msgstr "%s geändert." -#: .\contrib\admin\views\main.py:339 +#: contrib/admin/views/main.py:339 #, python-format msgid "Deleted %s." msgstr "%s gelöscht." -#: .\contrib\admin\views\main.py:342 +#: contrib/admin/views/main.py:342 msgid "No fields changed." msgstr "Keine Felder geändert." -#: .\contrib\admin\views\main.py:345 +#: contrib/admin/views/main.py:345 #, python-format msgid "The %(name)s \"%(obj)s\" was changed successfully." msgstr "%(name)s \"%(obj)s\" wurde erfolgreich geändert." -#: .\contrib\admin\views\main.py:353 +#: contrib/admin/views/main.py:353 #, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." -msgstr "%(name)s \"%(obj)s\" wurde erfolgreich hinzugefügt. Das Element kann jetzt geändert werden." +msgid "" +"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "" +"%(name)s \"%(obj)s\" wurde erfolgreich hinzugefügt. Das Element kann jetzt " +"geändert werden." -#: .\contrib\admin\views\main.py:391 +#: contrib/admin/views/main.py:391 #, python-format msgid "Change %s" msgstr "%s ändern" -#: .\contrib\admin\views\main.py:473 +#: contrib/admin/views/main.py:476 #, python-format msgid "One or more %(fieldname)s in %(name)s: %(obj)s" msgstr "Ein oder mehrere %(fieldname)s in %(name)s: %(obj)s" -#: .\contrib\admin\views\main.py:478 +#: contrib/admin/views/main.py:481 #, python-format msgid "One or more %(fieldname)s in %(name)s:" msgstr "Ein oder mehrere %(fieldname)s in %(name)s:" -#: .\contrib\admin\views\main.py:511 +#: contrib/admin/views/main.py:514 #, python-format msgid "The %(name)s \"%(obj)s\" was deleted successfully." msgstr "%(name)s \"%(obj)s\" wurde erfolgreich gelöscht." -#: .\contrib\admin\views\main.py:514 +#: contrib/admin/views/main.py:517 msgid "Are you sure?" msgstr "Sind Sie ganz sicher?" -#: .\contrib\admin\views\main.py:536 +#: contrib/admin/views/main.py:539 #, python-format msgid "Change history: %s" msgstr "Änderungsgeschichte: %s" -#: .\contrib\admin\views\main.py:570 +#: contrib/admin/views/main.py:573 #, python-format msgid "Select %s" msgstr "%s auswählen" -#: .\contrib\admin\views\main.py:570 +#: contrib/admin/views/main.py:573 #, python-format msgid "Select %s to change" msgstr "%s zur Änderung auswählen" -#: .\contrib\admin\views\main.py:758 +#: contrib/admin/views/main.py:768 msgid "Database error" msgstr "Datenbankfehler" -#: .\contrib\auth\forms.py:16 -#: .\contrib\auth\forms.py:137 +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 msgid "The two password fields didn't match." msgstr "Die beiden Passwörter sind nicht identisch." -#: .\contrib\auth\forms.py:24 +#: contrib/auth/forms.py:25 msgid "A user with that username already exists." msgstr "Ein Benutzer mit diesem Namen existiert bereits." -#: .\contrib\auth\forms.py:52 -msgid "Your Web browser doesn't appear to have cookies enabled. Cookies are required for logging in." -msgstr "Der Webbrowser scheint keine Cookies aktiviert zu haben. Cookies sind für die Anmeldung zwingend erforderlich." +#: contrib/auth/forms.py:53 +msgid "" +"Your Web browser doesn't appear to have cookies enabled. Cookies are " +"required for logging in." +msgstr "" +"Der Webbrowser scheint keine Cookies aktiviert zu haben. Cookies sind für " +"die Anmeldung zwingend erforderlich." -#: .\contrib\auth\forms.py:61 +#: contrib/auth/forms.py:62 msgid "This account is inactive." msgstr "Dieser Benutzer ist inaktiv." -#: .\contrib\auth\forms.py:84 -msgid "That e-mail address doesn't have an associated user account. Are you sure you've registered?" -msgstr "Zu dieser E-Mail-Adresse existiert kein Benutzer. Sicher, dass Sie sich mit dieser Adresse angemeldet haben?" +#: contrib/auth/forms.py:85 +msgid "" +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "" +"Zu dieser E-Mail-Adresse existiert kein Benutzer. Sicher, dass Sie sich mit " +"dieser Adresse angemeldet haben?" -#: .\contrib\auth\forms.py:116 +#: contrib/auth/forms.py:117 msgid "The two 'new password' fields didn't match." msgstr "Die beiden neuen Passwörter sind nicht identisch." -#: .\contrib\auth\forms.py:123 +#: contrib/auth/forms.py:124 msgid "Your old password was entered incorrectly. Please enter it again." msgstr "Das alte Passwort war falsch. Bitte neu eingeben." -#: .\contrib\auth\models.py:38 -#: .\contrib\auth\models.py:57 +#: contrib/auth/models.py:38 contrib/auth/models.py:58 msgid "name" msgstr "Name" -#: .\contrib\auth\models.py:40 +#: contrib/auth/models.py:40 msgid "codename" msgstr "Codename" -#: .\contrib\auth\models.py:42 +#: contrib/auth/models.py:43 msgid "permission" msgstr "Berechtigung" -#: .\contrib\auth\models.py:43 -#: .\contrib\auth\models.py:58 +#: contrib/auth/models.py:44 contrib/auth/models.py:59 msgid "permissions" msgstr "Berechtigungen" -#: .\contrib\auth\models.py:60 +#: contrib/auth/models.py:62 msgid "group" msgstr "Gruppe" -#: .\contrib\auth\models.py:61 -#: .\contrib\auth\models.py:100 +#: contrib/auth/models.py:63 contrib/auth/models.py:103 msgid "groups" msgstr "Gruppen" -#: .\contrib\auth\models.py:90 +#: contrib/auth/models.py:93 msgid "username" msgstr "Benutzername" -#: .\contrib\auth\models.py:90 -msgid "Required. 30 characters or fewer. Alphanumeric characters only (letters, digits and underscores)." -msgstr "Erforderlich. 30 Zeichen oder weniger. Alphanumerische Zeichen (Buchstaben, Ziffern und Unterstriche sind erlaubt)." +#: contrib/auth/models.py:93 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." +msgstr "" +"Erforderlich. 30 Zeichen oder weniger. Alphanumerische Zeichen (Buchstaben, " +"Ziffern und Unterstriche sind erlaubt)." -#: .\contrib\auth\models.py:91 +#: contrib/auth/models.py:94 msgid "first name" msgstr "Vorname" -#: .\contrib\auth\models.py:92 +#: contrib/auth/models.py:95 msgid "last name" msgstr "Nachname" -#: .\contrib\auth\models.py:93 +#: contrib/auth/models.py:96 msgid "e-mail address" msgstr "E-Mail-Adresse" -#: .\contrib\auth\models.py:94 +#: contrib/auth/models.py:97 msgid "password" msgstr "Passwort" -#: .\contrib\auth\models.py:94 -msgid "Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change password form</a>." -msgstr "Die Form '[algo]$[salt]$[hexdigest]' verwenden, oder das <a href=\"password/\">Passwort ändern Formular</a> benutzen." +#: contrib/auth/models.py:97 +msgid "" +"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " +"password form</a>." +msgstr "" +"Die Form '[algo]$[salt]$[hexdigest]' verwenden, oder das <a href=\"password/" +"\">Passwort ändern Formular</a> benutzen." -#: .\contrib\auth\models.py:95 +#: contrib/auth/models.py:98 msgid "staff status" msgstr "Administrator" -#: .\contrib\auth\models.py:95 +#: contrib/auth/models.py:98 msgid "Designates whether the user can log into this admin site." -msgstr "Legt fest, ob sich der Benutzer an der Administrationsseite anmelden kann." +msgstr "" +"Legt fest, ob sich der Benutzer an der Administrationsseite anmelden kann." -#: .\contrib\auth\models.py:96 +#: contrib/auth/models.py:99 msgid "active" msgstr "Aktiv" -#: .\contrib\auth\models.py:96 -msgid "Designates whether this user can log into the Django admin. Unselect this instead of deleting accounts." -msgstr "Legt fest, ob sich der Benutzer an der Administrationsseite anmelden kann. Anstatt einen Benutzer zu löschen, kann er hier auch einfach deaktiviert werden." +#: contrib/auth/models.py:99 +msgid "" +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." +msgstr "" +"Legt fest, ob sich der Benutzer an der Administrationsseite anmelden kann. " +"Anstatt einen Benutzer zu löschen, kann er hier auch einfach deaktiviert " +"werden." -#: .\contrib\auth\models.py:97 +#: contrib/auth/models.py:100 msgid "superuser status" msgstr "Hauptadmin." -#: .\contrib\auth\models.py:97 -msgid "Designates that this user has all permissions without explicitly assigning them." -msgstr "Legt fest, dass der Benutzer alle Berechtigungen hat, ohne diese einzeln zuweisen zu müssen." +#: contrib/auth/models.py:100 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "" +"Legt fest, dass der Benutzer alle Berechtigungen hat, ohne diese einzeln " +"zuweisen zu müssen." -#: .\contrib\auth\models.py:98 +#: contrib/auth/models.py:101 msgid "last login" msgstr "Letzte Anmeldung" -#: .\contrib\auth\models.py:99 +#: contrib/auth/models.py:102 msgid "date joined" msgstr "Mitglied seit" -#: .\contrib\auth\models.py:101 -msgid "In addition to the permissions manually assigned, this user will also get all permissions granted to each group he/she is in." -msgstr "Zusätzlich zu den manuell angelegten Rechten erhält dieser Benutzer auch alle Rechte, die seine zugewiesenen Gruppen haben." +#: contrib/auth/models.py:104 +msgid "" +"In addition to the permissions manually assigned, this user will also get " +"all permissions granted to each group he/she is in." +msgstr "" +"Zusätzlich zu den manuell angelegten Rechten erhält dieser Benutzer auch " +"alle Rechte, die seine zugewiesenen Gruppen haben." -#: .\contrib\auth\models.py:102 +#: contrib/auth/models.py:105 msgid "user permissions" msgstr "Berechtigungen" -#: .\contrib\auth\models.py:105 +#: contrib/auth/models.py:109 msgid "user" msgstr "Benutzer" -#: .\contrib\auth\models.py:106 +#: contrib/auth/models.py:110 msgid "users" msgstr "Benutzer" -#: .\contrib\auth\models.py:111 +#: contrib/auth/models.py:116 msgid "Personal info" msgstr "Persönliche Infos" -#: .\contrib\auth\models.py:112 +#: contrib/auth/models.py:117 msgid "Permissions" msgstr "Berechtigungen" -#: .\contrib\auth\models.py:113 +#: contrib/auth/models.py:118 msgid "Important dates" msgstr "Wichtige Daten" -#: .\contrib\auth\models.py:114 +#: contrib/auth/models.py:119 msgid "Groups" msgstr "Gruppen" -#: .\contrib\auth\models.py:258 +#: contrib/auth/models.py:263 msgid "message" msgstr "Mitteilung" -#: .\contrib\auth\views.py:39 +#: contrib/auth/views.py:39 msgid "Logged out" msgstr "Abgemeldet" -#: .\contrib\comments\models.py:67 -#: .\contrib\comments\models.py:166 +#: contrib/comments/models.py:67 contrib/comments/models.py:166 msgid "object ID" msgstr "Objekt-ID" -#: .\contrib\comments\models.py:68 +#: contrib/comments/models.py:68 msgid "headline" msgstr "Überschrift" -#: .\contrib\comments\models.py:69 -#: .\contrib\comments\models.py:90 -#: .\contrib\comments\models.py:167 +#: contrib/comments/models.py:69 contrib/comments/models.py:90 +#: contrib/comments/models.py:167 msgid "comment" msgstr "Kommentar" -#: .\contrib\comments\models.py:70 +#: contrib/comments/models.py:70 msgid "rating #1" msgstr "Bewertung #1" -#: .\contrib\comments\models.py:71 +#: contrib/comments/models.py:71 msgid "rating #2" msgstr "Bewertung #2" -#: .\contrib\comments\models.py:72 +#: contrib/comments/models.py:72 msgid "rating #3" msgstr "Bewertung #3" -#: .\contrib\comments\models.py:73 +#: contrib/comments/models.py:73 msgid "rating #4" msgstr "Bewertung #4" -#: .\contrib\comments\models.py:74 +#: contrib/comments/models.py:74 msgid "rating #5" msgstr "Bewertung #5" -#: .\contrib\comments\models.py:75 +#: contrib/comments/models.py:75 msgid "rating #6" msgstr "Bewertung #6" -#: .\contrib\comments\models.py:76 +#: contrib/comments/models.py:76 msgid "rating #7" msgstr "Bewertung #7" -#: .\contrib\comments\models.py:77 +#: contrib/comments/models.py:77 msgid "rating #8" msgstr "Bewertung #8" -#: .\contrib\comments\models.py:82 +#: contrib/comments/models.py:82 msgid "is valid rating" msgstr "ist eine Bewertung" -#: .\contrib\comments\models.py:83 -#: .\contrib\comments\models.py:169 +#: contrib/comments/models.py:83 contrib/comments/models.py:169 msgid "date/time submitted" msgstr "Datum/Zeit Erstellung" -#: .\contrib\comments\models.py:84 -#: .\contrib\comments\models.py:170 +#: contrib/comments/models.py:84 contrib/comments/models.py:170 msgid "is public" msgstr "ist öffentlich" -#: .\contrib\comments\models.py:86 +#: contrib/comments/models.py:86 msgid "is removed" msgstr "ist gelöscht" -#: .\contrib\comments\models.py:86 -msgid "Check this box if the comment is inappropriate. A \"This comment has been removed\" message will be displayed instead." -msgstr "Hier einen Haken setzen, wenn der Kommentar unpassend ist. Stattdessen wird dann \"Dieser Kommentar wurde entfernt\" Meldung angezeigt." +#: contrib/comments/models.py:86 +msgid "" +"Check this box if the comment is inappropriate. A \"This comment has been " +"removed\" message will be displayed instead." +msgstr "" +"Hier einen Haken setzen, wenn der Kommentar unpassend ist. Stattdessen wird " +"dann \"Dieser Kommentar wurde entfernt\" Meldung angezeigt." -#: .\contrib\comments\models.py:91 +#: contrib/comments/models.py:91 msgid "comments" msgstr "Kommentare" -#: .\contrib\comments\models.py:131 -#: .\contrib\comments\models.py:207 +#: contrib/comments/models.py:131 contrib/comments/models.py:207 msgid "Content object" msgstr "Inhaltsobjekt" -#: .\contrib\comments\models.py:159 +#: contrib/comments/models.py:159 #, python-format msgid "" "Posted by %(user)s at %(date)s\n" @@ -1259,48 +1364,48 @@ msgstr "" "\n" "http://%(domain)s%(url)s" -#: .\contrib\comments\models.py:168 +#: contrib/comments/models.py:168 msgid "person's name" msgstr "Autorname" -#: .\contrib\comments\models.py:171 +#: contrib/comments/models.py:171 msgid "ip address" msgstr "IP-Adresse" -#: .\contrib\comments\models.py:173 +#: contrib/comments/models.py:173 msgid "approved by staff" msgstr "Bestätigt vom Betreiber" -#: .\contrib\comments\models.py:176 +#: contrib/comments/models.py:176 msgid "free comment" msgstr "Freier Kommentar" -#: .\contrib\comments\models.py:177 +#: contrib/comments/models.py:177 msgid "free comments" msgstr "Freie Kommentare" -#: .\contrib\comments\models.py:233 +#: contrib/comments/models.py:233 msgid "score" msgstr "Bewertung" -#: .\contrib\comments\models.py:234 +#: contrib/comments/models.py:234 msgid "score date" msgstr "Bewertungsdatum" -#: .\contrib\comments\models.py:237 +#: contrib/comments/models.py:237 msgid "karma score" msgstr "Karma Bewertung" -#: .\contrib\comments\models.py:238 +#: contrib/comments/models.py:238 msgid "karma scores" msgstr "Karma Bewertungen" -#: .\contrib\comments\models.py:242 +#: contrib/comments/models.py:242 #, python-format msgid "%(score)d rating by %(user)s" msgstr "%(score)d Bewertung von %(user)s" -#: .\contrib\comments\models.py:258 +#: contrib/comments/models.py:258 #, python-format msgid "" "This comment was flagged by %(user)s:\n" @@ -1311,100 +1416,107 @@ msgstr "" "\n" "%(text)s" -#: .\contrib\comments\models.py:265 +#: contrib/comments/models.py:265 msgid "flag date" msgstr "Kennzeichnungsdatum" -#: .\contrib\comments\models.py:268 +#: contrib/comments/models.py:268 msgid "user flag" msgstr "Benutzerkennzeichnung" -#: .\contrib\comments\models.py:269 +#: contrib/comments/models.py:269 msgid "user flags" msgstr "Benutzerkennzeichnungen" -#: .\contrib\comments\models.py:273 +#: contrib/comments/models.py:273 #, python-format msgid "Flag by %r" msgstr "Gekennzeichnet von %r" -#: .\contrib\comments\models.py:278 +#: contrib/comments/models.py:278 msgid "deletion date" msgstr "Löschdatum" -#: .\contrib\comments\models.py:280 +#: contrib/comments/models.py:280 msgid "moderator deletion" msgstr "Löschung vom Moderator" -#: .\contrib\comments\models.py:281 +#: contrib/comments/models.py:281 msgid "moderator deletions" msgstr "Löschungen vom Moderator" -#: .\contrib\comments\models.py:285 +#: contrib/comments/models.py:285 #, python-format msgid "Moderator deletion by %r" msgstr "Vom Moderator %r gelöscht" -#: .\contrib\comments\templates\comments\form.html.py:8 +#: contrib/comments/templates/comments/form.html:8 msgid "Forgotten your password?" msgstr "Passwort vergessen?" -#: .\contrib\comments\templates\comments\form.html.py:12 +#: contrib/comments/templates/comments/form.html:12 msgid "Ratings" msgstr "Bewertungen" -#: .\contrib\comments\templates\comments\form.html.py:12 -#: .\contrib\comments\templates\comments\form.html.py:23 +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 msgid "Required" msgstr "Erforderlich" -#: .\contrib\comments\templates\comments\form.html.py:12 -#: .\contrib\comments\templates\comments\form.html.py:23 +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 msgid "Optional" msgstr "Optional" -#: .\contrib\comments\templates\comments\form.html.py:23 +#: contrib/comments/templates/comments/form.html:23 msgid "Post a photo" msgstr "Ein Bild veröffentlichen" -#: .\contrib\comments\templates\comments\form.html.py:28 -#: .\contrib\comments\templates\comments\freeform.html.py:5 +#: contrib/comments/templates/comments/form.html:28 +#: contrib/comments/templates/comments/freeform.html:5 msgid "Comment:" msgstr "Kommentar:" -#: .\contrib\comments\templates\comments\form.html.py:35 -#: .\contrib\comments\templates\comments\freeform.html.py:10 +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 msgid "Preview comment" msgstr "Kommentarvorschau" -#: .\contrib\comments\templates\comments\freeform.html.py:4 +#: contrib/comments/templates/comments/freeform.html:4 msgid "Your name:" msgstr "Ihr Name:" -#: .\contrib\comments\views\comments.py:27 -msgid "This rating is required because you've entered at least one other rating." -msgstr "Diese Abstimmung ist zwingend erforderlich, da Du an mindestens einer weiteren Abstimmung teilnimmst." +#: contrib/comments/views/comments.py:27 +msgid "" +"This rating is required because you've entered at least one other rating." +msgstr "" +"Diese Abstimmung ist zwingend erforderlich, da Sie an mindestens einer " +"weiteren Abstimmung teilnehmen." -#: .\contrib\comments\views\comments.py:111 +#: contrib/comments/views/comments.py:111 #, python-format msgid "" -"This comment was posted by a user who has posted fewer than %(count)s comment:\n" +"This comment was posted by a user who has posted fewer than %(count)s " +"comment:\n" "\n" "%(text)s" msgid_plural "" -"This comment was posted by a user who has posted fewer than %(count)s comments:\n" +"This comment was posted by a user who has posted fewer than %(count)s " +"comments:\n" "\n" "%(text)s" msgstr[0] "" -"Dieser Kommentar ist von einem Benutzer mit weniger als %(count)s Kommentar:\n" +"Dieser Kommentar ist von einem Benutzer mit weniger als %(count)s " +"Kommentar:\n" "\n" "%(text)s" msgstr[1] "" -"Dieser Kommentar ist von einem Benutzer mit weniger als %(count)s Kommentaren:\n" +"Dieser Kommentar ist von einem Benutzer mit weniger als %(count)s " +"Kommentaren:\n" "\n" "%(text)s" -#: .\contrib\comments\views\comments.py:116 +#: contrib/comments/views/comments.py:116 #, python-format msgid "" "This comment was posted by a sketchy user:\n" @@ -1415,266 +1527,678 @@ msgstr "" "\n" "%(text)s" -#: .\contrib\comments\views\comments.py:188 -#: .\contrib\comments\views\comments.py:280 +#: contrib/comments/views/comments.py:188 +#: contrib/comments/views/comments.py:280 msgid "Only POSTs are allowed" msgstr "Nur POST ist erlaubt" -#: .\contrib\comments\views\comments.py:192 -#: .\contrib\comments\views\comments.py:284 +#: contrib/comments/views/comments.py:192 +#: contrib/comments/views/comments.py:284 msgid "One or more of the required fields wasn't submitted" msgstr "Eines oder mehrere der erforderlichen Felder fehlen" -#: .\contrib\comments\views\comments.py:196 -#: .\contrib\comments\views\comments.py:286 +#: contrib/comments/views/comments.py:196 +#: contrib/comments/views/comments.py:286 msgid "Somebody tampered with the comment form (security violation)" -msgstr "Jemand hat mit dem Kommentarformular herumgespielt (Sicherheitsverletzung)" +msgstr "" +"Jemand hat mit dem Kommentarformular herumgespielt (Sicherheitsverletzung)" -#: .\contrib\comments\views\comments.py:206 -#: .\contrib\comments\views\comments.py:292 -msgid "The comment form had an invalid 'target' parameter -- the object ID was invalid" -msgstr "Das Kommentarformular hatte einen falschen 'target' Parameter -- die Objekt-ID ist ungültig." +#: contrib/comments/views/comments.py:206 +#: contrib/comments/views/comments.py:292 +msgid "" +"The comment form had an invalid 'target' parameter -- the object ID was " +"invalid" +msgstr "" +"Das Kommentarformular hatte einen falschen 'target' Parameter -- die Objekt-" +"ID ist ungültig." -#: .\contrib\comments\views\comments.py:257 -#: .\contrib\comments\views\comments.py:321 +#: contrib/comments/views/comments.py:257 +#: contrib/comments/views/comments.py:321 msgid "The comment form didn't provide either 'preview' or 'post'" -msgstr "Das Kommentarformular wurde nicht mit 'preview' oder 'post' abgeschickt" +msgstr "" +"Das Kommentarformular wurde nicht mit 'preview' oder 'post' abgeschickt" -#: .\contrib\comments\views\karma.py:19 +#: contrib/comments/views/karma.py:19 msgid "Anonymous users cannot vote" msgstr "Anonyme Benutzer dürfen nicht abstimmen" -#: .\contrib\comments\views\karma.py:23 +#: contrib/comments/views/karma.py:23 msgid "Invalid comment ID" msgstr "Ungültige Kommentar-ID" -#: .\contrib\comments\views\karma.py:25 +#: contrib/comments/views/karma.py:25 msgid "No voting for yourself" msgstr "Keine Abstimmung für dich selbst" -#: .\contrib\contenttypes\models.py:26 +#: contrib/contenttypes/models.py:36 msgid "python model class name" msgstr "Python Model-Klassenname" -#: .\contrib\contenttypes\models.py:29 +#: contrib/contenttypes/models.py:39 msgid "content type" msgstr "Inhaltstyp" -#: .\contrib\contenttypes\models.py:30 +#: contrib/contenttypes/models.py:40 msgid "content types" msgstr "Inhaltstypen" -#: .\contrib\flatpages\models.py:8 -msgid "Example: '/about/contact/'. Make sure to have leading and trailing slashes." -msgstr "Beispiel: '/about/contact/'. Wichtig: vorne und hinten muss ein / stehen." +#: contrib/flatpages/models.py:8 +msgid "" +"Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "" +"Beispiel: '/about/contact/'. Wichtig: vorne und hinten muss ein / stehen." -#: .\contrib\flatpages\models.py:9 +#: contrib/flatpages/models.py:9 msgid "title" msgstr "Titel" -#: .\contrib\flatpages\models.py:10 +#: contrib/flatpages/models.py:10 msgid "content" msgstr "Inhalt" -#: .\contrib\flatpages\models.py:11 +#: contrib/flatpages/models.py:11 msgid "enable comments" msgstr "Kommentare aktivieren" -#: .\contrib\flatpages\models.py:12 +#: contrib/flatpages/models.py:12 msgid "template name" msgstr "Name der Vorlage" -#: .\contrib\flatpages\models.py:13 -msgid "Example: 'flatpages/contact_page.html'. If this isn't provided, the system will use 'flatpages/default.html'." -msgstr "Beispiel: 'flatpages/contact_page.html'. Wenn dieses Feld nicht gefüllt ist, wird 'flatpages/default.html' als Standard gewählt." +#: contrib/flatpages/models.py:13 +msgid "" +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." +msgstr "" +"Beispiel: 'flatpages/contact_page.html'. Wenn dieses Feld nicht gefüllt ist, " +"wird 'flatpages/default.html' als Standard gewählt." -#: .\contrib\flatpages\models.py:14 +#: contrib/flatpages/models.py:14 msgid "registration required" msgstr "Registrierung erforderlich" -#: .\contrib\flatpages\models.py:14 +#: contrib/flatpages/models.py:14 msgid "If this is checked, only logged-in users will be able to view the page." -msgstr "Wenn hier ein Haken gesetzt ist, können nur angemeldete Benutzer diese Seite sehen." +msgstr "" +"Wenn hier ein Haken gesetzt ist, können nur angemeldete Benutzer diese Seite " +"sehen." -#: .\contrib\flatpages\models.py:18 +#: contrib/flatpages/models.py:18 msgid "flat page" msgstr "Webseite" -#: .\contrib\flatpages\models.py:19 +#: contrib/flatpages/models.py:19 msgid "flat pages" msgstr "Webseiten" -#: .\contrib\redirects\models.py:7 +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "st" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "nd" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "ein" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "zwei" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "drei" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "four" +msgstr "vier" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "fünf" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "sechs" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "sieben" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "acht" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "neun" + +#: contrib/localflavor/au/forms.py:18 +msgid "Enter a 4 digit post code." +msgstr "Bitte eine gültige vierstellige Postleitzahl eingeben." + +#: contrib/localflavor/br/forms.py:18 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "Bitte eine gültige Postleitzahl im Format XXXXX-XXX eingeben." + +#: contrib/localflavor/br/forms.py:30 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "Telefonnummern müssen das Format XXX-XXX-XXXX haben." + +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" +msgstr "Baden-Württemberg" + +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "Bayern" + +#: contrib/localflavor/de/de_states.py:7 +msgid "Berlin" +msgstr "Berlin" + +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "Brandenburg" + +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "Bremen" + +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "Hamburg" + +#: contrib/localflavor/de/de_states.py:11 +msgid "Hessen" +msgstr "Hessen" + +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "Mecklenburg-Vorpommern" + +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "Niedersachsen" + +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "Nordrhein-Westfalen" + +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "Rheinland-Pfalz" + +#: contrib/localflavor/de/de_states.py:16 +msgid "Saarland" +msgstr "Saarland" + +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "Sachsen" + +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "Sachsen-Anhalt" + +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "Schleswig-Holstein" + +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "Thüringen" + +#: contrib/localflavor/de/forms.py:16 contrib/localflavor/fi/forms.py:14 +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/it/forms.py:14 +msgid "Enter a zip code in the format XXXXX." +msgstr "Bitte eine gültige Postleitzahl im Format XXXXX eingeben." + +#: contrib/localflavor/de/forms.py:60 +msgid "" +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." +msgstr "" +"Bitte eine gültige deutsche Personalausweisnummer im Format " +"XXXXXXXXXXX-XXXXXXX-XXXXXXX-X eingeben." + +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:45 +msgid "Enter a valid Finnish social security number." +msgstr "Bitte eine gültige finnische Sozialversicherungsnummer eingeben." + +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "" +"Bitte eine gültige Postleitzahl im Format XXXXXXX oder XXX-XXXX " +"eingeben." + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "Zeit" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "" + +#: contrib/localflavor/no/forms.py:15 +msgid "Enter a zip code in the format XXXX." +msgstr "Bitte eine gültige Postleitzahl im Format XXXX eingeben." + +#: contrib/localflavor/no/forms.py:36 +msgid "Enter a valid Norwegian social security number." +msgstr "Bitte eine gültige norwegische Sozialversicherungsnummer eingeben." + +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "Bitte eine gültige Postleitzahl eingeben. Ein Leerzeichen trennt die zwei Teile." + +#: contrib/localflavor/us/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "Bitte eine gültige Postleitzahl im Format XXXXX oder XXXXX-XXXX eingeben." + +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "" +"Bitte eine gültige US-amerikanische Sozialversicherungsnummer im Format " +"XXX-XX-XXXX eingeben." + +#: contrib/redirects/models.py:7 msgid "redirect from" msgstr "Umleitung von" -#: .\contrib\redirects\models.py:8 -msgid "This should be an absolute path, excluding the domain name. Example: '/events/search/'." -msgstr "Hier sollte ein absoluter Pfad stehen, ohne den Domainnamen. Beispiel: '/events/search/'." +#: contrib/redirects/models.py:8 +msgid "" +"This should be an absolute path, excluding the domain name. Example: '/" +"events/search/'." +msgstr "" +"Hier sollte ein absoluter Pfad stehen, ohne den Domainnamen. Beispiel: '/" +"events/search/'." -#: .\contrib\redirects\models.py:9 +#: contrib/redirects/models.py:9 msgid "redirect to" msgstr "Umleitung zu" -#: .\contrib\redirects\models.py:10 -msgid "This can be either an absolute path (as above) or a full URL starting with 'http://'." -msgstr "Hier muss entweder ein absoluter Pfad oder eine komplette URL mit http:// am Anfang stehen." +#: contrib/redirects/models.py:10 +msgid "" +"This can be either an absolute path (as above) or a full URL starting with " +"'http://'." +msgstr "" +"Hier muss entweder ein absoluter Pfad oder eine komplette URL mit http:// am " +"Anfang stehen." -#: .\contrib\redirects\models.py:13 +#: contrib/redirects/models.py:13 msgid "redirect" msgstr "Umleitung" -#: .\contrib\redirects\models.py:14 +#: contrib/redirects/models.py:14 msgid "redirects" msgstr "Umleitungen" -#: .\contrib\sessions\models.py:51 +#: contrib/sessions/models.py:68 msgid "session key" msgstr "Sitzungs-ID" -#: .\contrib\sessions\models.py:52 +#: contrib/sessions/models.py:69 msgid "session data" msgstr "Sitzungsdaten" -#: .\contrib\sessions\models.py:53 +#: contrib/sessions/models.py:70 msgid "expire date" msgstr "Verfallsdatum" -#: .\contrib\sessions\models.py:57 +#: contrib/sessions/models.py:74 msgid "session" msgstr "Sitzung" -#: .\contrib\sessions\models.py:58 +#: contrib/sessions/models.py:75 msgid "sessions" msgstr "Sitzungen" -#: .\contrib\sites\models.py:10 +#: contrib/sites/models.py:10 msgid "domain name" msgstr "Domainname" -#: .\contrib\sites\models.py:11 +#: contrib/sites/models.py:11 msgid "display name" msgstr "Anzeigename" -#: .\contrib\sites\models.py:15 +#: contrib/sites/models.py:15 msgid "site" msgstr "Website" -#: .\contrib\sites\models.py:16 +#: contrib/sites/models.py:16 msgid "sites" msgstr "Websites" -#: .\core\validators.py:64 +#: core/validators.py:64 msgid "This value must contain only letters, numbers and underscores." msgstr "Dieser Wert darf nur Buchstaben, Ziffern und Unterstriche enthalten." -#: .\core\validators.py:68 -msgid "This value must contain only letters, numbers, underscores, dashes or slashes." -msgstr "Dieser Wert darf nur Buchstaben, Ziffern, Unterstriche und Schrägstriche enthalten." +#: core/validators.py:68 +msgid "" +"This value must contain only letters, numbers, underscores, dashes or " +"slashes." +msgstr "" +"Dieser Wert darf nur Buchstaben, Ziffern, Unterstriche und Schrägstriche " +"enthalten." -#: .\core\validators.py:72 +#: core/validators.py:72 msgid "This value must contain only letters, numbers, underscores or hyphens." -msgstr "Dieser Wert darf nur Buchstaben, Ziffern, Unterstriche und Bindestriche enthalten." +msgstr "" +"Dieser Wert darf nur Buchstaben, Ziffern, Unterstriche und Bindestriche " +"enthalten." -#: .\core\validators.py:76 +#: core/validators.py:76 msgid "Uppercase letters are not allowed here." msgstr "Großbuchstaben sind hier nicht erlaubt." -#: .\core\validators.py:80 +#: core/validators.py:80 msgid "Lowercase letters are not allowed here." msgstr "Kleinbuchstaben sind hier nicht erlaubt." -#: .\core\validators.py:87 +#: core/validators.py:87 msgid "Enter only digits separated by commas." msgstr "Hier sind nur durch Komma getrennte Ziffern erlaubt." -#: .\core\validators.py:99 +#: core/validators.py:99 msgid "Enter valid e-mail addresses separated by commas." msgstr "Bitte mit Komma getrennte, gültige E-Mail-Adressen eingeben." -#: .\core\validators.py:103 +#: core/validators.py:103 msgid "Please enter a valid IP address." msgstr "Bitte eine gültige IP-Adresse eingeben." -#: .\core\validators.py:107 +#: core/validators.py:107 msgid "Empty values are not allowed here." msgstr "Dieses Feld darf nicht leer sein." -#: .\core\validators.py:111 +#: core/validators.py:111 msgid "Non-numeric characters aren't allowed here." msgstr "Nichtnumerische Zeichen sind hier nicht erlaubt." -#: .\core\validators.py:115 +#: core/validators.py:115 msgid "This value can't be comprised solely of digits." msgstr "Dieser Wert darf nicht nur aus Ziffern bestehen." -#: .\core\validators.py:120 -#: .\newforms\fields.py:126 +#: core/validators.py:120 newforms/fields.py:128 msgid "Enter a whole number." msgstr "Bitte eine ganze Zahl eingeben." -#: .\core\validators.py:124 +#: core/validators.py:124 msgid "Only alphabetical characters are allowed here." msgstr "Nur alphabetische Zeichen sind hier erlaubt." -#: .\core\validators.py:139 +#: core/validators.py:139 msgid "Year must be 1900 or later." msgstr "Das Jahr muss 1900 oder später sein." -#: .\core\validators.py:143 +#: core/validators.py:143 #, python-format -msgid "Invalid date: %s." +msgid "Invalid date: %s" msgstr "Ungültiges Datum: %s" -#: .\core\validators.py:147 -#: .\db\models\fields\__init__.py:448 +#: core/validators.py:148 db/models/fields/__init__.py:457 msgid "Enter a valid date in YYYY-MM-DD format." msgstr "Bitte ein gültiges Datum im Format JJJJ-MM-TT eingeben." -#: .\core\validators.py:152 +#: core/validators.py:153 msgid "Enter a valid time in HH:MM format." msgstr "Bitte eine gültige Zeit im Format SS:MM eingeben." -#: .\core\validators.py:156 -#: .\db\models\fields\__init__.py:515 +#: core/validators.py:157 db/models/fields/__init__.py:526 msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." -msgstr "Bitte eine gültige Datums- und Zeitangabe im Format JJJJ-MM-TT SS:MM eingeben." +msgstr "" +"Bitte eine gültige Datums- und Zeitangabe im Format JJJJ-MM-TT SS:MM " +"eingeben." -#: .\core\validators.py:161 -#: .\newforms\fields.py:269 +#: core/validators.py:162 newforms/fields.py:271 msgid "Enter a valid e-mail address." msgstr "Bitte eine gültige E-Mail-Adresse eingeben." -#: .\core\validators.py:173 -#: .\core\validators.py:442 -#: .\oldforms\__init__.py:667 +#: core/validators.py:174 core/validators.py:445 oldforms/__init__.py:672 msgid "No file was submitted. Check the encoding type on the form." -msgstr "Es wurde keine Datei übermittelt. Eventuell ist das Formular-Encoding falsch." +msgstr "" +"Es wurde keine Datei übermittelt. Eventuell ist das Formular-Encoding falsch." -#: .\core\validators.py:177 -msgid "Upload a valid image. The file you uploaded was either not an image or a corrupted image." -msgstr "Bitte ein Bild hochladen. Die hochgeladene Datei ist kein Bild, oder ist defekt." +#: core/validators.py:178 +msgid "" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." +msgstr "" +"Bitte ein Bild hochladen. Die hochgeladene Datei ist kein Bild, oder ist " +"defekt." -#: .\core\validators.py:184 +#: core/validators.py:185 #, python-format msgid "The URL %s does not point to a valid image." msgstr "Die URL %s zeigt nicht auf ein gültiges Bild." -#: .\core\validators.py:188 +#: core/validators.py:189 #, python-format msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." -msgstr "Telefonnummern müssen das Format XXX-XXX-XXXX haben. \"%s\" ist ungültig." +msgstr "" +"Telefonnummern müssen das Format XXX-XXX-XXXX haben. \"%s\" ist ungültig." -#: .\core\validators.py:196 +#: core/validators.py:197 #, python-format msgid "The URL %s does not point to a valid QuickTime video." msgstr "Die URL %s zeigt nicht auf ein gültiges QuickTime-Video." -#: .\core\validators.py:200 +#: core/validators.py:201 msgid "A valid URL is required." msgstr "Eine gültige URL wird hier verlangt." -#: .\core\validators.py:214 +#: core/validators.py:215 #, python-format msgid "" "Valid HTML is required. Specific errors are:\n" @@ -1683,543 +2207,604 @@ msgstr "" "Bitte gültiges HTML eingeben. Fehler sind:\n" "%s" -#: .\core\validators.py:221 +#: core/validators.py:222 #, python-format msgid "Badly formed XML: %s" msgstr "Ungültiges XML: %s" -#: .\core\validators.py:238 +#: core/validators.py:239 #, python-format msgid "Invalid URL: %s" msgstr "Ungültige URL: %s" -#: .\core\validators.py:243 -#: .\core\validators.py:245 +#: core/validators.py:244 core/validators.py:246 #, python-format msgid "The URL %s is a broken link." msgstr "Die URL %s funktioniert nicht." -#: .\core\validators.py:251 +#: core/validators.py:252 msgid "Enter a valid U.S. state abbreviation." msgstr "Bitte eine gültige Abkürzung für einen US-Staat eingeben." -#: .\core\validators.py:265 +#: core/validators.py:266 #, python-format msgid "Watch your mouth! The word %s is not allowed here." msgid_plural "Watch your mouth! The words %s are not allowed here." msgstr[0] "Keine Schimpfworte! Das Wort %s ist hier nicht gern gesehen!" msgstr[1] "Keine Schimpfworte! Die Wörter %s sind hier nicht gern gesehen!" -#: .\core\validators.py:272 +#: core/validators.py:273 #, python-format msgid "This field must match the '%s' field." msgstr "Dieses Feld muss zum Feld '%s' passen." -#: .\core\validators.py:291 +#: core/validators.py:292 msgid "Please enter something for at least one field." msgstr "Bitte mindestens eines der Felder ausfüllen." -#: .\core\validators.py:300 -#: .\core\validators.py:311 +#: core/validators.py:301 core/validators.py:312 msgid "Please enter both fields or leave them both empty." msgstr "Bitte entweder beide Felder ausfüllen, oder beide leer lassen." -#: .\core\validators.py:318 +#: core/validators.py:320 #, python-format msgid "This field must be given if %(field)s is %(value)s" -msgstr "Dieses Feld muss gefüllt sein, wenn Feld %(field)s den Wert %(value)s hat." +msgstr "" +"Dieses Feld muss gefüllt sein, wenn Feld %(field)s den Wert %(value)s hat." -#: .\core\validators.py:330 +#: core/validators.py:333 #, python-format msgid "This field must be given if %(field)s is not %(value)s" -msgstr "Dieses Feld muss gefüllt sein, wenn Feld %(field)s nicht %(value)s ist." +msgstr "" +"Dieses Feld muss gefüllt sein, wenn Feld %(field)s nicht %(value)s ist." -#: .\core\validators.py:349 +#: core/validators.py:352 msgid "Duplicate values are not allowed." msgstr "Doppelte Werte sind hier nicht erlaubt." -#: .\core\validators.py:364 +#: core/validators.py:367 #, python-format -msgid "This value must be between %s and %s." -msgstr "Dieser Wert muss zwischen %s und %s sein." +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "Dieser Wert muss zwischen %(lower)s und %(upper)s sein." -#: .\core\validators.py:366 +#: core/validators.py:369 #, python-format msgid "This value must be at least %s." msgstr "Dieser Wert muss mindestens %s sein." -#: .\core\validators.py:368 +#: core/validators.py:371 #, python-format msgid "This value must be no more than %s." msgstr "Dieser Wert darf maximal %s sein." -#: .\core\validators.py:404 +#: core/validators.py:407 #, python-format msgid "This value must be a power of %s." msgstr "Dieser Wert muss eine Potenz von %s sein." -#: .\core\validators.py:415 +#: core/validators.py:418 msgid "Please enter a valid decimal number." msgstr "Bitte eine gültige Dezimalzahl eingeben." -#: .\core\validators.py:419 +#: core/validators.py:422 #, python-format msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "Please enter a valid decimal number with at most %s total digits." +msgid_plural "" +"Please enter a valid decimal number with at most %s total digits." msgstr[0] "Bitte eine gültige Dezimalzahl mit maximal %s Ziffer eingeben." msgstr[1] "Bitte eine gültige Dezimalzahl mit maximal %s Ziffern eingeben." -#: .\core\validators.py:422 +#: core/validators.py:425 #, python-format -msgid "Please enter a valid decimal number with a whole part of at most %s digit." -msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." -msgstr[0] "Bitte eine gültige Dezimalzahl mit einer Gesamtzahl von maximal %s Ziffer eingeben." -msgstr[1] "Bitte eine gültige Dezimalzahl mit einer Gesamtzahl von maximal %s Ziffern eingeben." +msgid "" +"Please enter a valid decimal number with a whole part of at most %s digit." +msgid_plural "" +"Please enter a valid decimal number with a whole part of at most %s digits." +msgstr[0] "" +"Bitte eine gültige Dezimalzahl mit einer Gesamtzahl von maximal %s Ziffer " +"eingeben." +msgstr[1] "" +"Bitte eine gültige Dezimalzahl mit einer Gesamtzahl von maximal %s Ziffern " +"eingeben." -#: .\core\validators.py:425 +#: core/validators.py:428 #, python-format msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "Please enter a valid decimal number with at most %s decimal places." -msgstr[0] "Bitte eine gültige Dezimalzahl mit maximal %s Dezimalstelle eingeben." -msgstr[1] "Bitte eine gültige Dezimalzahl mit maximal %s Dezimalstellen eingeben." +msgid_plural "" +"Please enter a valid decimal number with at most %s decimal places." +msgstr[0] "" +"Bitte eine gültige Dezimalzahl mit maximal %s Dezimalstelle eingeben." +msgstr[1] "" +"Bitte eine gültige Dezimalzahl mit maximal %s Dezimalstellen eingeben." -#: .\core\validators.py:435 +#: core/validators.py:438 #, python-format msgid "Make sure your uploaded file is at least %s bytes big." -msgstr "Bitte sicherstellen, dass die hochgeladene Datei mindestens %s Bytes groß ist." +msgstr "" +"Bitte sicherstellen, dass die hochgeladene Datei mindestens %s Bytes groß " +"ist." -#: .\core\validators.py:436 +#: core/validators.py:439 #, python-format msgid "Make sure your uploaded file is at most %s bytes big." -msgstr "Bitte sicherstellen, dass die hochgeladene Datei maximal %s Bytes groß ist." +msgstr "" +"Bitte sicherstellen, dass die hochgeladene Datei maximal %s Bytes groß ist." -#: .\core\validators.py:453 +#: core/validators.py:456 msgid "The format for this field is wrong." msgstr "Das Format für dieses Feld ist falsch." -#: .\core\validators.py:468 +#: core/validators.py:471 msgid "This field is invalid." msgstr "Dieses Feld ist ungültig." -#: .\core\validators.py:504 +#: core/validators.py:507 #, python-format msgid "Could not retrieve anything from %s." msgstr "Konnte nichts von %s empfangen." -#: .\core\validators.py:507 +#: core/validators.py:510 #, python-format -msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgid "" +"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." msgstr "Die URL %(url)s lieferte den falschen Content-Type '%(contenttype)s'." -#: .\core\validators.py:540 +#: core/validators.py:543 #, python-format -msgid "Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with \"%(start)s\".)" -msgstr "Bitte das ungeschlossene %(tag)s Tag in Zeile %(line)s schließen. Die Zeile beginnt mit \"%(start)s\"." +msgid "" +"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " +"\"%(start)s\".)" +msgstr "" +"Bitte das ungeschlossene %(tag)s Tag in Zeile %(line)s schließen. Die Zeile " +"beginnt mit \"%(start)s\"." -#: .\core\validators.py:544 +#: core/validators.py:547 #, python-format -msgid "Some text starting on line %(line)s is not allowed in that context. (Line starts with \"%(start)s\".)" -msgstr "In Zeile %(line)s ist Text, der nicht in dem Kontext erlaubt ist. Die Zeile beginnt mit \"%(start)s\"." +msgid "" +"Some text starting on line %(line)s is not allowed in that context. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"In Zeile %(line)s ist Text, der nicht in dem Kontext erlaubt ist. Die Zeile " +"beginnt mit \"%(start)s\"." -#: .\core\validators.py:549 +#: core/validators.py:552 #, python-format -msgid "\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%(start)s\".)" -msgstr "Das Attribute %(attr)s in Zeile %(line)s ist ungültig. Die Zeile beginnt mit \"%(start)s\"." +msgid "" +"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"Das Attribute %(attr)s in Zeile %(line)s ist ungültig. Die Zeile beginnt mit " +"\"%(start)s\"." -#: .\core\validators.py:554 +#: core/validators.py:557 #, python-format -msgid "\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%(start)s\".)" -msgstr "<%(tag)s> in Zeile %(line)s ist ungültig. Die Zeile beginnt mit \"%(start)s\"." +msgid "" +"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"<%(tag)s> in Zeile %(line)s ist ungültig. Die Zeile beginnt mit \"%(start)s" +"\"." -#: .\core\validators.py:558 +#: core/validators.py:561 #, python-format -msgid "A tag on line %(line)s is missing one or more required attributes. (Line starts with \"%(start)s\".)" -msgstr "Ein Tag in Zeile %(line)s hat eines oder mehrere Pflichtattribute nicht. Die Zeile beginnt mit \"%(start)s\"." +msgid "" +"A tag on line %(line)s is missing one or more required attributes. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Ein Tag in Zeile %(line)s hat eines oder mehrere Pflichtattribute nicht. Die " +"Zeile beginnt mit \"%(start)s\"." -#: .\core\validators.py:563 +#: core/validators.py:566 #, python-format -msgid "The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line starts with \"%(start)s\".)" -msgstr "Das Attribut %(attr)s in Zeile %(line)s hat einen ungültigen Wert. Die Zeile beginnt mit \"%(start)s\"." +msgid "" +"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Das Attribut %(attr)s in Zeile %(line)s hat einen ungültigen Wert. Die Zeile " +"beginnt mit \"%(start)s\"." -#: .\db\models\manipulators.py:305 +#: db/models/manipulators.py:307 #, python-format msgid "%(object)s with this %(type)s already exists for the given %(field)s." -msgstr "Ein '%(object)s' in dieser '%(type)s' existiert bereits für dieses '%(field)s'." - -#: .\db\models\fields\related.py:53 -#, python-format -msgid "Please enter a valid %s." -msgstr "Bitte ein gültiges '%s' eingeben." - -#: .\db\models\fields\related.py:642 -msgid "Separate multiple IDs with commas." -msgstr "Mehrere IDs können mit Komma getrennt werden." - -#: .\db\models\fields\related.py:644 -msgid "Hold down \"Control\", or \"Command\" on a Mac, to select more than one." -msgstr "Um mehr als eine Selektion zu treffen, \"Strg\", oder auf dem Mac \"Command\", beim Klicken gedrückt halten." - -#: .\db\models\fields\related.py:691 -#, python-format -msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." -msgid_plural "Please enter valid %(self)s IDs. The values %(value)r are invalid." -msgstr[0] "Bitte gültige IDs für %(self)s eingeben. Der Wert %(value)r ist ungültig." -msgstr[1] "Bitte gültige IDs für %(self)s eingeben. Die Werte %(value)r sind ungültig." +msgstr "" +"Ein '%(object)s' in dieser '%(type)s' existiert bereits für dieses '%(field)" +"s'." -#: .\db\models\fields\__init__.py:42 +#: db/models/fields/__init__.py:42 #, python-format msgid "%(optname)s with this %(fieldname)s already exists." msgstr "Ein '%(optname)s' mit diesem '%(fieldname)s' existiert bereits." -#: .\db\models\fields\__init__.py:116 -#: .\db\models\fields\__init__.py:267 -#: .\db\models\fields\__init__.py:599 -#: .\db\models\fields\__init__.py:610 -#: .\newforms\fields.py:78 -#: .\newforms\fields.py:373 -#: .\newforms\fields.py:449 -#: .\newforms\fields.py:460 -#: .\oldforms\__init__.py:352 +#: db/models/fields/__init__.py:117 db/models/fields/__init__.py:274 +#: db/models/fields/__init__.py:610 db/models/fields/__init__.py:621 +#: newforms/fields.py:80 newforms/fields.py:376 newforms/fields.py:452 +#: newforms/fields.py:463 newforms/models.py:178 oldforms/__init__.py:357 msgid "This field is required." msgstr "Dieses Feld ist zwingend erforderlich." -#: .\db\models\fields\__init__.py:360 +#: db/models/fields/__init__.py:367 msgid "This value must be an integer." msgstr "Dieser Wert muss eine Ganzzahl sein." -#: .\db\models\fields\__init__.py:395 +#: db/models/fields/__init__.py:402 msgid "This value must be either True or False." msgstr "Dieser Wert muss wahr oder falsch sein." -#: .\db\models\fields\__init__.py:416 +#: db/models/fields/__init__.py:423 msgid "This field cannot be null." msgstr "Dieses Feld darf nicht leer sein." -#: .\db\models\fields\__init__.py:619 +#: db/models/fields/__init__.py:630 msgid "Enter a valid filename." msgstr "Bitte einen gültigen Dateinamen eingeben." -#: .\newforms\fields.py:101 -#: .\newforms\fields.py:254 +#: db/models/fields/__init__.py:751 +msgid "This value must be either None, True or False." +msgstr "Dieser Wert muss None, True oder False sein." + +#: db/models/fields/related.py:53 +#, python-format +msgid "Please enter a valid %s." +msgstr "Bitte ein gültiges '%s' eingeben." + +#: db/models/fields/related.py:642 +msgid "Separate multiple IDs with commas." +msgstr "Mehrere IDs können mit Komma getrennt werden." + +#: db/models/fields/related.py:644 +msgid "" +"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "" +"Um mehr als eine Selektion zu treffen, \"Strg\", oder auf dem Mac \"Command" +"\", beim Klicken gedrückt halten." + +#: db/models/fields/related.py:691 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +msgid_plural "" +"Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr[0] "" +"Bitte gültige IDs für %(self)s eingeben. Der Wert %(value)r ist ungültig." +msgstr[1] "" +"Bitte gültige IDs für %(self)s eingeben. Die Werte %(value)r sind ungültig." + +#: newforms/fields.py:103 newforms/fields.py:256 #, python-format msgid "Ensure this value has at most %d characters." msgstr "Bitte sicherstellen, dass der Text maximal %d Zeichen hat." -#: .\newforms\fields.py:103 -#: .\newforms\fields.py:256 +#: newforms/fields.py:105 newforms/fields.py:258 #, python-format msgid "Ensure this value has at least %d characters." msgstr "Bitte sicherstellen, dass der Text wenigstens %d Zeichen hat." -#: .\newforms\fields.py:128 +#: newforms/fields.py:130 #, python-format msgid "Ensure this value is less than or equal to %s." msgstr "Dieser Wert darf maximal %s sein." -#: .\newforms\fields.py:130 +#: newforms/fields.py:132 #, python-format msgid "Ensure this value is greater than or equal to %s." msgstr "Dieser Wert muss größer oder gleich %s sein." -#: .\newforms\fields.py:163 +#: newforms/fields.py:165 msgid "Enter a valid date." msgstr "Bitte ein gültiges Datum eingeben." -#: .\newforms\fields.py:190 +#: newforms/fields.py:192 msgid "Enter a valid time." msgstr "Bitte eine gültige Uhrzeit eingeben." -#: .\newforms\fields.py:226 +#: newforms/fields.py:228 msgid "Enter a valid date/time." msgstr "Bitte gültiges Datum und Uhrzeit eingeben." -#: .\newforms\fields.py:240 +#: newforms/fields.py:242 msgid "Enter a valid value." msgstr "Bitte einen gültigen Wert eingeben." -#: .\newforms\fields.py:287 -#: .\newforms\fields.py:309 +#: newforms/fields.py:289 newforms/fields.py:311 msgid "Enter a valid URL." msgstr "Bitte eine gültige Adresse eingeben." -#: .\newforms\fields.py:311 +#: newforms/fields.py:313 msgid "This URL appears to be a broken link." msgstr "Diese Adresse scheint nicht gültig zu sein." -#: .\newforms\fields.py:359 -#: .\newforms\fields.py:386 -#, python-format -msgid "Select a valid choice. %s is not one of the available choices." -msgstr "Bitte eine gültige Auswahl treffen. %s ist keine gültige Auswahl." +#: newforms/fields.py:362 newforms/models.py:165 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "Bitte eine gültige Auswahl treffen." -#: .\newforms\fields.py:377 -#: .\newforms\fields.py:453 +#: newforms/fields.py:380 newforms/fields.py:456 newforms/models.py:182 msgid "Enter a list of values." msgstr "Eine Liste mit Werten eingeben." -#: .\oldforms\__init__.py:387 +#: newforms/fields.py:389 newforms/models.py:188 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "Bitte eine gültige Auswahl treffen. %s ist keine gültige Auswahl." + +#: oldforms/__init__.py:392 #, python-format msgid "Ensure your text is less than %s character." msgid_plural "Ensure your text is less than %s characters." msgstr[0] "Bitte sicherstellen, dass der Text weniger als %s Zeichen hat." msgstr[1] "Bitte sicherstellen, dass der Text weniger als %s Zeichen hat." -#: .\oldforms\__init__.py:392 +#: oldforms/__init__.py:397 msgid "Line breaks are not allowed here." msgstr "Zeilenumbrüche sind hier nicht erlaubt." -#: .\oldforms\__init__.py:493 -#: .\oldforms\__init__.py:566 -#: .\oldforms\__init__.py:605 +#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 #, python-format msgid "Select a valid choice; '%(data)s' is not in %(choices)s." -msgstr "Bitte eine gültige Auswahl treffen; '%(data)s' ist nicht in %(choices)s." +msgstr "" +"Bitte eine gültige Auswahl treffen; '%(data)s' ist nicht in %(choices)s." -#: .\oldforms\__init__.py:669 +#: oldforms/__init__.py:674 msgid "The submitted file is empty." msgstr "Die ausgewählte Datei ist leer." -#: .\oldforms\__init__.py:725 +#: oldforms/__init__.py:730 msgid "Enter a whole number between -32,768 and 32,767." msgstr "Bitte eine Ganzzahl zwischen -32.768 und 32.767 eingeben." -#: .\oldforms\__init__.py:735 +#: oldforms/__init__.py:740 msgid "Enter a positive number." msgstr "Bitte eine ganze, positive Zahl eingeben." -#: .\oldforms\__init__.py:745 +#: oldforms/__init__.py:750 msgid "Enter a whole number between 0 and 32,767." msgstr "Bitte eine ganze Zahl zwischen 0 und 32.767 eingeben." -#: .\template\defaultfilters.py:419 +#: template/defaultfilters.py:491 msgid "yes,no,maybe" msgstr "Ja,Nein,Vielleicht" -#: .\utils\dates.py:6 +#: utils/dateformat.py:40 +msgid "p.m." +msgstr "nachm." + +#: utils/dateformat.py:41 +msgid "a.m." +msgstr "vorm." + +#: utils/dateformat.py:46 +msgid "PM" +msgstr "nachm." + +#: utils/dateformat.py:47 +msgid "AM" +msgstr "vorm." + +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "Mitternacht" + +#: utils/dateformat.py:97 +msgid "noon" +msgstr "Mittag" + +#: utils/dates.py:6 msgid "Monday" msgstr "Montag" -#: .\utils\dates.py:6 +#: utils/dates.py:6 msgid "Tuesday" msgstr "Dienstag" -#: .\utils\dates.py:6 +#: utils/dates.py:6 msgid "Wednesday" msgstr "Mittwoch" -#: .\utils\dates.py:6 +#: utils/dates.py:6 msgid "Thursday" msgstr "Donnerstag" -#: .\utils\dates.py:6 +#: utils/dates.py:6 msgid "Friday" msgstr "Freitag" -#: .\utils\dates.py:7 +#: utils/dates.py:7 msgid "Saturday" msgstr "Samstag" -#: .\utils\dates.py:7 +#: utils/dates.py:7 msgid "Sunday" msgstr "Sonntag" -#: .\utils\dates.py:14 +#: utils/dates.py:14 msgid "January" msgstr "Januar" -#: .\utils\dates.py:14 +#: utils/dates.py:14 msgid "February" msgstr "Februar" -#: .\utils\dates.py:14 -#: .\utils\dates.py:27 +#: utils/dates.py:14 utils/dates.py:27 msgid "March" msgstr "März" -#: .\utils\dates.py:14 -#: .\utils\dates.py:27 +#: utils/dates.py:14 utils/dates.py:27 msgid "April" msgstr "April" -#: .\utils\dates.py:14 -#: .\utils\dates.py:27 +#: utils/dates.py:14 utils/dates.py:27 msgid "May" msgstr "Mai" -#: .\utils\dates.py:14 -#: .\utils\dates.py:27 +#: utils/dates.py:14 utils/dates.py:27 msgid "June" msgstr "Juni" -#: .\utils\dates.py:15 -#: .\utils\dates.py:27 +#: utils/dates.py:15 utils/dates.py:27 msgid "July" msgstr "Juli" -#: .\utils\dates.py:15 +#: utils/dates.py:15 msgid "August" msgstr "August" -#: .\utils\dates.py:15 +#: utils/dates.py:15 msgid "September" msgstr "September" -#: .\utils\dates.py:15 +#: utils/dates.py:15 msgid "October" msgstr "Oktober" -#: .\utils\dates.py:15 +#: utils/dates.py:15 msgid "November" msgstr "November" -#: .\utils\dates.py:16 +#: utils/dates.py:16 msgid "December" msgstr "Dezember" -#: .\utils\dates.py:19 +#: utils/dates.py:19 msgid "jan" msgstr "Jan" -#: .\utils\dates.py:19 +#: utils/dates.py:19 msgid "feb" msgstr "Feb" -#: .\utils\dates.py:19 +#: utils/dates.py:19 msgid "mar" msgstr "Mär" -#: .\utils\dates.py:19 +#: utils/dates.py:19 msgid "apr" msgstr "Apr" -#: .\utils\dates.py:19 +#: utils/dates.py:19 msgid "may" msgstr "Mai" -#: .\utils\dates.py:19 +#: utils/dates.py:19 msgid "jun" msgstr "Jun" -#: .\utils\dates.py:20 +#: utils/dates.py:20 msgid "jul" msgstr "Jul" -#: .\utils\dates.py:20 +#: utils/dates.py:20 msgid "aug" msgstr "Aug" -#: .\utils\dates.py:20 +#: utils/dates.py:20 msgid "sep" msgstr "Sep" -#: .\utils\dates.py:20 +#: utils/dates.py:20 msgid "oct" msgstr "Okt" -#: .\utils\dates.py:20 +#: utils/dates.py:20 msgid "nov" msgstr "Nov" -#: .\utils\dates.py:20 +#: utils/dates.py:20 msgid "dec" msgstr "Dez" -#: .\utils\dates.py:27 +#: utils/dates.py:27 msgid "Jan." msgstr "Jan." -#: .\utils\dates.py:27 +#: utils/dates.py:27 msgid "Feb." msgstr "Feb." -#: .\utils\dates.py:28 +#: utils/dates.py:28 msgid "Aug." msgstr "Aug." -#: .\utils\dates.py:28 +#: utils/dates.py:28 msgid "Sept." msgstr "Sept." -#: .\utils\dates.py:28 +#: utils/dates.py:28 msgid "Oct." msgstr "Okt." -#: .\utils\dates.py:28 +#: utils/dates.py:28 msgid "Nov." msgstr "Nov." -#: .\utils\dates.py:28 +#: utils/dates.py:28 msgid "Dec." msgstr "Dez." -#: .\utils\timesince.py:12 +#: utils/timesince.py:12 msgid "year" msgid_plural "years" msgstr[0] "Jahr" msgstr[1] "Jahre" -#: .\utils\timesince.py:13 +#: utils/timesince.py:13 msgid "month" msgid_plural "months" msgstr[0] "Monat" msgstr[1] "Monate" -#: .\utils\timesince.py:14 +#: utils/timesince.py:14 msgid "week" msgid_plural "weeks" msgstr[0] "Woche" msgstr[1] "Wochen" -#: .\utils\timesince.py:15 +#: utils/timesince.py:15 msgid "day" msgid_plural "days" msgstr[0] "Tag" msgstr[1] "Tage" -#: .\utils\timesince.py:16 +#: utils/timesince.py:16 msgid "hour" msgid_plural "hours" msgstr[0] "Stunde" msgstr[1] "Stunden" -#: .\utils\timesince.py:17 +#: utils/timesince.py:17 msgid "minute" msgid_plural "minutes" msgstr[0] "Minute" msgstr[1] "Minuten" -#: .\utils\translation\trans_real.py:362 +#: utils/translation/trans_real.py:358 msgid "DATE_FORMAT" msgstr "j. N Y" -#: .\utils\translation\trans_real.py:363 +#: utils/translation/trans_real.py:359 msgid "DATETIME_FORMAT" msgstr "j. N Y, H:i" -#: .\utils\translation\trans_real.py:364 +#: utils/translation/trans_real.py:360 msgid "TIME_FORMAT" msgstr "H:i" -#: .\utils\translation\trans_real.py:380 +#: utils/translation/trans_real.py:376 msgid "YEAR_MONTH_FORMAT" msgstr "F Y" -#: .\utils\translation\trans_real.py:381 +#: utils/translation/trans_real.py:377 msgid "MONTH_DAY_FORMAT" msgstr "j. F" -#: .\views\generic\create_update.py:43 +#: views/generic/create_update.py:43 #, python-format msgid "The %(verbose_name)s was created successfully." msgstr "%(verbose_name)s wurde erfolgreich angelegt." -#: .\views\generic\create_update.py:117 +#: views/generic/create_update.py:117 #, python-format msgid "The %(verbose_name)s was updated successfully." msgstr "%(verbose_name)s wurde erfolgreich aktualisiert." -#: .\views\generic\create_update.py:184 +#: views/generic/create_update.py:184 #, python-format msgid "The %(verbose_name)s was deleted." msgstr "%(verbose_name)s wurde gelöscht" - diff --git a/django/conf/locale/el/LC_MESSAGES/django.mo b/django/conf/locale/el/LC_MESSAGES/django.mo Binary files differindex 4a7d8e41f0..a048d87976 100644 --- a/django/conf/locale/el/LC_MESSAGES/django.mo +++ b/django/conf/locale/el/LC_MESSAGES/django.mo diff --git a/django/conf/locale/el/LC_MESSAGES/django.po b/django/conf/locale/el/LC_MESSAGES/django.po index 06099eb9da..d041a275e5 100644 --- a/django/conf/locale/el/LC_MESSAGES/django.po +++ b/django/conf/locale/el/LC_MESSAGES/django.po @@ -10,7 +10,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-05-16 10:13+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: panos laganakos <panos.laganakos@gmail.com>\n" +"Last-Translator: Orestis Markou <orestis@orestis.gr>\n" "Language-Team: Greek\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -164,9 +164,9 @@ msgid "" "\n" "%(text)s" msgstr "" -"Αυτο το σχόλιο σημειώθηκε απο %(χÏήστη)ες\n" +"Αυτο το σχόλιο σημειώθηκε απο %(user)s\n" "\n" -"%(κείμενο)α" +"%(text)s" #: contrib/comments/models.py:265 msgid "flag date" diff --git a/django/conf/locale/es/LC_MESSAGES/django.mo b/django/conf/locale/es/LC_MESSAGES/django.mo Binary files differindex e9105aa64c..b8b9185b6d 100644 --- a/django/conf/locale/es/LC_MESSAGES/django.mo +++ b/django/conf/locale/es/LC_MESSAGES/django.mo diff --git a/django/conf/locale/es/LC_MESSAGES/django.po b/django/conf/locale/es/LC_MESSAGES/django.po index d8166e6201..6b55435a12 100644 --- a/django/conf/locale/es/LC_MESSAGES/django.po +++ b/django/conf/locale/es/LC_MESSAGES/django.po @@ -305,7 +305,7 @@ msgstr "Japonés" #: conf/global_settings.py:58 msgid "Latvian" -msgstr "" +msgstr "Latvio" #: conf/global_settings.py:59 msgid "Macedonian" @@ -611,7 +611,7 @@ msgstr "La URL %s no apunta a una imagen válida." #, python-format msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." msgstr "" -"Los números de teléfono deben guardar el formato XXX-XXX-XXXX format. \"%s\" " +"Los números de teléfono deben guardar el formato XXX-XXX-XXXX. \"%s\" " "no es válido." #: core/validators.py:196 @@ -726,10 +726,10 @@ msgid "Please enter a valid decimal number with a whole part of at most %s digit msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." msgstr[0] "" "Por favor, introduzca un número decimal válido con a lo más %s dígito en " -"total." +"su parte entera." msgstr[1] "" "Por favor, introduzca un número decimal válido con a lo más %s dígitos en " -"total." +"su parte entera." #: core/validators.py:426 #, python-format @@ -958,7 +958,7 @@ msgid "" "digits and underscores)." msgstr "" "Requerido. 30 caracteres o menos. Sólo caracteres alfanuméricos (letras, " -"dígutos y guiones bajos)." +"dígitos y guiones bajos)." #: contrib/auth/models.py:91 msgid "first name" @@ -1107,7 +1107,7 @@ msgstr "Las contraseñas introducidas en los campos 'nueva contraseña' no coincid #: contrib/auth/forms.py:124 msgid "Your old password was entered incorrectly. Please enter it again." msgstr "" -"Tu contraseña antígua es incorrecta. Por favor, vuelve a introducirla " +"Tu contraseña antigua es incorrecta. Por favor, vuelve a introducirla " "correctamente." #: contrib/comments/models.py:67 contrib/comments/models.py:166 @@ -1707,7 +1707,7 @@ msgid "" msgstr "" "Ha ocurrido un error. Se ha informado a los administradores del sitio " "mediante correo electrónico y debería arreglarse en breve. Gracias por su " -"paciencia" +"paciencia." #: contrib/admin/templates/admin/search_form.html:8 msgid "Go" @@ -1899,7 +1899,7 @@ msgid "" "the appropriate user." msgstr "" "Algo va mal con la instalación de la base de datos. Asegúrate que las tablas " -"necesarias han sido creadas, y que la base de datos puede ser leida por el " +"necesarias han sido creadas, y que la base de datos puede ser leída por el " "usuario apropiado." #: contrib/admin/templates/admin/filter.html:2 @@ -1912,7 +1912,7 @@ msgid "" "First, enter a username and password. Then, you'll be able to edit more user " "options." msgstr "" -"Primero, introduzca un nombre de usuario y una contraseña. Luego, podrá " +"Primero introduzca un nombre de usuario y una contraseña. Luego podrá " "editar el resto de opciones del usuario." #: contrib/admin/templates/admin/auth/user/add_form.html:12 @@ -2105,7 +2105,7 @@ msgstr "vista:" #: contrib/admin/views/doc.py:164 #, python-format msgid "App %r not found" -msgstr "Applicación %r no encontrada" +msgstr "Aplicación %r no encontrada" #: contrib/admin/views/doc.py:171 #, python-format @@ -2326,12 +2326,12 @@ msgstr "Cambiar clave: %s" #: contrib/localflavor/usa/forms.py:17 msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." -msgstr "Introduzca un código zip en el formato XXXXX o XXXX-XXXX." +msgstr "Introduzca un código postal en el formato XXXXX o XXXX-XXXX." #: contrib/localflavor/uk/forms.py:18 msgid "Enter a postcode. A space is required between the two postcode parts." msgstr "" -"Introduzca in código postal. Se necesita un espacio entre las dos partes del " +"Introduzca un código postal. Se necesita un espacio entre las dos partes del " "código." #: contrib/sessions/models.py:51 diff --git a/django/conf/locale/fr/LC_MESSAGES/django.mo b/django/conf/locale/fr/LC_MESSAGES/django.mo Binary files differindex 7250343b45..b96306cabd 100644 --- a/django/conf/locale/fr/LC_MESSAGES/django.mo +++ b/django/conf/locale/fr/LC_MESSAGES/django.mo diff --git a/django/conf/locale/fr/LC_MESSAGES/django.po b/django/conf/locale/fr/LC_MESSAGES/django.po index 14fc0083b8..2e525466b1 100644 --- a/django/conf/locale/fr/LC_MESSAGES/django.po +++ b/django/conf/locale/fr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: django\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-03-11 11:46+0100\n" +"POT-Creation-Date: 2007-04-22 09:06+0200\n" "PO-Revision-Date: 2006-05-08 15:12+0200\n" "Last-Translator: Baptiste Goupil <baptiste.goupil_at_google_email.com>\n" "Language-Team: français <fr@li.org>\n" @@ -15,11 +15,11 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -#: oldforms/__init__.py:357 db/models/fields/__init__.py:116 -#: db/models/fields/__init__.py:273 db/models/fields/__init__.py:609 -#: db/models/fields/__init__.py:620 newforms/models.py:177 -#: newforms/fields.py:78 newforms/fields.py:374 newforms/fields.py:450 -#: newforms/fields.py:461 +#: oldforms/__init__.py:357 db/models/fields/__init__.py:114 +#: db/models/fields/__init__.py:271 db/models/fields/__init__.py:607 +#: db/models/fields/__init__.py:618 newforms/models.py:178 +#: newforms/fields.py:80 newforms/fields.py:376 newforms/fields.py:452 +#: newforms/fields.py:463 msgid "This field is required." msgstr "Ce champ est obligatoire." @@ -39,17 +39,17 @@ msgstr "Les retours à la ligne ne sont pas autorisés ici." msgid "Select a valid choice; '%(data)s' is not in %(choices)s." msgstr "Sélectionnez un choix valide ; '%(data)s' n'est pas dans %(choices)s." -#: oldforms/__init__.py:577 newforms/widgets.py:170 +#: oldforms/__init__.py:577 newforms/widgets.py:180 #: contrib/admin/filterspecs.py:150 msgid "Unknown" msgstr "Inconnu" -#: oldforms/__init__.py:577 newforms/widgets.py:170 +#: oldforms/__init__.py:577 newforms/widgets.py:180 #: contrib/admin/filterspecs.py:143 msgid "Yes" msgstr "Oui" -#: oldforms/__init__.py:577 newforms/widgets.py:170 +#: oldforms/__init__.py:577 newforms/widgets.py:180 #: contrib/admin/filterspecs.py:143 msgid "No" msgstr "Non" @@ -74,62 +74,61 @@ msgstr "Entrez un nombre entier positif." msgid "Enter a whole number between 0 and 32,767." msgstr "Entrez un nombre entier entre 0 et 32 767." -#: db/models/manipulators.py:307 +#: db/models/manipulators.py:302 #, python-format msgid "%(object)s with this %(type)s already exists for the given %(field)s." msgstr "" -#: db/models/manipulators.py:308 contrib/admin/views/main.py:335 -#: contrib/admin/views/main.py:337 contrib/admin/views/main.py:339 +#: db/models/manipulators.py:303 msgid "and" msgstr "et" -#: db/models/fields/__init__.py:42 +#: db/models/fields/__init__.py:41 #, python-format msgid "%(optname)s with this %(fieldname)s already exists." msgstr "%(optname)s avec le champ %(fieldname)s existe déjà ." -#: db/models/fields/__init__.py:366 +#: db/models/fields/__init__.py:364 msgid "This value must be an integer." msgstr "Cette valeur doit être un entier." -#: db/models/fields/__init__.py:401 +#: db/models/fields/__init__.py:399 msgid "This value must be either True or False." msgstr "Cette valeur doit être soit Vraie soit Fausse." -#: db/models/fields/__init__.py:422 +#: db/models/fields/__init__.py:420 msgid "This field cannot be null." msgstr "Ce champ ne peut pas être vide." -#: db/models/fields/__init__.py:456 core/validators.py:148 +#: db/models/fields/__init__.py:454 core/validators.py:148 msgid "Enter a valid date in YYYY-MM-DD format." msgstr "Entrez une date valide au format AAAA-MM-JJ." -#: db/models/fields/__init__.py:525 core/validators.py:157 +#: db/models/fields/__init__.py:523 core/validators.py:157 msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." msgstr "Entrez une date et une heure valide au format AAAA-MM-JJ HH:MM." -#: db/models/fields/__init__.py:629 +#: db/models/fields/__init__.py:627 msgid "Enter a valid filename." msgstr "Entrez un nom de fichier valide." +#: db/models/fields/__init__.py:748 +msgid "This value must be either None, True or False." +msgstr "Cette valeur doit être Nulle, Vraie ou Fausse." + #: db/models/fields/related.py:53 #, python-format msgid "Please enter a valid %s." msgstr "Entrez un %s valide." -#: db/models/fields/related.py:642 -msgid "Separate multiple IDs with commas." -msgstr "Séparez les ID par des virgules." - -#: db/models/fields/related.py:644 +#: db/models/fields/related.py:624 msgid "" "Hold down \"Control\", or \"Command\" on a Mac, to select more than one." msgstr "" "Maintenez \"Contrôle (ctrl)\", ou \"Commande (touche pomme)\" sur un Mac, " "pour en sélectionner plusieurs." -#: db/models/fields/related.py:691 +#: db/models/fields/related.py:668 #, python-format msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." msgid_plural "" @@ -239,54 +238,58 @@ msgid "Polish" msgstr "Polonais" #: conf/global_settings.py:64 +msgid "Portugese" +msgstr "" + +#: conf/global_settings.py:65 msgid "Brazilian" msgstr "Brésilien" -#: conf/global_settings.py:65 +#: conf/global_settings.py:66 msgid "Romanian" msgstr "Roumain" -#: conf/global_settings.py:66 +#: conf/global_settings.py:67 msgid "Russian" msgstr "Russe" -#: conf/global_settings.py:67 +#: conf/global_settings.py:68 msgid "Slovak" msgstr "Slovaque" -#: conf/global_settings.py:68 +#: conf/global_settings.py:69 msgid "Slovenian" msgstr "Slovaque" -#: conf/global_settings.py:69 +#: conf/global_settings.py:70 msgid "Serbian" msgstr "Serbe" -#: conf/global_settings.py:70 +#: conf/global_settings.py:71 msgid "Swedish" msgstr "Suédois" -#: conf/global_settings.py:71 +#: conf/global_settings.py:72 msgid "Tamil" msgstr "Tamoul" -#: conf/global_settings.py:72 +#: conf/global_settings.py:73 msgid "Telugu" msgstr "Télougou" -#: conf/global_settings.py:73 +#: conf/global_settings.py:74 msgid "Turkish" msgstr "Turc" -#: conf/global_settings.py:74 +#: conf/global_settings.py:75 msgid "Ukrainian" msgstr "Ukrainien" -#: conf/global_settings.py:75 +#: conf/global_settings.py:76 msgid "Simplified Chinese" msgstr "Chinois simplifié" -#: conf/global_settings.py:76 +#: conf/global_settings.py:77 msgid "Traditional Chinese" msgstr "Chinois traditionnel" @@ -342,7 +345,7 @@ msgstr "Les caractères non numériques ne sont pas autorisés ici." msgid "This value can't be comprised solely of digits." msgstr "Cette valeur ne peut pas être composé uniquement de chiffres." -#: core/validators.py:120 newforms/fields.py:126 +#: core/validators.py:120 newforms/fields.py:128 msgid "Enter a whole number." msgstr "Entrez un nombre entier." @@ -355,15 +358,15 @@ msgid "Year must be 1900 or later." msgstr "L'année doit être supérieure à 1900." #: core/validators.py:143 -#, fuzzy, python-format +#, python-format msgid "Invalid date: %s" -msgstr "URL invalide : %s" +msgstr "Date invalide&nbsp;: %s" #: core/validators.py:153 msgid "Enter a valid time in HH:MM format." msgstr "Entrez une heure valide au format HH:MM." -#: core/validators.py:162 newforms/fields.py:269 +#: core/validators.py:162 newforms/fields.py:271 msgid "Enter a valid e-mail address." msgstr "Entrez une adresse de courriel valide." @@ -402,18 +405,18 @@ msgid "" "Valid HTML is required. Specific errors are:\n" "%s" msgstr "" -"Du HTML valide est requis. Les erreurs sont les suivantes :\n" +"Du HTML valide est requis. Les erreurs sont les suivantes&nbsp;:\n" "%s" #: core/validators.py:222 #, python-format msgid "Badly formed XML: %s" -msgstr "XML mal formé : %s" +msgstr "XML mal formé&nbsp;: %s" #: core/validators.py:239 #, python-format msgid "Invalid URL: %s" -msgstr "URL invalide : %s" +msgstr "URL invalide&nbsp;: %s" #: core/validators.py:244 core/validators.py:246 #, python-format @@ -460,17 +463,17 @@ msgid "Duplicate values are not allowed." msgstr "Des valeurs identiques ne sont pas autorisées." #: core/validators.py:367 -#, fuzzy, python-format +#, python-format msgid "This value must be between %(lower)s and %(upper)s." -msgstr "Cette valeur doit être entre %(lower)s et %(upper)s." +msgstr "Cette valeur doit être comprise entre %(lower)s et %(upper)s." #: core/validators.py:369 -#, fuzzy, python-format +#, python-format msgid "This value must be at least %s." msgstr "Cette valeur doit être au moins %s." #: core/validators.py:371 -#, fuzzy, python-format +#, python-format msgid "This value must be no more than %s." msgstr "Cette valeur ne doit pas dépasser %s." @@ -612,135 +615,135 @@ msgstr "L'objet %(verbose_name)s a été mis à jour avec succès." msgid "The %(verbose_name)s was deleted." msgstr "L'objet %(verbose_name)s a été supprimé." -#: newforms/models.py:164 newforms/fields.py:360 +#: newforms/models.py:165 newforms/fields.py:362 msgid "Select a valid choice. That choice is not one of the available choices." msgstr "" "Sélectionnez un choix valide. Ce choix ne fait pas partie de ceux " "disponibles." -#: newforms/models.py:181 newforms/fields.py:378 newforms/fields.py:454 +#: newforms/models.py:182 newforms/fields.py:380 newforms/fields.py:456 msgid "Enter a list of values." msgstr "Entrez une liste de valeur." -#: newforms/models.py:187 newforms/fields.py:387 +#: newforms/models.py:188 newforms/fields.py:389 #, python-format msgid "Select a valid choice. %s is not one of the available choices." msgstr "Sélectionnez un choix valide ; %s n'en fait pas partie." -#: newforms/fields.py:101 newforms/fields.py:254 +#: newforms/fields.py:103 newforms/fields.py:256 #, python-format msgid "Ensure this value has at most %d characters." msgstr "Assurez-vous que cette valeur fait moins de %d caractère." -#: newforms/fields.py:103 newforms/fields.py:256 +#: newforms/fields.py:105 newforms/fields.py:258 #, python-format msgid "Ensure this value has at least %d characters." msgstr "Assurez-vous que cette valeur fait au moins %d caractère." -#: newforms/fields.py:128 +#: newforms/fields.py:130 #, python-format msgid "Ensure this value is less than or equal to %s." msgstr "Assurez-vous que cette valeur soit plus petite ou égale à %s." -#: newforms/fields.py:130 +#: newforms/fields.py:132 #, python-format msgid "Ensure this value is greater than or equal to %s." msgstr "Assurez-vous que cette valeur soit plus grande ou égale à %s." -#: newforms/fields.py:163 +#: newforms/fields.py:165 msgid "Enter a valid date." msgstr "Entrez une date valide." -#: newforms/fields.py:190 +#: newforms/fields.py:192 msgid "Enter a valid time." msgstr "Entrez une heure valide." -#: newforms/fields.py:226 +#: newforms/fields.py:228 msgid "Enter a valid date/time." msgstr "Entrez une date et une heure valides." -#: newforms/fields.py:240 +#: newforms/fields.py:242 msgid "Enter a valid value." msgstr "Entrez une valeur valide." -#: newforms/fields.py:287 newforms/fields.py:309 +#: newforms/fields.py:289 newforms/fields.py:311 msgid "Enter a valid URL." msgstr "Entrez une URL valide." -#: newforms/fields.py:311 +#: newforms/fields.py:313 msgid "This URL appears to be a broken link." msgstr "L'URL est un lien cassé." -#: contrib/humanize/templatetags/humanize.py:16 +#: contrib/humanize/templatetags/humanize.py:17 msgid "th" msgstr "<sup>e</sup>" -#: contrib/humanize/templatetags/humanize.py:16 +#: contrib/humanize/templatetags/humanize.py:17 msgid "st" msgstr "<sup>er</sup>" -#: contrib/humanize/templatetags/humanize.py:16 +#: contrib/humanize/templatetags/humanize.py:17 msgid "nd" msgstr "<sup>d</sup>" -#: contrib/humanize/templatetags/humanize.py:16 +#: contrib/humanize/templatetags/humanize.py:17 msgid "rd" msgstr "<sup>e</sup>" -#: contrib/humanize/templatetags/humanize.py:48 +#: contrib/humanize/templatetags/humanize.py:47 #, python-format msgid "%(value).1f million" msgid_plural "%(value).1f million" msgstr[0] "%(value).1f million" msgstr[1] "%(value).1f millions" -#: contrib/humanize/templatetags/humanize.py:51 +#: contrib/humanize/templatetags/humanize.py:50 #, python-format msgid "%(value).1f billion" msgid_plural "%(value).1f billion" msgstr[0] "%(value).1f milliard" msgstr[1] "%(value).1f milliards" -#: contrib/humanize/templatetags/humanize.py:54 +#: contrib/humanize/templatetags/humanize.py:53 #, python-format msgid "%(value).1f trillion" msgid_plural "%(value).1f trillion" msgstr[0] "%(value).1f billion" msgstr[1] "%(value).1f billions" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "one" msgstr "un" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "two" msgstr "deux" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "three" msgstr "trois" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "four" msgstr "quatre" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "five" msgstr "cinq" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "six" msgstr "six" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "seven" msgstr "sept" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "eight" msgstr "huit" -#: contrib/humanize/templatetags/humanize.py:69 +#: contrib/humanize/templatetags/humanize.py:68 msgid "nine" msgstr "neuf" @@ -776,7 +779,7 @@ msgstr "redirige" msgid "redirects" msgstr "redirige" -#: contrib/comments/models.py:67 contrib/comments/models.py:166 +#: contrib/comments/models.py:67 contrib/comments/models.py:156 msgid "object ID" msgstr "ID de l'objet" @@ -784,8 +787,8 @@ msgstr "ID de l'objet" msgid "headline" msgstr "titre" -#: contrib/comments/models.py:69 contrib/comments/models.py:90 -#: contrib/comments/models.py:167 +#: contrib/comments/models.py:69 contrib/comments/models.py:91 +#: contrib/comments/models.py:157 msgid "comment" msgstr "commentaire" @@ -825,15 +828,15 @@ msgstr "vote n°8" msgid "is valid rating" msgstr "est un vote valide" -#: contrib/comments/models.py:83 contrib/comments/models.py:169 +#: contrib/comments/models.py:83 contrib/comments/models.py:159 msgid "date/time submitted" msgstr "date et heure soumises" -#: contrib/comments/models.py:84 contrib/comments/models.py:170 +#: contrib/comments/models.py:84 contrib/comments/models.py:160 msgid "is public" msgstr "est public" -#: contrib/comments/models.py:85 contrib/admin/views/doc.py:304 +#: contrib/comments/models.py:85 contrib/admindocs/views.py:304 msgid "IP address" msgstr "adresse IP" @@ -849,15 +852,15 @@ msgstr "" "Cochez cette case si le commentaire est inadéquat. Un message type \"Ce " "commentaire a été supprimé\" sera affiché en lieu et place de celui-ci." -#: contrib/comments/models.py:91 +#: contrib/comments/models.py:92 msgid "comments" msgstr "commentaires" -#: contrib/comments/models.py:131 contrib/comments/models.py:207 +#: contrib/comments/models.py:121 contrib/comments/models.py:188 msgid "Content object" msgstr "Type de contenu" -#: contrib/comments/models.py:159 +#: contrib/comments/models.py:149 #, python-format msgid "" "Posted by %(user)s at %(date)s\n" @@ -872,48 +875,48 @@ msgstr "" "\n" "http://%(domain)s%(url)s" -#: contrib/comments/models.py:168 +#: contrib/comments/models.py:158 msgid "person's name" msgstr "nom" -#: contrib/comments/models.py:171 +#: contrib/comments/models.py:161 msgid "ip address" msgstr "adresse IP" -#: contrib/comments/models.py:173 +#: contrib/comments/models.py:163 msgid "approved by staff" msgstr "approuvé par l'équipe" -#: contrib/comments/models.py:176 +#: contrib/comments/models.py:167 msgid "free comment" msgstr "commentaire libre" -#: contrib/comments/models.py:177 +#: contrib/comments/models.py:168 msgid "free comments" msgstr "commentaires libres" -#: contrib/comments/models.py:233 +#: contrib/comments/models.py:214 msgid "score" msgstr "evaluation" -#: contrib/comments/models.py:234 +#: contrib/comments/models.py:215 msgid "score date" msgstr "date d'évaluation" -#: contrib/comments/models.py:237 +#: contrib/comments/models.py:219 msgid "karma score" msgstr "point de Karma" -#: contrib/comments/models.py:238 +#: contrib/comments/models.py:220 msgid "karma scores" msgstr "points de Karma" -#: contrib/comments/models.py:242 +#: contrib/comments/models.py:224 #, python-format msgid "%(score)d rating by %(user)s" msgstr "%(score)d évalué par %(user)s" -#: contrib/comments/models.py:258 +#: contrib/comments/models.py:240 #, python-format msgid "" "This comment was flagged by %(user)s:\n" @@ -924,36 +927,36 @@ msgstr "" "\n" "%(text)s" -#: contrib/comments/models.py:265 +#: contrib/comments/models.py:247 msgid "flag date" msgstr "date d'indicateur" -#: contrib/comments/models.py:268 +#: contrib/comments/models.py:251 msgid "user flag" msgstr "indicateur utilisateur" -#: contrib/comments/models.py:269 +#: contrib/comments/models.py:252 msgid "user flags" msgstr "indicateurs utilisateur" -#: contrib/comments/models.py:273 +#: contrib/comments/models.py:256 #, python-format msgid "Flag by %r" msgstr "Indicateur par %r" -#: contrib/comments/models.py:278 +#: contrib/comments/models.py:261 msgid "deletion date" msgstr "date de suppression" -#: contrib/comments/models.py:280 +#: contrib/comments/models.py:264 msgid "moderator deletion" msgstr "suppression de modérateur" -#: contrib/comments/models.py:281 +#: contrib/comments/models.py:265 msgid "moderator deletions" msgstr "suppressions de modérateur" -#: contrib/comments/models.py:285 +#: contrib/comments/models.py:269 #, python-format msgid "Moderator deletion by %r" msgstr "Suppression de modérateur par %r" @@ -990,12 +993,12 @@ msgid_plural "" "%(text)s" msgstr[0] "" "Ce commentaire a été posté par un utilisateur qui a posté moins de %(count)s " -"commentaire :\n" +"commentaire&nbsp;:\n" "\n" "%(text)s" msgstr[1] "" "Ce commentaire a été posté par un utilisateur qui a posté moins de %(count)s " -"commentaires :\n" +"commentaires&nbsp;:\n" "\n" "%(text)s" @@ -1006,7 +1009,7 @@ msgid "" "\n" "%(text)s" msgstr "" -"Ce commentaire a été posté par un utilisateur imprécis :\n" +"Ce commentaire a été posté par un utilisateur imprécis&nbsp;:\n" "\n" "%(text)s" @@ -1045,12 +1048,12 @@ msgstr "" #: contrib/comments/templates/comments/freeform.html:4 msgid "Your name:" -msgstr "Votre nom :" +msgstr "Votre nom&nbsp;:" #: contrib/comments/templates/comments/freeform.html:5 #: contrib/comments/templates/comments/form.html:28 msgid "Comment:" -msgstr "Commentaire :" +msgstr "Commentaire&nbsp;:" #: contrib/comments/templates/comments/freeform.html:10 #: contrib/comments/templates/comments/form.html:35 @@ -1059,16 +1062,16 @@ msgstr "Prévisualisation du commentaire" #: contrib/comments/templates/comments/form.html:6 #: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/login.html:17 +#: contrib/admin/templates/admin/login.html:19 msgid "Username:" msgstr "Nom d'utilisateur" #: contrib/comments/templates/comments/form.html:6 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/object_history.html:4 +#: contrib/admin/templates/admin/change_list.html:8 +#: contrib/admin/templates/admin/change_form.html:16 #: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/delete_confirmation.html:4 #: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 @@ -1086,7 +1089,7 @@ msgid "Log out" msgstr "Déconnexion" #: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/login.html:20 +#: contrib/admin/templates/admin/login.html:22 msgid "Password:" msgstr "Mot de passe" @@ -1120,11 +1123,11 @@ msgstr "nom de domaine" msgid "display name" msgstr "nom à afficher" -#: contrib/sites/models.py:15 +#: contrib/sites/models.py:16 msgid "site" msgstr "site" -#: contrib/sites/models.py:16 +#: contrib/sites/models.py:17 msgid "sites" msgstr "sites" @@ -1134,7 +1137,7 @@ msgid "" "<h3>By %s:</h3>\n" "<ul>\n" msgstr "" -"<h3>Par %s :</h3>\n" +"<h3>Par %s&nbsp;:</h3>\n" "<ul>\n" #: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 @@ -1162,6 +1165,66 @@ msgstr "Ce mois-ci" msgid "This year" msgstr "Cette année" +#: contrib/admin/options.py:307 contrib/admin/views/auth.py:19 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "L'objet %(name)s \"%(obj)s\" a été ajouté avec succès." + +#: contrib/admin/options.py:311 contrib/admin/options.py:363 +#: contrib/admin/views/auth.py:24 +msgid "You may edit it again below." +msgstr "Vous pouvez continuez de l'éditez ci-dessous." + +#: contrib/admin/options.py:321 contrib/admin/options.py:372 +#, python-format +msgid "You may add another %s below." +msgstr "Vous pouvez ajouter un autre %s ci-dessous." + +#: contrib/admin/options.py:358 +msgid "No fields changed." +msgstr "Aucun champ modifié." + +#: contrib/admin/options.py:361 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "L'objet %(name)s \"%(obj)s\" a été modifié avec succès." + +#: contrib/admin/options.py:369 +#, python-format +msgid "" +"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "" +"L'objet %(name)s \"%(obj)s\" a été ajouté avec succès.Vous pouvez continuez " +"de l'éditez ci-dessous." + +#: contrib/admin/options.py:408 +#, python-format +msgid "Add %s" +msgstr "Ajouter %s" + +#: contrib/admin/options.py:468 +#, python-format +msgid "Change %s" +msgstr "Changement %s" + +#: contrib/admin/options.py:494 +msgid "Database error" +msgstr "Erreur de base de données" + +#: contrib/admin/options.py:539 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "L'objet %(name)s \"%(obj)s\" a été supprimé avec succès." + +#: contrib/admin/options.py:542 +msgid "Are you sure?" +msgstr "Êtes-vous sûr ?" + +#: contrib/admin/options.py:564 +#, python-format +msgid "Change history: %s" +msgstr "Historique des changements&nbsp;: %s" + #: contrib/admin/models.py:16 msgid "action time" msgstr "heure de l'action" @@ -1190,11 +1253,16 @@ msgstr "entrée d'historique" msgid "log entries" msgstr "entrées d'historique" -#: contrib/admin/templatetags/admin_list.py:247 -msgid "All dates" -msgstr "Toutes les dates" +#: contrib/admin/widgets.py:43 +msgid "Date:" +msgstr "Date&nbsp;:" -#: contrib/admin/views/decorators.py:10 contrib/auth/forms.py:60 +#: contrib/admin/widgets.py:43 +msgid "Time:" +msgstr "Heure&nbsp;:" + +#: contrib/admin/sites.py:13 contrib/admin/views/decorators.py:10 +#: contrib/auth/forms.py:60 msgid "" "Please enter a correct username and password. Note that both fields are case-" "sensitive." @@ -1203,12 +1271,12 @@ msgstr "" "Remarquez que chacun de ces champs est sensible à la casse (différenciation " "des majuscules/minuscules)." -#: contrib/admin/views/decorators.py:24 -#: contrib/admin/templates/admin/login.html:25 +#: contrib/admin/sites.py:33 contrib/admin/views/decorators.py:24 +#: contrib/admin/templates/admin/login.html:27 msgid "Log in" msgstr "Connectez-vous" -#: contrib/admin/views/decorators.py:62 +#: contrib/admin/sites.py:186 contrib/admin/views/decorators.py:62 msgid "" "Please log in again, because your session has expired. Don't worry: Your " "submission has been saved." @@ -1216,7 +1284,7 @@ msgstr "" "Votre session a expiré, connectez-vous de nouveau s'il vous plaît. Ne vous " "inquiétez pas, votre travail précédement éffectué a été sauvé." -#: contrib/admin/views/decorators.py:69 +#: contrib/admin/sites.py:193 contrib/admin/views/decorators.py:69 msgid "" "Looks like your browser isn't configured to accept cookies. Please enable " "cookies, reload this page, and try again." @@ -1224,283 +1292,70 @@ msgstr "" "Il semblerait que votre navigateur n'accepte pas les cookies. Activez-les, " "rechargez cette page et rééssayez s'il vous plaît." -#: contrib/admin/views/decorators.py:83 +#: contrib/admin/sites.py:207 contrib/admin/views/decorators.py:83 msgid "Usernames cannot contain the '@' character." msgstr "Les noms d'utilisateur ne peuvent contenir le caractère '@'" -#: contrib/admin/views/decorators.py:85 +#: contrib/admin/sites.py:209 contrib/admin/views/decorators.py:85 #, python-format msgid "Your e-mail address is not your username. Try '%s' instead." msgstr "" "Votre courriel n'est pas votre nom d'utilisateur. Essayez '%s' à la place." -#: contrib/admin/views/auth.py:19 contrib/admin/views/main.py:257 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." -msgstr "L'objet %(name)s \"%(obj)s\" a été ajouté avec succès." +#: contrib/admin/sites.py:263 contrib/admin/views/main.py:136 +msgid "Site administration" +msgstr "Gestion du site" -#: contrib/admin/views/auth.py:24 contrib/admin/views/main.py:261 -#: contrib/admin/views/main.py:347 -msgid "You may edit it again below." -msgstr "Vous pouvez continuez de l'éditez ci-dessous." +#: contrib/admin/templatetags/admin_list.py:247 +msgid "All dates" +msgstr "Toutes les dates" #: contrib/admin/views/auth.py:30 -#, fuzzy msgid "Add user" -msgstr "Ajouter %s" +msgstr "Ajouter l'utilisateur" -#: contrib/admin/views/auth.py:57 -#, fuzzy +#: contrib/admin/views/auth.py:55 msgid "Password changed successfully." msgstr "Mot de passe modifié avec succés" -#: contrib/admin/views/auth.py:64 -#, fuzzy, python-format -msgid "Change password: %s" -msgstr "Modifier votre mot de passe" - -#: contrib/admin/views/main.py:223 -msgid "Site administration" -msgstr "Gestion du site" - -#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 -#, python-format -msgid "You may add another %s below." -msgstr "Vous pouvez ajouter un autre %s ci-dessous." - -#: contrib/admin/views/main.py:289 +#: contrib/admin/views/auth.py:62 #, python-format -msgid "Add %s" -msgstr "Ajouter %s" - -#: contrib/admin/views/main.py:335 -#, python-format -msgid "Added %s." -msgstr "Ajouté %s." - -#: contrib/admin/views/main.py:337 -#, python-format -msgid "Changed %s." -msgstr "Modifié %s." - -#: contrib/admin/views/main.py:339 -#, python-format -msgid "Deleted %s." -msgstr "Supprimé %s." - -#: contrib/admin/views/main.py:342 -msgid "No fields changed." -msgstr "Aucun champ modifié." - -#: contrib/admin/views/main.py:345 -#, python-format -msgid "The %(name)s \"%(obj)s\" was changed successfully." -msgstr "L'objet %(name)s \"%(obj)s\" a été modifié avec succès." - -#: contrib/admin/views/main.py:353 -#, python-format -msgid "" -"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." -msgstr "" -"L'objet %(name)s \"%(obj)s\" a été ajouté avec succès.Vous pouvez continuez " -"de l'éditez ci-dessous." - -#: contrib/admin/views/main.py:391 -#, python-format -msgid "Change %s" -msgstr "Changement %s" +msgid "Change password: %s" +msgstr "Modifier le mot de passe&nbsp;: %s" -#: contrib/admin/views/main.py:476 +#: contrib/admin/views/main.py:215 #, python-format msgid "One or more %(fieldname)s in %(name)s: %(obj)s" -msgstr "Un ou plusieurs %(fieldname)s dans %(name)s: %(obj)s" +msgstr "Un ou plusieurs %(fieldname)s dans %(name)s&nbsp;: %(obj)s" -#: contrib/admin/views/main.py:481 +#: contrib/admin/views/main.py:220 #, python-format msgid "One or more %(fieldname)s in %(name)s:" -msgstr "Un ou plusieurs %(fieldname)s dans %(name)s:" - -#: contrib/admin/views/main.py:514 -#, python-format -msgid "The %(name)s \"%(obj)s\" was deleted successfully." -msgstr "L'objet %(name)s \"%(obj)s\" a été supprimé avec succès." - -#: contrib/admin/views/main.py:517 -msgid "Are you sure?" -msgstr "Êtes-vous sûr ?" - -#: contrib/admin/views/main.py:539 -#, python-format -msgid "Change history: %s" -msgstr "Historique des changements : %s" +msgstr "Un ou plusieurs %(fieldname)s dans %(name)s&nbsp;: " -#: contrib/admin/views/main.py:573 +#: contrib/admin/views/main.py:262 #, python-format msgid "Select %s" msgstr "Sélectionnez %s" -#: contrib/admin/views/main.py:573 +#: contrib/admin/views/main.py:262 #, python-format msgid "Select %s to change" msgstr "Sélectionnez %s pour changer" -#: contrib/admin/views/main.py:768 -msgid "Database error" -msgstr "Erreur de base de données" - -#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 -#: contrib/admin/views/doc.py:50 -msgid "tag:" -msgstr "mot-clé :" - -#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 -#: contrib/admin/views/doc.py:81 -msgid "filter:" -msgstr "filtre :" - -#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 -#: contrib/admin/views/doc.py:139 -msgid "view:" -msgstr "vue :" - -#: contrib/admin/views/doc.py:164 -#, python-format -msgid "App %r not found" -msgstr "L'application %r n'a pas été trouvée." - -#: contrib/admin/views/doc.py:171 -#, python-format -msgid "Model %(name)r not found in app %(label)r" -msgstr "Le modèle %(name)r n'a pas été trouvé dans l'application %(label)r" - -#: contrib/admin/views/doc.py:183 -#, python-format -msgid "the related `%(label)s.%(type)s` object" -msgstr "l'objet `%(label)s.%(type)s en relation " - -#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 -#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 -msgid "model:" -msgstr "modèle :" - -#: contrib/admin/views/doc.py:214 -#, python-format -msgid "related `%(label)s.%(name)s` objects" -msgstr "les objets `%(label)s.%(type)s en relation" - -#: contrib/admin/views/doc.py:219 -#, python-format -msgid "all %s" -msgstr "tous les %s" - -#: contrib/admin/views/doc.py:224 -#, python-format -msgid "number of %s" -msgstr "nombre de %s" - -#: contrib/admin/views/doc.py:229 -#, python-format -msgid "Fields on %s objects" -msgstr "Champs sur les objets %s" - -#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 -#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 -#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 -msgid "Integer" -msgstr "Entier" - -#: contrib/admin/views/doc.py:292 -msgid "Boolean (Either True or False)" -msgstr "Booléen (Vrai ou Faux)" - -#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 -#, python-format -msgid "String (up to %(maxlength)s)" -msgstr "Chaîne de caractère (jusqu'à %(maxlength)s)" - -#: contrib/admin/views/doc.py:294 -msgid "Comma-separated integers" -msgstr "Des entiers séparés par une virgule" - -#: contrib/admin/views/doc.py:295 -msgid "Date (without time)" -msgstr "Date (sans l'heure)" - -#: contrib/admin/views/doc.py:296 -msgid "Date (with time)" -msgstr "Date (avec l'heure)" - -#: contrib/admin/views/doc.py:297 -msgid "E-mail address" -msgstr "Courriel :" - -#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 -#: contrib/admin/views/doc.py:302 -msgid "File path" -msgstr "Chemin vers le fichier" - -#: contrib/admin/views/doc.py:300 -msgid "Decimal number" -msgstr "Nombre décimal" - -#: contrib/admin/views/doc.py:306 -msgid "Boolean (Either True, False or None)" -msgstr "Booléen (Vrai, Faux ou None)" - -#: contrib/admin/views/doc.py:307 -msgid "Relation to parent model" -msgstr "Relation au modèle parent" - -#: contrib/admin/views/doc.py:308 -msgid "Phone number" -msgstr "Numéro de téléphone" - -#: contrib/admin/views/doc.py:313 -msgid "Text" -msgstr "Texte" - -#: contrib/admin/views/doc.py:314 -msgid "Time" -msgstr "Heure" - -#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 -msgid "URL" -msgstr "URL" - -#: contrib/admin/views/doc.py:316 -msgid "U.S. state (two uppercase letters)" -msgstr "État U.S. (deux lettres majuscules)" - -#: contrib/admin/views/doc.py:317 -msgid "XML text" -msgstr "Texte XML" - -#: contrib/admin/views/doc.py:343 -#, python-format -msgid "%s does not appear to be a urlpattern object" -msgstr "%s ne semble pas être un objet urlpattern" - #: contrib/admin/templates/widget/file.html:2 msgid "Currently:" -msgstr "Actuellement :" +msgstr "Actuellement&nbsp;:" #: contrib/admin/templates/widget/file.html:3 msgid "Change:" -msgstr "Modification :" - -#: contrib/admin/templates/widget/date_time.html:3 -msgid "Date:" -msgstr "Date :" - -#: contrib/admin/templates/widget/date_time.html:4 -msgid "Time:" -msgstr "Heure :" +msgstr "Modification&nbsp;:" -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/object_history.html:4 +#: contrib/admin/templates/admin/change_list.html:8 +#: contrib/admin/templates/admin/change_form.html:16 #: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/delete_confirmation.html:4 #: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 @@ -1508,11 +1363,11 @@ msgstr "Heure :" msgid "Documentation" msgstr "Documentation" -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/object_history.html:4 +#: contrib/admin/templates/admin/change_list.html:8 +#: contrib/admin/templates/admin/change_form.html:16 #: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/delete_confirmation.html:4 #: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/admin/auth/user/change_password.html:15 #: contrib/admin/templates/admin/auth/user/change_password.html:46 @@ -1531,13 +1386,13 @@ msgstr "Documentation" msgid "Change password" msgstr "Modifier votre mot de passe" -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/change_list.html:6 +#: contrib/admin/templates/admin/object_history.html:7 +#: contrib/admin/templates/admin/change_list.html:10 #: contrib/admin/templates/admin/500.html:4 #: contrib/admin/templates/admin/invalid_setup.html:4 -#: contrib/admin/templates/admin/change_form.html:13 +#: contrib/admin/templates/admin/change_form.html:20 #: contrib/admin/templates/admin/base.html:30 -#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/delete_confirmation.html:8 #: contrib/admin/templates/admin/auth/user/change_password.html:12 #: contrib/admin/templates/registration/password_change_done.html:4 #: contrib/admin/templates/registration/password_reset_form.html:4 @@ -1548,8 +1403,8 @@ msgstr "Modifier votre mot de passe" msgid "Home" msgstr "Accueil" -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/change_form.html:21 +#: contrib/admin/templates/admin/object_history.html:7 +#: contrib/admin/templates/admin/change_form.html:29 msgid "History" msgstr "Historique" @@ -1569,7 +1424,7 @@ msgstr "Action" msgid "DATE_WITH_TIME_FULL" msgstr "j. N Y, H:i" -#: contrib/admin/templates/admin/object_history.html:36 +#: contrib/admin/templates/admin/object_history.html:34 msgid "" "This object doesn't have a change history. It probably wasn't added via this " "admin site." @@ -1577,11 +1432,15 @@ msgstr "" "Cet objet n'a pas d'historique de modification. Il n'a probablement pas été " "ajouté au moyen de ce site d'administration." -#: contrib/admin/templates/admin/change_list.html:12 +#: contrib/admin/templates/admin/change_list.html:18 #, python-format msgid "Add %(name)s" msgstr "Ajouter %(name)s" +#: contrib/admin/templates/admin/change_list.html:28 +msgid "Filter" +msgstr "Filtre" + #: contrib/admin/templates/admin/filter.html:2 #, python-format msgid " By %(filter_title)s " @@ -1608,13 +1467,14 @@ msgstr "" "administrateurs du site et sera corrigée dans les meilleurs délais. Merci " "pour votre patience." -#: contrib/admin/templates/admin/invalid_setup.html:8 +#: contrib/admin/templates/admin/invalid_setup.html:7 msgid "" "Something's wrong with your database installation. Make sure the appropriate " "database tables have been created, and make sure the database is readable by " "the appropriate user." -msgstr "Quelque chose ne va pas avec votre base de données. Vérifiez que les" -"bonnes bases ont été créées, et qu'elle est lisible par le bon utilisateur." +msgstr "" +"Quelque chose ne va pas avec votre base de données. Vérifiez que lesbonnes " +"bases ont été créées, et qu'elle est lisible par le bon utilisateur." #: contrib/admin/templates/admin/search_form.html:8 msgid "Go" @@ -1644,10 +1504,6 @@ msgstr "Site d'administration de Django" msgid "Django administration" msgstr "Administration de Django" -#: contrib/admin/templates/admin/filters.html:4 -msgid "Filter" -msgstr "Filtre" - #: contrib/admin/templates/admin/404.html:4 #: contrib/admin/templates/admin/404.html:8 msgid "Page not found" @@ -1657,70 +1513,62 @@ msgstr "Cette page n'a pas été trouvée" msgid "We're sorry, but the requested page could not be found." msgstr "Nous sommes désolés, mais la page demandée est introuvable." -#: contrib/admin/templates/admin/index.html:17 +#: contrib/admin/templates/admin/index.html:18 #, python-format msgid "Models available in the %(name)s application." msgstr "Modèles disponibles dans l'application %(name)s." -#: contrib/admin/templates/admin/index.html:18 +#: contrib/admin/templates/admin/index.html:19 #, python-format msgid "%(name)s" msgstr "%(name)s" -#: contrib/admin/templates/admin/index.html:28 -#: contrib/admin/templates/admin/change_form.html:15 +#: contrib/admin/templates/admin/index.html:29 +#: contrib/admin/templates/admin/change_form.html:22 msgid "Add" msgstr "Ajouter" -#: contrib/admin/templates/admin/index.html:34 +#: contrib/admin/templates/admin/index.html:35 msgid "Change" msgstr "Modifier" -#: contrib/admin/templates/admin/index.html:44 +#: contrib/admin/templates/admin/index.html:45 msgid "You don't have permission to edit anything." msgstr "Vous n'avez pas la permission d'éditer quoi que ce soit." -#: contrib/admin/templates/admin/index.html:52 +#: contrib/admin/templates/admin/index.html:53 msgid "Recent Actions" msgstr "Actions récentes" -#: contrib/admin/templates/admin/index.html:53 +#: contrib/admin/templates/admin/index.html:54 msgid "My Actions" msgstr "Mes actions" -#: contrib/admin/templates/admin/index.html:57 +#: contrib/admin/templates/admin/index.html:58 msgid "None available" msgstr "Aucun(e) disponible" -#: contrib/admin/templates/admin/change_form.html:22 +#: contrib/admin/templates/admin/change_form.html:30 msgid "View on site" msgstr "Voir sur le site" -#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/change_form.html:40 #: contrib/admin/templates/admin/auth/user/change_password.html:24 msgid "Please correct the error below." msgid_plural "Please correct the errors below." msgstr[0] "Veuillez corriger l'erreur ci-dessous." msgstr[1] "Veuillez corriger les erreurs ci-dessous." -#: contrib/admin/templates/admin/change_form.html:50 -msgid "Ordering" -msgstr "Tri" - -#: contrib/admin/templates/admin/change_form.html:53 -msgid "Order:" -msgstr "Ordre :" - #: contrib/admin/templates/admin/base.html:25 msgid "Welcome," msgstr "Bienvenue," -#: contrib/admin/templates/admin/delete_confirmation.html:9 +#: contrib/admin/templates/admin/delete_confirmation.html:11 #: contrib/admin/templates/admin/submit_line.html:3 msgid "Delete" msgstr "Supprimer" -#: contrib/admin/templates/admin/delete_confirmation.html:14 +#: contrib/admin/templates/admin/delete_confirmation.html:17 #, python-format msgid "" "Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " @@ -1729,9 +1577,9 @@ msgid "" msgstr "" "Supprimer l'objet %(object_name)s '%(escaped_object)s' provoquerait la " "suppression des objets qui lui sont liés mais votre compte ne possède pas la " -"permission de supprimer les types d'objets suivants :" +"permission de supprimer les types d'objets suivants&nbsp;:" -#: contrib/admin/templates/admin/delete_confirmation.html:21 +#: contrib/admin/templates/admin/delete_confirmation.html:24 #, python-format msgid "" "Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " @@ -1739,9 +1587,9 @@ msgid "" msgstr "" "Êtes vous certain de vouloir supprimer l'objet %(object_name)s \"%" "(escaped_object)s\" ? Les éléments suivant sont liés à celui-ci et seront " -"aussi supprimés :" +"aussi supprimés&nbsp;:" -#: contrib/admin/templates/admin/delete_confirmation.html:26 +#: contrib/admin/templates/admin/delete_confirmation.html:29 msgid "Yes, I'm sure" msgstr "Oui, j'en suis certain" @@ -1829,7 +1677,7 @@ msgstr "" #: contrib/admin/templates/registration/password_reset_form.html:16 msgid "E-mail address:" -msgstr "Courriel :" +msgstr "Courriel&nbsp;:" #: contrib/admin/templates/registration/password_reset_form.html:16 msgid "Reset my password" @@ -1867,11 +1715,11 @@ msgstr "" #: contrib/admin/templates/registration/password_change_form.html:17 msgid "Old password:" -msgstr "Ancien mot de passe :" +msgstr "Ancien mot de passe&nbsp;:" #: contrib/admin/templates/registration/password_change_form.html:19 msgid "New password:" -msgstr "Nouveau mot de passe :" +msgstr "Nouveau mot de passe&nbsp;:" #: contrib/admin/templates/registration/password_change_form.html:21 msgid "Confirm password:" @@ -1894,15 +1742,15 @@ msgstr "pour votre compte au site %(site_name)s" #: contrib/admin/templates/registration/password_reset_email.html:5 #, python-format msgid "Your new password is: %(new_password)s" -msgstr "Votre nouveau mot de passe est : %(new_password)s" +msgstr "Votre nouveau mot de passe est&nbsp;: %(new_password)s" #: contrib/admin/templates/registration/password_reset_email.html:7 msgid "Feel free to change this password by going to this page:" -msgstr "Vous pouvez modifier ce mot de passe à l'adresse suivante :" +msgstr "Vous pouvez modifier ce mot de passe à l'adresse suivante&nbsp;:" #: contrib/admin/templates/registration/password_reset_email.html:11 msgid "Your username, in case you've forgotten:" -msgstr "Votre nom d'utilisateur, en cas d'oubli :" +msgstr "Votre nom d'utilisateur, en cas d'oubli&nbsp;:" #: contrib/admin/templates/registration/password_reset_email.html:13 msgid "Thanks for using our site!" @@ -1932,12 +1780,14 @@ msgid "" "your computer is \"internal\").</p>\n" msgstr "" "\n" -"<p class=\"help\">Pour installer des bookmarklets, faîtes glisser le lien vers\n" +"<p class=\"help\">Pour installer des bookmarklets, faîtes glisser le lien " +"vers\n" "votre barre de marques-pages, ou cliquez droit dessus et ajoutez-y le.\n" "Maintenant vous pouvez le sélectionner depuis n'importe quelle page\n" "du site. Notez que certains d'entre eux nécessitent que vous visionniez\n" "le site depuis un ordinateur dit \"interne\" (veuillez contacter votre\n" -"administrateur système si vous n'êtes pas sûr que votre ordinateur le soit).</p>\n" +"administrateur système si vous n'êtes pas sûr que votre ordinateur le soit)." +"</p>\n" #: contrib/admin/templates/admin_doc/bookmarklets.html:19 msgid "Documentation for this page" @@ -1981,15 +1831,15 @@ msgstr "" "Comme ci-dessus, mais ouvre la page d'administration dans une nouvelle " "fenêtre." -#: contrib/contenttypes/models.py:26 +#: contrib/contenttypes/models.py:36 msgid "python model class name" msgstr "nom du module python" -#: contrib/contenttypes/models.py:29 +#: contrib/contenttypes/models.py:39 msgid "content type" msgstr "type de contenu" -#: contrib/contenttypes/models.py:30 +#: contrib/contenttypes/models.py:40 msgid "content types" msgstr "types de contenu" @@ -1997,7 +1847,7 @@ msgstr "types de contenu" msgid "Logged out" msgstr "Déconnecté" -#: contrib/auth/models.py:38 contrib/auth/models.py:57 +#: contrib/auth/models.py:38 contrib/auth/models.py:58 msgid "name" msgstr "nom" @@ -2005,19 +1855,19 @@ msgstr "nom" msgid "codename" msgstr "nom de code" -#: contrib/auth/models.py:42 +#: contrib/auth/models.py:43 msgid "permission" msgstr "permission" -#: contrib/auth/models.py:43 contrib/auth/models.py:58 +#: contrib/auth/models.py:44 contrib/auth/models.py:59 msgid "permissions" msgstr "permissions" -#: contrib/auth/models.py:60 +#: contrib/auth/models.py:62 msgid "group" msgstr "groupe" -#: contrib/auth/models.py:61 contrib/auth/models.py:100 +#: contrib/auth/models.py:63 contrib/auth/models.py:100 msgid "groups" msgstr "groupes" @@ -2110,34 +1960,38 @@ msgstr "" msgid "user permissions" msgstr "permissions de l'utilisateur" -#: contrib/auth/models.py:105 +#: contrib/auth/models.py:106 msgid "user" msgstr "utilisateur" -#: contrib/auth/models.py:106 +#: contrib/auth/models.py:107 msgid "users" msgstr "utilisateurs" -#: contrib/auth/models.py:111 +#: contrib/auth/models.py:248 +msgid "message" +msgstr "message" + +#: contrib/auth/models.py:261 +msgid "AnonymousUser" +msgstr "Anonyme" + +#: contrib/auth/models.py:320 msgid "Personal info" msgstr "Information personnelle" -#: contrib/auth/models.py:112 +#: contrib/auth/models.py:321 msgid "Permissions" msgstr "Permissions" -#: contrib/auth/models.py:113 +#: contrib/auth/models.py:322 msgid "Important dates" msgstr "Dates importantes" -#: contrib/auth/models.py:114 +#: contrib/auth/models.py:323 msgid "Groups" msgstr "Groupes" -#: contrib/auth/models.py:258 -msgid "message" -msgstr "message" - #: contrib/auth/forms.py:17 contrib/auth/forms.py:138 msgid "The two password fields didn't match." msgstr "Les deux mots de passe ne correspondent pas." @@ -2174,31 +2028,461 @@ msgstr "Les deux nouveaux mots de passe ne correspondent pas." msgid "Your old password was entered incorrectly. Please enter it again." msgstr "Votre ancien mot de passe est incorrect. Veuillez le rectifier." +#: contrib/admindocs/views.py:46 contrib/admindocs/views.py:48 +#: contrib/admindocs/views.py:50 +msgid "tag:" +msgstr "mot-clé&nbsp;:" + +#: contrib/admindocs/views.py:77 contrib/admindocs/views.py:79 +#: contrib/admindocs/views.py:81 +msgid "filter:" +msgstr "filtre&nbsp;:" + +#: contrib/admindocs/views.py:135 contrib/admindocs/views.py:137 +#: contrib/admindocs/views.py:139 +msgid "view:" +msgstr "vue&nbsp;:" + +#: contrib/admindocs/views.py:164 +#, python-format +msgid "App %r not found" +msgstr "L'application %r n'a pas été trouvée." + +#: contrib/admindocs/views.py:171 +#, python-format +msgid "Model %(name)r not found in app %(app)r" +msgstr "Le modèle %(name)r n'a pas été trouvé dans l'application %(app)r" + +#: contrib/admindocs/views.py:183 +#, python-format +msgid "the related `%(app)s.%(type)s` object" +msgstr "l'objet `%(app)s.%(type)s en relation " + +#: contrib/admindocs/views.py:183 contrib/admindocs/views.py:205 +#: contrib/admindocs/views.py:219 contrib/admindocs/views.py:224 +msgid "model:" +msgstr "modèle&nbsp;:" + +#: contrib/admindocs/views.py:214 +#, python-format +msgid "related `%(app)s.%(name)s` objects" +msgstr "les objets `%(app)s.%(name)s en relation" + +#: contrib/admindocs/views.py:219 +#, python-format +msgid "all %s" +msgstr "tous les %s" + +#: contrib/admindocs/views.py:224 +#, python-format +msgid "number of %s" +msgstr "nombre de %s" + +#: contrib/admindocs/views.py:229 +#, python-format +msgid "Fields on %s objects" +msgstr "Champs sur les objets %s" + +#: contrib/admindocs/views.py:291 contrib/admindocs/views.py:301 +#: contrib/admindocs/views.py:303 contrib/admindocs/views.py:309 +#: contrib/admindocs/views.py:310 contrib/admindocs/views.py:312 +msgid "Integer" +msgstr "Entier" + +#: contrib/admindocs/views.py:292 +msgid "Boolean (Either True or False)" +msgstr "Booléen (Vrai ou Faux)" + +#: contrib/admindocs/views.py:293 contrib/admindocs/views.py:311 +#, python-format +msgid "String (up to %(maxlength)s)" +msgstr "Chaîne de caractère (jusqu'à %(maxlength)s)" + +#: contrib/admindocs/views.py:294 +msgid "Comma-separated integers" +msgstr "Des entiers séparés par une virgule" + +#: contrib/admindocs/views.py:295 +msgid "Date (without time)" +msgstr "Date (sans l'heure)" + +#: contrib/admindocs/views.py:296 +msgid "Date (with time)" +msgstr "Date (avec l'heure)" + +#: contrib/admindocs/views.py:297 +msgid "E-mail address" +msgstr "Courriel&nbsp;:" + +#: contrib/admindocs/views.py:298 contrib/admindocs/views.py:299 +#: contrib/admindocs/views.py:302 +msgid "File path" +msgstr "Chemin vers le fichier" + +#: contrib/admindocs/views.py:300 +msgid "Decimal number" +msgstr "Nombre décimal" + +#: contrib/admindocs/views.py:306 +msgid "Boolean (Either True, False or None)" +msgstr "Booléen (Vrai, Faux ou None)" + +#: contrib/admindocs/views.py:307 +msgid "Relation to parent model" +msgstr "Relation au modèle parent" + +#: contrib/admindocs/views.py:308 +msgid "Phone number" +msgstr "Numéro de téléphone" + +#: contrib/admindocs/views.py:313 +msgid "Text" +msgstr "Texte" + +#: contrib/admindocs/views.py:314 +msgid "Time" +msgstr "Heure" + +#: contrib/admindocs/views.py:315 contrib/flatpages/models.py:7 +msgid "URL" +msgstr "URL" + +#: contrib/admindocs/views.py:316 +msgid "U.S. state (two uppercase letters)" +msgstr "État U.S. (deux lettres majuscules)" + +#: contrib/admindocs/views.py:317 +msgid "XML text" +msgstr "Texte XML" + +#: contrib/admindocs/views.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "%s ne semble pas être un objet urlpattern" + #: contrib/localflavor/uk/forms.py:18 msgid "Enter a postcode. A space is required between the two postcode parts." msgstr "" +"Entrez un code postal Anglais. Un espace est requis entre les deux parties." -#: contrib/localflavor/usa/forms.py:17 -msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +#: contrib/localflavor/au/forms.py:18 +msgid "Enter a 4 digit post code." +msgstr "Entrez un code postal Australien (4 chiffres)." + +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/de/forms.py:16 +#: contrib/localflavor/it/forms.py:14 contrib/localflavor/fi/forms.py:14 +msgid "Enter a zip code in the format XXXXX." +msgstr "Entrez un code postal (format XXXXX)." + +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "Entrez un code postal Japonais (format XXXXXXX ou XXX-XXXX)." + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "HokkaidÅ" + +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "Aomori" + +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "Iwate" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "Miyagi" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "Akita" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "Yamagata" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "Fukushima" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "Ibaraki" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "Tochigi" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "Gunma" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "Saitama" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "Chiba" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "Tokyo" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "Kanagawa" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "Yamanashi" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "Nagano" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "Niigata" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "Toyama" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "Ishikawa" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "Fukui" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "Gifu" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "Shizuoka" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "Aichi" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "Mie" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "Shiga" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "KyÅto" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "Osaka" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "HyÅgo" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "Nara" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "Wakayama" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "Tottori" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "Shimane" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "Okayama" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "Hiroshima" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "Yamaguchi" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "Tokushima" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "Kagawa" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "Ehime" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "Kochi" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "Fukuoka" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "Saga" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "Nagasaki" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "Kumamoto" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "ÅŒita" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "Miyazaki" + +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "Kagoshima" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "Okinawa" + +#: contrib/localflavor/br/forms.py:18 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "Entrez un code postal Brésilien (format XXXXX-XXX)." + +#: contrib/localflavor/br/forms.py:30 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "Les numéros de téléphone doivent être au format XX-XXXX-XXXX." + +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" +msgstr "Bade-Wurtemberg" + +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "Bavière" + +#: contrib/localflavor/de/de_states.py:7 +msgid "Berlin" +msgstr "Berlin" + +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "Brandebourg" + +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "Brême" + +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "Hambourg" + +#: contrib/localflavor/de/de_states.py:11 +msgid "Hessen" +msgstr "Hess" + +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "Mecklembourg-Poméranie occidentale" + +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "Basse Saxe" + +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "Rhénanie-du-Nord-Westphalie" + +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "Rhénanie-Palatinat" + +#: contrib/localflavor/de/de_states.py:16 +msgid "Saarland" +msgstr "Sarre" + +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "Saxe" + +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "Saxe-Anhalt" + +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "Schleswig-Holstein" + +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "Thuringe" + +#: contrib/localflavor/de/forms.py:60 +msgid "" +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." msgstr "" +"Entrez un numéro de carte d'identité Allemand (format XXXXXXXXXXX-XXXXXXX-" +"XXXXXXX-X)." + +#: contrib/localflavor/no/forms.py:15 +msgid "Enter a zip code in the format XXXX." +msgstr "Entrez un code postal Norvégien (format XXXX)." + +#: contrib/localflavor/no/forms.py:36 +msgid "Enter a valid Norwegian social security number." +msgstr "Entrez un numéro de sécurité sociale Norvégien." + +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:46 +msgid "Enter a valid Finnish social security number." +msgstr "Entrez un numéro de sécurité sociale Finlandais." + +#: contrib/localflavor/us/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "Entrez un code postal Américain (format XXXXX ou XXXXX-XXXX)." + +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "Entrez un numéro de sécurité sociale Américain (format XXX-XX-XXXX)." -#: contrib/sessions/models.py:51 +#: contrib/sessions/models.py:68 msgid "session key" msgstr "clé de session" -#: contrib/sessions/models.py:52 +#: contrib/sessions/models.py:69 msgid "session data" msgstr "donnée de session" -#: contrib/sessions/models.py:53 +#: contrib/sessions/models.py:70 msgid "expire date" msgstr "date d'expiration" -#: contrib/sessions/models.py:57 +#: contrib/sessions/models.py:74 msgid "session" msgstr "session" -#: contrib/sessions/models.py:58 +#: contrib/sessions/models.py:75 msgid "sessions" msgstr "sessions" @@ -2206,8 +2490,8 @@ msgstr "sessions" msgid "" "Example: '/about/contact/'. Make sure to have leading and trailing slashes." msgstr "" -"Par exemple : '/about/contact/'. Vérifiez la présence du caractère '/' en " -"début et en fin de chaine." +"Par exemple&nbsp;: '/about/contact/'. Vérifiez la présence du caractère " +"'/' en début et en fin de chaine." #: contrib/flatpages/models.py:9 msgid "title" @@ -2243,11 +2527,11 @@ msgstr "" "Si coché, seuls les utilisateurs connectés auront la possibilité de voir " "cette page." -#: contrib/flatpages/models.py:18 +#: contrib/flatpages/models.py:19 msgid "flat page" msgstr "page à plat" -#: contrib/flatpages/models.py:19 +#: contrib/flatpages/models.py:20 msgid "flat pages" msgstr "pages à plat" @@ -2463,32 +2747,73 @@ msgstr "minuit" msgid "noon" msgstr "midi" -#: utils/translation/trans_real.py:362 +#: utils/translation/trans_real.py:358 msgid "DATE_FORMAT" msgstr "j F Y" -#: utils/translation/trans_real.py:363 +#: utils/translation/trans_real.py:359 msgid "DATETIME_FORMAT" msgstr "j F Y, G:i" -#: utils/translation/trans_real.py:364 +#: utils/translation/trans_real.py:360 msgid "TIME_FORMAT" msgstr "G:i:s" -#: utils/translation/trans_real.py:380 -#, fuzzy +#: utils/translation/trans_real.py:376 msgid "YEAR_MONTH_FORMAT" -msgstr "j F Y" +msgstr "F Y" -#: utils/translation/trans_real.py:381 -#, fuzzy +#: utils/translation/trans_real.py:377 msgid "MONTH_DAY_FORMAT" -msgstr "j F Y" +msgstr "j F" #: template/defaultfilters.py:491 msgid "yes,no,maybe" msgstr "oui,non,peut-être" +#: template/defaultfilters.py:520 +#, python-format +msgid "%(size)d byte" +msgid_plural "%(size)d bytes" +msgstr[0] "%(size)d octet" +msgstr[1] "%(size)d octets" + +#: template/defaultfilters.py:522 +#, python-format +msgid "%.1f KB" +msgstr "%.1f Ko" + +#: template/defaultfilters.py:524 +#, python-format +msgid "%.1f MB" +msgstr "%.1f Mo" + +#: template/defaultfilters.py:525 +#, python-format +msgid "%.1f GB" +msgstr "%.1f Go" + +#~ msgid "One or more %(fieldname)s in %(name)s&nbsp;:" +#~ msgstr "Un ou plusieurs %(fieldname)s dans %(name)s&nbsp;:" + +#~ msgid "Separate multiple IDs with commas." +#~ msgstr "Séparez les ID par des virgules." + +#~ msgid "Added %s." +#~ msgstr "Ajouté %s." + +#~ msgid "Changed %s." +#~ msgstr "Modifié %s." + +#~ msgid "Deleted %s." +#~ msgstr "Supprimé %s." + +#~ msgid "Ordering" +#~ msgstr "Tri" + +#~ msgid "Order:" +#~ msgstr "Ordre&nbsp;:" + #~ msgid "%dth" #~ msgstr "%de" diff --git a/django/conf/locale/he/LC_MESSAGES/django.mo b/django/conf/locale/he/LC_MESSAGES/django.mo Binary files differindex 0f8b07e5bb..50021ed86d 100644 --- a/django/conf/locale/he/LC_MESSAGES/django.mo +++ b/django/conf/locale/he/LC_MESSAGES/django.mo diff --git a/django/conf/locale/he/LC_MESSAGES/django.po b/django/conf/locale/he/LC_MESSAGES/django.po index 6e4df17521..9fc5d7ee80 100644 --- a/django/conf/locale/he/LC_MESSAGES/django.po +++ b/django/conf/locale/he/LC_MESSAGES/django.po @@ -1,121 +1,171 @@ # translation of Django. # Copyright (C) 2006 THE Django'S COPYRIGHT HOLDER # This file is distributed under the same license as the Django package. +# Meir Kriheli <meir@mksoft.co.il>, 2007. # # msgid "" msgstr "" "Project-Id-Version: Django 0.95\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-06-15 12:42+0300\n" -"PO-Revision-Date: 2006-06-15 12:40+0300\n" -"Last-Translator: Meir Kriheli <meir@mksoft.co.il>\n" -"Language-Team: Hebrew\n" +"POT-Creation-Date: 2007-05-04 19:38+0300\n" +"PO-Revision-Date: 2007-05-06 12:43+0300\n" +"Last-Translator: meir <(null)>\n" +"Language-Team: English <en@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" +"Content-Transfer-Encoding: 8bit" -#: template/defaultfilters.py:389 -msgid "yes,no,maybe" -msgstr "כן,ל×,×ולי" +#: newforms/models.py:165 newforms/fields.py:364 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "יש לבחור ×פשרות חוקית; '%(data)s' ××™× ×• בין %(choices)s." -#: forms/__init__.py:346 db/models/fields/__init__.py:114 -#: db/models/fields/__init__.py:265 db/models/fields/__init__.py:545 -#: db/models/fields/__init__.py:556 +#: newforms/models.py:178 newforms/fields.py:80 newforms/fields.py:376 +#: newforms/fields.py:452 newforms/fields.py:463 +#: db/models/fields/__init__.py:117 db/models/fields/__init__.py:274 +#: db/models/fields/__init__.py:612 db/models/fields/__init__.py:623 +#: oldforms/__init__.py:357 msgid "This field is required." msgstr "יש להזין תוכן בשדה ×–×”." -#: forms/__init__.py:381 +#: newforms/models.py:182 newforms/fields.py:380 newforms/fields.py:456 +msgid "Enter a list of values." +msgstr "יש להזין רשימת ערכי×" + +#: newforms/models.py:188 newforms/fields.py:389 #, python-format -msgid "Ensure your text is less than %s character." -msgid_plural "Ensure your text is less than %s characters." -msgstr[0] "× × ×œ×•×•×“× ×©×”×˜×§×¡×˜ שלך מכיל פחות מ %s תו." -msgstr[1] "× × ×œ×•×•×“× ×©×”×˜×§×¡×˜ שלך מכיל פחות מ %s תווי×." +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "יש לבחור ×פשרות חוקית. %s ××™× ×• בין ×”×פשרויות ×”×–×ž×™× ×•×ª." -#: forms/__init__.py:386 -msgid "Line breaks are not allowed here." -msgstr "מעברי שורה ××¡×•×¨×™× ×›×ן." +#: newforms/widgets.py:180 oldforms/__init__.py:577 +#: contrib/admin/filterspecs.py:150 +msgid "Unknown" +msgstr "×œ× ×™×“×•×¢" + +#: newforms/widgets.py:180 oldforms/__init__.py:577 +#: contrib/admin/filterspecs.py:143 +msgid "Yes" +msgstr "כן" -#: forms/__init__.py:485 forms/__init__.py:558 forms/__init__.py:597 +#: newforms/widgets.py:180 oldforms/__init__.py:577 +#: contrib/admin/filterspecs.py:143 +msgid "No" +msgstr "ל×" + +#: newforms/fields.py:103 newforms/fields.py:256 #, python-format -msgid "Select a valid choice; '%(data)s' is not in %(choices)s." -msgstr "יש לבחור ×פשרות חוקית; '%(data)s' ××™× ×• בין %(choices)s." +msgid "Ensure this value has at most %d characters." +msgstr "× × ×œ×•×•×“× ×©×”×˜×§×¡×˜ שלך מכיל %d ×ª×•×•×™× ×œ×›×œ היותר." -#: forms/__init__.py:659 core/validators.py:151 core/validators.py:376 -msgid "No file was submitted. Check the encoding type on the form." -msgstr "×œ× × ×©×œ×— ×©×•× ×§×•×‘×¥. × × ×œ×‘×“×•×§ ×ת סוג הקידוד של הטופס." +#: newforms/fields.py:105 newforms/fields.py:258 +#, python-format +msgid "Ensure this value has at least %d characters." +msgstr "× × ×œ×•×•×“× ×©×¢×¨×š ×–×” מכיל לפחות %d תווי×" -#: forms/__init__.py:661 -msgid "The submitted file is empty." -msgstr "הקובץ ×©× ×©×œ×— ריק." +#: newforms/fields.py:128 core/validators.py:120 +msgid "Enter a whole number." +msgstr "× × ×œ×”×–×™×Ÿ מספר של×." -#: forms/__init__.py:717 -msgid "Enter a whole number between -32,768 and 32,767." -msgstr "חש להזין מספר ×©×œ× ×‘×™×Ÿ ‎-32,768 ל- 32,767." +#: newforms/fields.py:130 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "יש ×œ×•×•×“× ×©×¢×¨×š ×–×” פחות מ ×ו שווה ל %s." -#: forms/__init__.py:727 -msgid "Enter a positive number." -msgstr "יש להזין מספר חיובי." +#: newforms/fields.py:132 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "יש ×œ×•×•×“× ×©×”×¢×¨×š גדול מ ×ו שווה ל %s." -#: forms/__init__.py:737 -msgid "Enter a whole number between 0 and 32,767." -msgstr "יש להזין מספר ×©×œ× ×‘×™×Ÿ 0 ל- 32,767." +#: newforms/fields.py:165 +msgid "Enter a valid date." +msgstr "יש להזין ת×ריך חוקי." -#: utils/translation.py:363 -msgid "DATE_FORMAT" -msgstr "d.m.Y" +#: newforms/fields.py:192 +msgid "Enter a valid time." +msgstr "יש להזין שעה חוקית." -#: utils/translation.py:364 -msgid "DATETIME_FORMAT" -msgstr "d.m.y H:i:s" +#: newforms/fields.py:228 +msgid "Enter a valid date/time." +msgstr "יש להזין ת×ריך ושעה חוקיי×." -#: utils/translation.py:365 -msgid "TIME_FORMAT" -msgstr "H:i:s" +#: newforms/fields.py:242 +msgid "Enter a valid value." +msgstr "יש להזין ערך חוקי." -#: utils/translation.py:381 -msgid "YEAR_MONTH_FORMAT" -msgstr "d.m.Y" +#: newforms/fields.py:271 core/validators.py:162 +msgid "Enter a valid e-mail address." +msgstr "יש להזין כתובת דו×\"ל חוקית." -#: utils/translation.py:382 -msgid "MONTH_DAY_FORMAT" -msgstr "d.m.Y" +#: newforms/fields.py:289 newforms/fields.py:311 +msgid "Enter a valid URL." +msgstr "יש להזין URL חוקי." -#: utils/timesince.py:12 -msgid "year" -msgid_plural "years" -msgstr[0] "×©× ×”" -msgstr[1] "×©× ×™×" +#: newforms/fields.py:313 +msgid "This URL appears to be a broken link." +msgstr "×”-URL†הזה ×›× ×¨××” מכיל קישור שבור." -#: utils/timesince.py:13 -msgid "month" -msgid_plural "months" -msgstr[0] "חודש" -msgstr[1] "חודשי×" +#: db/models/manipulators.py:307 +#, python-format +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "%(object)s ×¢× %(type)s ×§×™×™× ×›×‘×¨ עבור %(field)s × ×ª×•×Ÿ." -#: utils/timesince.py:14 -msgid "week" -msgid_plural "weeks" -msgstr[0] "שבוע" -msgstr[1] "שבועות" +#: db/models/manipulators.py:308 contrib/admin/views/main.py:335 +#: contrib/admin/views/main.py:337 contrib/admin/views/main.py:339 +msgid "and" +msgstr "ו" -#: utils/timesince.py:15 -msgid "day" -msgid_plural "days" -msgstr[0] "יו×" -msgstr[1] "ימי×" +#: db/models/fields/related.py:53 +#, python-format +msgid "Please enter a valid %s." +msgstr "יש להזין %s חוקי." -#: utils/timesince.py:16 -msgid "hour" -msgid_plural "hours" -msgstr[0] "שעה" -msgstr[1] "שעות" +#: db/models/fields/related.py:642 +msgid "Separate multiple IDs with commas." +msgstr "יש להפריד ×ž×–×”×™× ×ž×¨×•×‘×™× ×‘×¤×¡×™×§×™×." -#: utils/timesince.py:17 -msgid "minute" -msgid_plural "minutes" -msgstr[0] "דקה" -msgstr[1] "דקות" +#: db/models/fields/related.py:644 +msgid "" +"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "×”×—×–×§ ×ת \"Control\", ×ו \"Command\" על מק, לחוץ כדי לבחור יותר מ×חד." + +#: db/models/fields/related.py:691 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +"Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr "× × ×œ×”×–×™×Ÿ זיהוי %(self)s חוקי. הערך %(value)r ××™× ×• חוקי." + +#: db/models/fields/__init__.py:42 +#, python-format +msgid "%(optname)s with this %(fieldname)s already exists." +msgstr "%(optname)s·ע×·%(fieldname)s·זה קיימת כבר." + +#: db/models/fields/__init__.py:369 +msgid "This value must be an integer." +msgstr "ערך ×–×” חייב להיות מספר של×." + +#: db/models/fields/__init__.py:404 +msgid "This value must be either True or False." +msgstr "ערך ×–×” חייב להיות ×מת ×ו שקר." + +#: db/models/fields/__init__.py:425 +msgid "This field cannot be null." +msgstr "שדה ×–×” ××™× ×• יכול להכיל null." + +#: db/models/fields/__init__.py:459 core/validators.py:148 +msgid "Enter a valid date in YYYY-MM-DD format." +msgstr "יש להזין ת×ריך ×‘×ž×‘× ×” YYYY-MM-DD." + +#: db/models/fields/__init__.py:528 core/validators.py:157 +msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." +msgstr "יש להזין ת×ריך ושעה ×‘×ž×‘× ×” YYYY-MM-DD HH:MM." + +#: db/models/fields/__init__.py:632 +msgid "Enter a valid filename." +msgstr "יש להזין ×©× ×§×•×‘×¥ חוקי." + +#: db/models/fields/__init__.py:753 +msgid "This value must be either None, True or False." +msgstr "ערך ×–×” חייב להיות כלו×, ×מת ×ו שקר." #: utils/dates.py:6 msgid "Monday" @@ -269,147 +319,411 @@ msgstr "× ×•×‘'" msgid "Dec." msgstr "דצמ'" -#: db/models/manipulators.py:302 +#: utils/timesince.py:12 +msgid "year" +msgstr "×©× ×”" + +#: utils/timesince.py:13 +msgid "month" +msgstr "חודש" + +#: utils/timesince.py:14 +msgid "week" +msgstr "שבוע" + +#: utils/timesince.py:15 +msgid "day" +msgstr "יו×" + +#: utils/timesince.py:16 +msgid "hour" +msgstr "שעה" + +#: utils/timesince.py:17 +msgid "minute" +msgstr "דקה" + +#: utils/timesince.py:40 #, python-format -msgid "%(object)s with this %(type)s already exists for the given %(field)s." -msgstr "%(object)s ×¢× %(type)s ×§×™×™× ×›×‘×¨ עבור %(field)s × ×ª×•×Ÿ." +msgid "%d milliseconds" +msgstr "%d ×ž×™×œ×™×©× ×™×•×ª" -#: db/models/fields/__init__.py:40 +#: utils/timesince.py:41 #, python-format -msgid "%(optname)s with this %(fieldname)s already exists." -msgstr "%(optname)s·ע×·%(fieldname)s·זה קיימת כבר." +msgid "%(number)d %(type)s" +msgstr "%(number)d %(type)s" -#: db/models/fields/__init__.py:337 -msgid "This value must be an integer." -msgstr "ערך ×–×” חייב להיות מספר של×." +#: utils/timesince.py:47 +#, python-format +msgid ", %(number)d %(type)s" +msgstr ", %(number)d %(type)s" -#: db/models/fields/__init__.py:369 -msgid "This value must be either True or False." -msgstr "ערך ×–×” חייב להיות ×מת ×ו שקר." +#: utils/dateformat.py:40 +msgid "p.m." +msgstr "×חר הצהריי×" -#: db/models/fields/__init__.py:385 -msgid "This field cannot be null." -msgstr "שדה ×–×” ××™× ×• יכול להכיל null." +#: utils/dateformat.py:41 +msgid "a.m." +msgstr "בבוקר" -#: db/models/fields/__init__.py:471 core/validators.py:135 -msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." -msgstr "יש להזין ת×ריך ושעה ×‘×ž×‘× ×” YYYY-MM-DD HH:MM." +#: utils/dateformat.py:46 +msgid "PM" +msgstr "×חר הצהריי×" -#: db/models/fields/__init__.py:565 -msgid "Enter a valid filename." -msgstr "יש להזין ×©× ×§×•×‘×¥ חוקי." +#: utils/dateformat.py:47 +msgid "AM" +msgstr "בבוקר" + +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "חצות" + +#: utils/dateformat.py:97 +msgid "noon" +msgstr "צהריי×" + +#: utils/translation/trans_real.py:358 +msgid "DATE_FORMAT" +msgstr "d.m.Y" + +#: utils/translation/trans_real.py:359 +msgid "DATETIME_FORMAT" +msgstr "d.m.y H:i:s" + +#: utils/translation/trans_real.py:360 +msgid "TIME_FORMAT" +msgstr "H:i:s" + +#: utils/translation/trans_real.py:376 +msgid "YEAR_MONTH_FORMAT" +msgstr "d.m.Y" + +#: utils/translation/trans_real.py:377 +msgid "MONTH_DAY_FORMAT" +msgstr "d.m.Y" + +#: conf/global_settings.py:39 +msgid "Arabic" +msgstr "ערבית" + +#: conf/global_settings.py:40 +msgid "Bengali" +msgstr "×‘× ×’×לית - Bengali" + +#: conf/global_settings.py:41 +msgid "Catalan" +msgstr "×§××˜×œ×•× ×™×ª - Catalan" + +#: conf/global_settings.py:42 +msgid "Czech" +msgstr "צ'כית - Czech" + +#: conf/global_settings.py:43 +msgid "Welsh" +msgstr "וולשית - Welsh" + +#: conf/global_settings.py:44 +msgid "Danish" +msgstr "×“× ×™×ª - Danish" + +#: conf/global_settings.py:45 +msgid "German" +msgstr "×’×¨×ž× ×™×ª - German" -#: db/models/fields/related.py:43 +#: conf/global_settings.py:46 +msgid "Greek" +msgstr "×™×•×•× ×™×ª - Greek" + +#: conf/global_settings.py:47 +msgid "English" +msgstr "×× ×’×œ×™×ª - English" + +#: conf/global_settings.py:48 +msgid "Spanish" +msgstr "ספרדית - Spanish" + +#: conf/global_settings.py:49 +msgid "Argentinean Spanish" +msgstr "ספרדית ××¨×’× ×˜×™× ×ית - Argentinean Spanish" + +#: conf/global_settings.py:50 +msgid "Finnish" +msgstr "×¤×™× ×™×ª - Finnish" + +#: conf/global_settings.py:51 +msgid "French" +msgstr "צרפתית - French" + +#: conf/global_settings.py:52 +msgid "Galician" +msgstr "×’×ליצית - Galician" + +#: conf/global_settings.py:53 +msgid "Hungarian" +msgstr "×”×•× ×’×¨×™×ª (Hungarian)" + +#: conf/global_settings.py:54 +msgid "Hebrew" +msgstr "עברית - Hebrew" + +#: conf/global_settings.py:55 +msgid "Icelandic" +msgstr "××™×¡×œ× ×“×™×ª - Icelandic" + +#: conf/global_settings.py:56 +msgid "Italian" +msgstr "×יטלקית - Italian" + +#: conf/global_settings.py:57 +msgid "Japanese" +msgstr "×™×¤× ×™×ª - Japanese" + +#: conf/global_settings.py:58 +msgid "Korean" +msgstr "קורי×× ×™×ª - Korean" + +#: conf/global_settings.py:59 +msgid "Kannada" +msgstr "×§× ×“×” - Kannada" + +#: conf/global_settings.py:60 +msgid "Latvian" +msgstr "לטבית - Latvian" + +#: conf/global_settings.py:61 +msgid "Macedonian" +msgstr "×ž×§×“×•× ×™×ª - Macedonian" + +#: conf/global_settings.py:62 +msgid "Dutch" +msgstr "×”×•×œ× ×“×™×ª - Dutch" + +#: conf/global_settings.py:63 +msgid "Norwegian" +msgstr "× ×•×¨×•×•×’×™×ª - Norwegian" + +#: conf/global_settings.py:64 +msgid "Polish" +msgstr "×¤×•×œ× ×™×ª - Polish" + +#: conf/global_settings.py:65 +msgid "Portugese" +msgstr "פורטוגזית - Portugese" + +#: conf/global_settings.py:66 +msgid "Brazilian" +msgstr "ברזיל×ית - Brazilian" + +#: conf/global_settings.py:67 +msgid "Romanian" +msgstr "×¨×•×ž× ×™×ª - Romanian" + +#: conf/global_settings.py:68 +msgid "Russian" +msgstr "רוסית - Russian" + +#: conf/global_settings.py:69 +msgid "Slovak" +msgstr "סלובקית - Slovak" + +#: conf/global_settings.py:70 +msgid "Slovenian" +msgstr "×¡×œ×•×‘× ×™×ª - Slovenian" + +#: conf/global_settings.py:71 +msgid "Serbian" +msgstr "סרבית - Serbian" + +#: conf/global_settings.py:72 +msgid "Swedish" +msgstr "שוודית - Swedish" + +#: conf/global_settings.py:73 +msgid "Tamil" +msgstr "" + +#: conf/global_settings.py:74 +msgid "Telugu" +msgstr "" + +#: conf/global_settings.py:75 +msgid "Turkish" +msgstr "טורקית - Turkish" + +#: conf/global_settings.py:76 +msgid "Ukrainian" +msgstr "×וקר××™× ×™×ª - Ukrainian" + +#: conf/global_settings.py:77 +msgid "Simplified Chinese" +msgstr "×¡×™× ×™×ª פשוטה - Simplified·Chinese" + +#: conf/global_settings.py:78 +msgid "Traditional Chinese" +msgstr "×¡×™× ×™×ª מסורתית - Traditional·Chinese" + +#: template/defaultfilters.py:491 +msgid "yes,no,maybe" +msgstr "כן,ל×,×ולי" + +#: template/defaultfilters.py:520 #, python-format -msgid "Please enter a valid %s." -msgstr "יש להזין %s חוקי." +msgid "%(size)d byte" +msgstr "%(size)d בתי×" -#: db/models/fields/related.py:579 -msgid "Separate multiple IDs with commas." -msgstr "יש להפריד ×ž×–×”×™× ×ž×¨×•×‘×™× ×‘×¤×¡×™×§×™×." +#: template/defaultfilters.py:522 +#, python-format +msgid "%.1f KB" +msgstr "%.1f KB" -#: db/models/fields/related.py:581 -msgid "" -"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." -msgstr "×”×—×–×§ ×ת \"Control\", ×ו \"Command\" על מק, לחוץ כדי לבחור יותר מ×חד." +#: template/defaultfilters.py:524 +#, python-format +msgid "%.1f MB" +msgstr "%.1f MB" -#: db/models/fields/related.py:625 +#: template/defaultfilters.py:525 #, python-format -msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." -msgid_plural "" -"Please enter valid %(self)s IDs. The values %(value)r are invalid." -msgstr[0] "× × ×œ×”×–×™×Ÿ זיהוי %(self)s חוקי. הערך %(value)r ××™× ×• חוקי." -msgstr[1] "" -"× × ×œ×”×–×™×Ÿ זיהויי %(self)s חוקיי×. ×”×¢×¨×›×™× %(value)r ××™× × ×—×•×§×™×™×." +msgid "%.1f GB" +msgstr "%.1f GB" + +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "×”-%(verbose_name)s × ×•×¦×¨ בהצלחה." + +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "×”-%(verbose_name)s עודכן בהצלחה." + +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "×”-%(verbose_name)s × ×ž×—×§." + +#: oldforms/__init__.py:392 +#, python-format +msgid "Ensure your text is less than %s character." +msgstr "× × ×œ×•×•×“× ×©×”×˜×§×¡×˜ שלך מכיל פחות מ %s תו." + +#: oldforms/__init__.py:397 +msgid "Line breaks are not allowed here." +msgstr "מעברי שורה ××¡×•×¨×™× ×›×ן." -#: core/validators.py:63 +#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 +#, python-format +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "יש לבחור ×פשרות חוקית; '%(data)s' ××™× ×• בין %(choices)s." + +#: oldforms/__init__.py:672 core/validators.py:174 core/validators.py:445 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "×œ× × ×©×œ×— ×©×•× ×§×•×‘×¥. × × ×œ×‘×“×•×§ ×ת סוג הקידוד של הטופס." + +#: oldforms/__init__.py:674 +msgid "The submitted file is empty." +msgstr "הקובץ ×©× ×©×œ×— ריק." + +#: oldforms/__init__.py:730 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "חש להזין מספר ×©×œ× ×‘×™×Ÿ ‎-32,768 ל- 32,767." + +#: oldforms/__init__.py:740 +msgid "Enter a positive number." +msgstr "יש להזין מספר חיובי." + +#: oldforms/__init__.py:750 +msgid "Enter a whole number between 0 and 32,767." +msgstr "יש להזין מספר ×©×œ× ×‘×™×Ÿ 0 ל- 32,767." + +#: core/validators.py:64 msgid "This value must contain only letters, numbers and underscores." msgstr "ערך ×–×” חייב להכיל ×ותיות, ספרות ×•×§×•×•×™× ×ª×—×ª×•× ×™× ×‘×œ×‘×“." -#: core/validators.py:67 +#: core/validators.py:68 msgid "" "This value must contain only letters, numbers, underscores, dashes or " "slashes." msgstr "ערך ×–×” חייב להכיל ×ותיות, ספרות, מקפי×, ×§×•×•×™× ×ª×—×ª×•× ×™× ×•× ×˜×•×™×™× ×‘×œ×‘×“." -#: core/validators.py:75 +#: core/validators.py:72 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "ערך ×–×” חייב להכיל ×ותיות, ספרות, ×ž×§×¤×™× ×•×§×•×•×™× ×ª×—×ª×•× ×™× ×‘×œ×‘×“." + +#: core/validators.py:76 msgid "Uppercase letters are not allowed here." msgstr "×סור להשתמש ב×ותיות גדולות." -#: core/validators.py:79 +#: core/validators.py:80 msgid "Lowercase letters are not allowed here." msgstr "×סור להשתמש ב×ותיות ×§×˜× ×•×ª." -#: core/validators.py:86 +#: core/validators.py:87 msgid "Enter only digits separated by commas." msgstr "יש להזין רק ספרות מופרדות בפסיקי×." -#: core/validators.py:98 +#: core/validators.py:99 msgid "Enter valid e-mail addresses separated by commas." msgstr "יש להזין רק כתובות דו×\"ל מופרדות בפסיקי×." -#: core/validators.py:102 +#: core/validators.py:103 msgid "Please enter a valid IP address." msgstr "× × ×œ×”×–×™×Ÿ כתובת IP חוקית." -#: core/validators.py:106 +#: core/validators.py:107 msgid "Empty values are not allowed here." msgstr "חובה להזין ערך בשדה ×–×”." -#: core/validators.py:110 +#: core/validators.py:111 msgid "Non-numeric characters aren't allowed here." msgstr "מותר להזין ספרות בלבד." -#: core/validators.py:114 +#: core/validators.py:115 msgid "This value can't be comprised solely of digits." msgstr "ערך ×–×” ××™× ×• יכול להכיל ספרות בלבד." -#: core/validators.py:119 -msgid "Enter a whole number." -msgstr "× × ×œ×”×–×™×Ÿ מספר של×." - -#: core/validators.py:123 +#: core/validators.py:124 msgid "Only alphabetical characters are allowed here." msgstr "יש להזין ×›×ן ×ותיות בלבד." -#: core/validators.py:127 -msgid "Enter a valid date in YYYY-MM-DD format." -msgstr "יש להזין ת×ריך ×‘×ž×‘× ×” YYYY-MM-DD." +#: core/validators.py:139 +msgid "Year must be 1900 or later." +msgstr "×©× ×” צריכה להיות 1900 ומעלה." + +#: core/validators.py:143 +#, python-format +msgid "Invalid date: %s" +msgstr "ת×ריך שגוי: %s" -#: core/validators.py:131 +#: core/validators.py:153 msgid "Enter a valid time in HH:MM format." msgstr "יש להזין שעה ×‘×ž×‘× ×” HH:MM." -#: core/validators.py:139 -msgid "Enter a valid e-mail address." -msgstr "יש להזין כתובת דו×\"ל חוקית." - -#: core/validators.py:155 +#: core/validators.py:178 msgid "" "Upload a valid image. The file you uploaded was either not an image or a " "corrupted image." msgstr "× × ×œ×”×¢×œ×•×ª ×ª×ž×•× ×” חוקית. הקובץ שהעלת ××™× ×• ×ª×ž×•× ×” ×ומכיל ×ª×ž×•× ×” מקולקלת." -#: core/validators.py:162 +#: core/validators.py:185 #, python-format msgid "The URL %s does not point to a valid image." msgstr "×”-URL %s ×× ×• מצביע ×œ×ª×ž×•× ×” חוקית." -#: core/validators.py:166 +#: core/validators.py:189 #, python-format msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." msgstr "מספרי טלפון ×—×™×™×‘×™× ×œ×”×™×•×ª ×‘×ž×‘× ×” XXX-XXX-XXXX.†\"%s\" ××™× ×• חוקי." -#: core/validators.py:174 +#: core/validators.py:197 #, python-format msgid "The URL %s does not point to a valid QuickTime video." msgstr "×”-URL†%s ××™× ×• מצביע לסרטון QuickTime חוקי." -#: core/validators.py:178 +#: core/validators.py:201 msgid "A valid URL is required." msgstr "יש להזין URL חוקי." -#: core/validators.py:192 +#: core/validators.py:215 #, python-format msgid "" "Valid HTML is required. Specific errors are:\n" @@ -418,123 +732,141 @@ msgstr "" "יש להזין HTML חוקי. שגי×ות ספציפיות:\n" "%s" -#: core/validators.py:199 +#: core/validators.py:222 #, python-format msgid "Badly formed XML: %s" msgstr "×ž×‘× ×” XML שגוי: %s" -#: core/validators.py:209 +#: core/validators.py:239 #, python-format msgid "Invalid URL: %s" msgstr "URL שגוי: %s" -#: core/validators.py:213 core/validators.py:215 +#: core/validators.py:244 core/validators.py:246 #, python-format msgid "The URL %s is a broken link." msgstr "×”-URL†%s ×”×•× ×§×™×©×•×¨ שבור." -#: core/validators.py:221 +#: core/validators.py:252 msgid "Enter a valid U.S. state abbreviation." msgstr "יש להזין קיצור חוקי ×œ×ž×“×™× ×” ב×רה\"ב." -#: core/validators.py:236 +#: core/validators.py:266 #, python-format msgid "Watch your mouth! The word %s is not allowed here." -msgid_plural "Watch your mouth! The words %s are not allowed here." -msgstr[0] "שמור על ×œ×©×•× ×š! המילה %s ×סורה לשימוש ×›×ן." -msgstr[1] "שמור על ×œ×©×•× ×š! ×”×ž×™×œ×™× %s ×סורות לשימוש ×›×ן." +msgstr "שמור על ×œ×©×•× ×š! המילה %s ×סורה לשימוש ×›×ן." -#: core/validators.py:243 +#: core/validators.py:273 #, python-format msgid "This field must match the '%s' field." msgstr "תוכן השדה חייב להיות ×–×”×” לשדה '%s'." -#: core/validators.py:262 +#: core/validators.py:292 msgid "Please enter something for at least one field." msgstr "יש להזין תוכן בלפחות ×חד מהשדות." -#: core/validators.py:271 core/validators.py:282 +#: core/validators.py:301 core/validators.py:312 msgid "Please enter both fields or leave them both empty." msgstr "יש להזין תוכן ×‘×©× ×™ השדות ×ו להש×יר ×ת ×©× ×™×”× ×¨×™×§×™×." -#: core/validators.py:289 +#: core/validators.py:320 #, python-format msgid "This field must be given if %(field)s is %(value)s" msgstr "יש להזין מידע בשדה ×–×” ×× ×©×“×” %(field)s מכיל %(value)s" -#: core/validators.py:301 +#: core/validators.py:333 #, python-format msgid "This field must be given if %(field)s is not %(value)s" msgstr "יש להזין תוכן בשדה ×–×” ×× ×ª×•×›×Ÿ שדה %(field)s ××™× ×• %(value)s" -#: core/validators.py:320 +#: core/validators.py:352 msgid "Duplicate values are not allowed." msgstr "×œ× × ×™×ª×Ÿ להזין ×¢×¨×›×™× ×›×¤×•×œ×™×." -#: core/validators.py:343 +#: core/validators.py:367 +#, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "ערך ×–×” חייב להיות בין %(lower)s ל-%(upper)s." + +#: core/validators.py:369 +#, python-format +msgid "This value must be at least %s." +msgstr "ערך ×–×” חייב להיות לפחות %s." + +#: core/validators.py:371 +#, python-format +msgid "This value must be no more than %s." +msgstr "ערך ×–×” ××™× ×• יכול להיות יותר מ-%s." + +#: core/validators.py:407 #, python-format msgid "This value must be a power of %s." msgstr "ערך ×–×” חייב להיות ×—×–×§×” של %s." -#: core/validators.py:354 +#: core/validators.py:418 msgid "Please enter a valid decimal number." msgstr "יש להזין מספר ×¢×©×¨×•× ×™ חוקי." -#: core/validators.py:356 +#: core/validators.py:422 #, python-format msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "" "Please enter a valid decimal number with at most %s total digits." -msgstr[0] "× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ חוקי ×¢× %s ספרה לכל היותר." -msgstr[1] "" -"× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ חוקי ×¢× %s ספרות לכל היותר." +msgstr "× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ חוקי ×¢× %s ספרה לכל היותר." +"× × ×œ×”×–×™×Ÿ מספר ×¢×©×•×¨× ×™ חוקי ×¢× %s ספרות לכל היותר." -#: core/validators.py:359 +#: core/validators.py:425 +#, python-format +msgid "" +"Please enter a valid decimal number with a whole part of at most %s digit." +"Please enter a valid decimal number with a whole part of at most %s digits." +msgstr "" +"× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ המכיל מספר ×©×œ× ×¢× %s ספרה לכל היותר." +"× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ המכיל מספר ×©×œ× ×¢× %s ספרות לכל היותר." + +#: core/validators.py:428 #, python-format msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "" "Please enter a valid decimal number with at most %s decimal places." -msgstr[0] "× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ חוקי ×¢× %s ספרה ×חרי ×”× ×§×•×“×” לכל היותר." -msgstr[1] "" -"× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ חוקי ×¢× %s ספרות ×חרי ×”× ×§×•×“×” לכל היותר." +msgstr "× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ חוקי בעל %s ספרה לכל היותר ×‘×ž×§×•× ×”×¢×©×¨×•× ×™." +"× × ×œ×”×–×™×Ÿ מספר ×¢×©×¨×•× ×™ חוקי בעל %s ספרות לכל היותר ×‘×ž×§×•× ×”×¢×©×¨×•× ×™." -#: core/validators.py:369 +#: core/validators.py:438 #, python-format msgid "Make sure your uploaded file is at least %s bytes big." msgstr "יש להעלות קובץ בגודל %s ×‘×ª×™× ×œ×¤×—×•×ª." -#: core/validators.py:370 +#: core/validators.py:439 #, python-format msgid "Make sure your uploaded file is at most %s bytes big." msgstr "יש ×œ×•×•×“× ×©×”×§×•×‘×¥ שהעלת ×”×•× ×‘×’×•×“×œ %s ×‘×ª×™× ×œ×›×œ היותר." -#: core/validators.py:387 +#: core/validators.py:456 msgid "The format for this field is wrong." msgstr "×ž×‘× ×” תוכן שדה ×–×” שגוי." -#: core/validators.py:402 +#: core/validators.py:471 msgid "This field is invalid." msgstr "שדה ×–×” ××™× ×• חוקי." -#: core/validators.py:438 +#: core/validators.py:507 #, python-format msgid "Could not retrieve anything from %s." msgstr "×œ× × ×™×ª×Ÿ ל×חזר ×›×œ×•× ×ž %s." -#: core/validators.py:441 +#: core/validators.py:510 #, python-format msgid "" "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." msgstr "×”-URL·%(url)s·החזיר כותרת·Content-TypeÂ·×œ× ×—×•×§×™×ªÂ·'%(contenttype)s'." -#: core/validators.py:474 +#: core/validators.py:543 #, python-format msgid "" "Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " "\"%(start)s\".)" msgstr "× × ×œ×¡×’×•×¨ ×ת תג·%(tag)s·בשורה·%(line)s.·(השורה מתחילה ב·\"%(start)s\".)" -#: core/validators.py:478 +#: core/validators.py:547 #, python-format msgid "" "Some text starting on line %(line)s is not allowed in that context. (Line " @@ -542,7 +874,7 @@ msgid "" msgstr "" "חלק מהטקסט בשורה·%(line)s·×סור בהקשר ×–×”.·(השורה·מתחילה ב·\"%(start)s\".)" -#: core/validators.py:483 +#: core/validators.py:552 #, python-format msgid "" "\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" @@ -550,7 +882,7 @@ msgid "" msgstr "" "\"%(attr)s\"·בשורה·%(line)s·××™× ×” ×ª×›×•× ×” חוקית.·(השורה מתחילה ב·\"%(start)s\".)" -#: core/validators.py:488 +#: core/validators.py:557 #, python-format msgid "" "\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" @@ -558,16 +890,16 @@ msgid "" msgstr "" "\"<%(tag)s>\"·בשורה·%(line)s·××™× ×• תג חוקי.·(השורה מתחילה ב·\"%(start)s\".)" -#: core/validators.py:492 +#: core/validators.py:561 #, python-format msgid "" "A tag on line %(line)s is missing one or more required attributes. (Line " "starts with \"%(start)s\".)" msgstr "" -"לתג בשורה %(line)s חסרה ×ª×›×•× ×” ×חת ×ו יותר × ×“×¨×©×•×ª. (השורה מתחילה ב-\"%" -"(start)s\".)" +"לתג בשורה %(line)s חסרה ×ª×›×•× ×” ×חת ×ו יותר × ×“×¨×©×•×ª. (השורה מתחילה ב-\"%(start)s" +"\".)" -#: core/validators.py:497 +#: core/validators.py:566 #, python-format msgid "" "The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " @@ -576,138 +908,6 @@ msgstr "" "×œ×ª×›×•× ×”Â·\"%(attr)s\"·בשורה·%(line)s·יש ערך ×œ× ×—×•×§×™.·(השורה·מתחילה ב·\"%(start)" "s\".)" -#: conf/global_settings.py:37 -msgid "Bengali" -msgstr "×‘× ×’×לית - Bengali" - -#: conf/global_settings.py:38 -msgid "Czech" -msgstr "צ'כית - Czech" - -#: conf/global_settings.py:39 -msgid "Welsh" -msgstr "וולשית - Welsh" - -#: conf/global_settings.py:40 -msgid "Danish" -msgstr "×“× ×™×ª - Danish" - -#: conf/global_settings.py:41 -msgid "German" -msgstr "×’×¨×ž× ×™×ª - German" - -#: conf/global_settings.py:42 -msgid "Greek" -msgstr "×™×•×•× ×™×ª - Greek" - -#: conf/global_settings.py:43 -msgid "English" -msgstr "×× ×’×œ×™×ª - English" - -#: conf/global_settings.py:44 -msgid "Spanish" -msgstr "ספרדית - Spanish" - -#: conf/global_settings.py:45 -msgid "Argentinean Spanish" -msgstr "ספרדית ××¨×’× ×˜×™× ×ית - Argentinean Spanish" - -#: conf/global_settings.py:46 -msgid "French" -msgstr "צרפתית - French" - -#: conf/global_settings.py:47 -msgid "Galician" -msgstr "×’×ליצית - Galician" - -#: conf/global_settings.py:48 -msgid "Hungarian" -msgstr "×”×•× ×’×¨×™×ª (Hungarian)" - -#: conf/global_settings.py:49 -msgid "Hebrew" -msgstr "עברית - Hebrew" - -#: conf/global_settings.py:50 -msgid "Icelandic" -msgstr "××™×¡×œ× ×“×™×ª - Icelandic" - -#: conf/global_settings.py:51 -msgid "Italian" -msgstr "×יטלקית - Italian" - -#: conf/global_settings.py:52 -msgid "Japanese" -msgstr "×™×¤× ×™×ª - Japanese" - -#: conf/global_settings.py:53 -msgid "Dutch" -msgstr "×”×•×œ× ×“×™×ª - Dutch" - -#: conf/global_settings.py:54 -msgid "Norwegian" -msgstr "× ×•×¨×•×•×’×™×ª - Norwegian" - -#: conf/global_settings.py:55 -msgid "Brazilian" -msgstr "ברזיל×ית - Brazilian" - -#: conf/global_settings.py:56 -msgid "Romanian" -msgstr "×¨×•×ž× ×™×ª - Romanian" - -#: conf/global_settings.py:57 -msgid "Russian" -msgstr "רוסית - Russian" - -#: conf/global_settings.py:58 -msgid "Slovak" -msgstr "סלובקית - Slovak" - -#: conf/global_settings.py:59 -msgid "Slovenian" -msgstr "×¡×œ×•×‘× ×™×ª - Slovenian" - -#: conf/global_settings.py:60 -msgid "Serbian" -msgstr "סרבית - Serbian" - -#: conf/global_settings.py:61 -msgid "Swedish" -msgstr "שוודית - Swedish" - -#: conf/global_settings.py:62 -msgid "Ukrainian" -msgstr "×וקר××™× ×™×ª - Ukrainian" - -#: conf/global_settings.py:63 -msgid "Simplified Chinese" -msgstr "×¡×™× ×™×ª פשוטה - Simplified·Chinese" - -#: conf/global_settings.py:64 -msgid "Traditional Chinese" -msgstr "×¡×™× ×™×ª מסורתית - Traditional·Chinese" - -#: contrib/sessions/models.py:35 -msgid "session key" -msgstr "מפתח התחברות (session key)" - -#: contrib/sessions/models.py:36 -msgid "session data" -msgstr "מידע התחברות (session data)" - -#: contrib/sessions/models.py:37 -msgid "expire date" -msgstr "ת×ריך פג תוקף" - -#: contrib/sessions/models.py:41 -msgid "session" -msgstr "התחברות" - -#: contrib/sessions/models.py:42 -msgid "sessions" -msgstr "התחברויות" - #: contrib/sites/models.py:10 msgid "domain name" msgstr "×©× ×ž×ª×—×" @@ -724,18 +924,6 @@ msgstr "×תר" msgid "sites" msgstr "×תרי×" -#: contrib/contenttypes/models.py:25 -msgid "python model class name" -msgstr "×©× ×”-class של מודל פייתון" - -#: contrib/contenttypes/models.py:28 -msgid "content type" -msgstr "סוג תוכן" - -#: contrib/contenttypes/models.py:29 -msgid "content types" -msgstr "סוגי תוכן" - #: contrib/comments/models.py:67 contrib/comments/models.py:166 msgid "object ID" msgstr "מזהה ×ובייקט" @@ -793,7 +981,7 @@ msgstr "ת×ריך/שעת הגשה" msgid "is public" msgstr "ציבורי" -#: contrib/comments/models.py:85 contrib/admin/views/doc.py:292 +#: contrib/comments/models.py:85 contrib/admin/views/doc.py:304 msgid "IP address" msgstr "כתובת IP" @@ -917,103 +1105,31 @@ msgstr "מחיקות מודרטור" msgid "Moderator deletion by %r" msgstr "מחיקת מודרציה ×¢\"×™ %r" -#: contrib/comments/templates/comments/freeform.html:4 -msgid "Your name:" -msgstr "שמך:" - -#: contrib/comments/templates/comments/freeform.html:5 -#: contrib/comments/templates/comments/form.html:27 -msgid "Comment:" -msgstr "תגובה:" - -#: contrib/comments/templates/comments/freeform.html:9 -#: contrib/comments/templates/comments/form.html:32 -msgid "Preview comment" -msgstr "תצוגה מקדימה של התגובה" - -#: contrib/comments/templates/comments/form.html:6 -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/login.html:17 -msgid "Username:" -msgstr "×©× ×ž×©×ª×ž×©:" - -#: contrib/comments/templates/comments/form.html:6 -#: contrib/admin/templates/admin/login.html:20 -msgid "Password:" -msgstr "סיסמה:" - -#: contrib/comments/templates/comments/form.html:6 -msgid "Forgotten your password?" -msgstr "שכחת ×ת סיסמתך ?" - -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/view_index.html:5 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/model_detail.html:3 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 -#: contrib/admin/templates/admin_doc/model_index.html:5 -#: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin/base.html:24 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Log out" -msgstr "יצי××”" - -#: contrib/comments/templates/comments/form.html:12 -msgid "Ratings" -msgstr "דירוג" - -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Required" -msgstr "× ×“×¨×©" - -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Optional" -msgstr "××•×¤×¦×™×•× ×œ×™" - -#: contrib/comments/templates/comments/form.html:23 -msgid "Post a photo" -msgstr "שליחת ×ª×ž×•× ×”" - -#: contrib/comments/views/comments.py:28 +#: contrib/comments/views/comments.py:27 msgid "" "This rating is required because you've entered at least one other rating." msgstr "הדירוג × ×“×¨×© מ×חר ×•×”×–× ×ª לפחות דרוג ×חד ×חר." -#: contrib/comments/views/comments.py:112 +#: contrib/comments/views/comments.py:111 #, python-format msgid "" "This comment was posted by a user who has posted fewer than %(count)s " "comment:\n" "\n" "%(text)s" -msgid_plural "" "This comment was posted by a user who has posted fewer than %(count)s " "comments:\n" "\n" "%(text)s" -msgstr[0] "" -"התגובה × ×©×œ×—×” ×¢\"×™ משתמש ×שר שלח פחות מ-%(count)s " -"תגובה:\n" +msgstr "" +"התגובה × ×©×œ×—×” ×¢\"×™ משתמש ×שר שלח פחות מ-%(count)s תגובה:\n" "\n" "%(text)s" -msgstr[1] "" -"התגובה × ×©×œ×—×” ×¢\"×™ משתמש ×שר שלח פחות מ-%(count)s " -"תגובות:\n" +"התגובה × ×©×œ×—×” ×¢\"×™ משתמש ×שר שלח פחות מ-%(count)s תגובות:\n" "\n" "%(text)s" -#: contrib/comments/views/comments.py:117 +#: contrib/comments/views/comments.py:116 #, python-format msgid "" "This comment was posted by a sketchy user:\n" @@ -1024,22 +1140,22 @@ msgstr "" "\n" "%(text)s" -#: contrib/comments/views/comments.py:189 +#: contrib/comments/views/comments.py:188 #: contrib/comments/views/comments.py:280 msgid "Only POSTs are allowed" msgstr "רק פעולות POST מותרות" -#: contrib/comments/views/comments.py:193 +#: contrib/comments/views/comments.py:192 #: contrib/comments/views/comments.py:284 msgid "One or more of the required fields wasn't submitted" msgstr "×חד ×ו יותר מהשדות ×”× ×“×¨×©×™× ××™× ×• × ×©×œ×—." -#: contrib/comments/views/comments.py:197 +#: contrib/comments/views/comments.py:196 #: contrib/comments/views/comments.py:286 msgid "Somebody tampered with the comment form (security violation)" msgstr "מישהו התעסק ×¢× ×˜×•×¤×¡ התגובה (הפרת ×בטחה)" -#: contrib/comments/views/comments.py:207 +#: contrib/comments/views/comments.py:206 #: contrib/comments/views/comments.py:292 msgid "" "The comment form had an invalid 'target' parameter -- the object ID was " @@ -1063,6 +1179,170 @@ msgstr "מזהה תגובה שגוי" msgid "No voting for yourself" msgstr "×œ× × ×™×ª×Ÿ להצביע לעצמך" +#: contrib/comments/templates/comments/form.html:6 +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:17 +msgid "Username:" +msgstr "×©× ×ž×©×ª×ž×©:" + +#: contrib/comments/templates/comments/form.html:6 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +msgid "Log out" +msgstr "יצי××”" + +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:20 +msgid "Password:" +msgstr "סיסמה:" + +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "שכחת ×ת סיסמתך ?" + +#: contrib/comments/templates/comments/form.html:12 +msgid "Ratings" +msgstr "דירוג" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Required" +msgstr "× ×“×¨×©" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Optional" +msgstr "××•×¤×¦×™×•× ×œ×™" + +#: contrib/comments/templates/comments/form.html:23 +msgid "Post a photo" +msgstr "שליחת ×ª×ž×•× ×”" + +#: contrib/comments/templates/comments/form.html:28 +#: contrib/comments/templates/comments/freeform.html:5 +msgid "Comment:" +msgstr "תגובה:" + +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 +msgid "Preview comment" +msgstr "תצוגה מקדימה של התגובה" + +#: contrib/comments/templates/comments/freeform.html:4 +msgid "Your name:" +msgstr "שמך:" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "רביעי" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "st" +msgstr "ר×שון" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "nd" +msgstr "×©× ×™" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "שלישי" + +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgstr "%(value).1f מיליון" + +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgstr "%(value).1f ביליון" + +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgstr "%(value).1f טריליון" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "×חד" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "×©× ×™×™×" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "שלושה" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "four" +msgstr "×רבעה" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "חמישה" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "שישה" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "שבעה" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "×©×ž×•× ×”" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "תשעה" + +#: contrib/admin/models.py:16 +msgid "action time" +msgstr "זמן פעולה" + +#: contrib/admin/models.py:19 +msgid "object id" +msgstr "מזהה ×ובייקט" + +#: contrib/admin/models.py:20 +msgid "object repr" +msgstr "ייצוג ×ובייקט" + +#: contrib/admin/models.py:21 +msgid "action flag" +msgstr "דגל פעולה" + +#: contrib/admin/models.py:22 +msgid "change message" +msgstr "הערה ×œ×©×™× ×•×™" + +#: contrib/admin/models.py:25 +msgid "log entry" +msgstr "×¨×™×©×•× ×™×•×ž×Ÿ" + +#: contrib/admin/models.py:26 +msgid "log entries" +msgstr "רישומי יומן" + #: contrib/admin/filterspecs.py:40 #, python-format msgid "" @@ -1073,7 +1353,7 @@ msgstr "" "<ul>\n" #: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 -#: contrib/admin/filterspecs.py:143 +#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 msgid "All" msgstr "הכל" @@ -1097,90 +1377,337 @@ msgstr "החודש" msgid "This year" msgstr "×”×©× ×”" -#: contrib/admin/filterspecs.py:143 -msgid "Yes" -msgstr "כן" +#: contrib/admin/templatetags/admin_list.py:247 +msgid "All dates" +msgstr "כל הת×ריכי×" -#: contrib/admin/filterspecs.py:143 -msgid "No" -msgstr "ל×" +#: contrib/admin/views/decorators.py:10 contrib/auth/forms.py:60 +msgid "" +"Please enter a correct username and password. Note that both fields are case-" +"sensitive." +msgstr "" +"× × ×œ×”×–×™×Ÿ ×©× ×ž×©×ª×ž×© וסיסמה × ×›×•× ×™×. ×‘×©× ×™ השדות גודל ×”×ותיות ×”×× ×’×œ×™×•×ª ×ž×©× ×”." -#: contrib/admin/filterspecs.py:150 -msgid "Unknown" -msgstr "×œ× ×™×“×•×¢" +#: contrib/admin/views/decorators.py:24 +#: contrib/admin/templates/admin/login.html:25 +msgid "Log in" +msgstr "×›× ×™×¡×”" -#: contrib/admin/models.py:16 -msgid "action time" -msgstr "זמן פעולה" +#: contrib/admin/views/decorators.py:62 +msgid "" +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." +msgstr "" +"× × ×œ×”×ª×—×‘×¨ שוב, מ×חר ופג תוקף ההתחברות ×”× ×•×›×—×™×ª. ×ל ד××’×”: המידע ששלחת × ×©×ž×¨." -#: contrib/admin/models.py:19 -msgid "object id" -msgstr "מזהה ×ובייקט" +#: contrib/admin/views/decorators.py:69 +msgid "" +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." +msgstr "" +"× ×¨××” שהדפדפן שלך ××™× ×• מוגדר לקבל עוגיות. × × ×œ×פשר עוגיות, לטעון מחדש ×ת הדף " +"×•×œ× ×¡×•×ª שוב." -#: contrib/admin/models.py:20 -msgid "object repr" -msgstr "ייצוג ×ובייקט" +#: contrib/admin/views/decorators.py:83 +msgid "Usernames cannot contain the '@' character." +msgstr "×©× ×ž×©×ª×ž×© ××™× ×• יכול להכיל ×ת התו '@'." -#: contrib/admin/models.py:21 -msgid "action flag" -msgstr "דגל פעולה" +#: contrib/admin/views/decorators.py:85 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." +msgstr "כתובת הדו×\"ל שלך ××™× ×” ×©× ×”×ž×©×ª×ž×© שלך. × ×¡×”/×™ '%s' במקו×." -#: contrib/admin/models.py:22 -msgid "change message" -msgstr "הערה ×œ×©×™× ×•×™" +#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 +msgid "tag:" +msgstr "תג:" -#: contrib/admin/models.py:25 -msgid "log entry" -msgstr "×¨×™×©×•× ×™×•×ž×Ÿ" +#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 +msgid "filter:" +msgstr "×¡×™× ×•×Ÿ:" -#: contrib/admin/models.py:26 -msgid "log entries" -msgstr "רישומי יומן" +#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 +msgid "view:" +msgstr "צפיה (view):" -#: contrib/admin/templatetags/admin_list.py:230 -msgid "All dates" -msgstr "כל הת×ריכי×" +#: contrib/admin/views/doc.py:164 +#, python-format +msgid "App %r not found" +msgstr "×™×™×©×•× %r ×œ× × ×ž×¦×" -#: contrib/admin/templates/widget/file.html:2 -msgid "Currently:" -msgstr "×”× ×•×›×—×™." +#: contrib/admin/views/doc.py:171 +#, python-format +msgid "Model %(name)r not found in app %(label)r" +msgstr "מודל %(name)r ×œ× × ×ž×¦× ×‘×™×™×©×•× %(label)r" -#: contrib/admin/templates/widget/file.html:3 -msgid "Change:" -msgstr "×©×™× ×•×™:" +#: contrib/admin/views/doc.py:183 +#, python-format +msgid "the related `%(label)s.%(type)s` object" +msgstr "×”×ובייקט `%(label)s.%(type)s` הקשור" -#: contrib/admin/templates/widget/date_time.html:3 -msgid "Date:" -msgstr "ת×ריך:" +#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 +msgid "model:" +msgstr "מודל:" -#: contrib/admin/templates/widget/date_time.html:4 -msgid "Time:" -msgstr "שעה:" +#: contrib/admin/views/doc.py:214 +#, python-format +msgid "related `%(label)s.%(name)s` objects" +msgstr "×ובייקטי `%(label)s.%(name)s` מקושרי×" + +#: contrib/admin/views/doc.py:219 +#, python-format +msgid "all %s" +msgstr "כל %s" + +#: contrib/admin/views/doc.py:224 +#, python-format +msgid "number of %s" +msgstr "מספר %s" + +#: contrib/admin/views/doc.py:229 +#, python-format +msgid "Fields on %s objects" +msgstr "Fields on %s objects" + +#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 +msgid "Integer" +msgstr "מספר של×" + +#: contrib/admin/views/doc.py:292 +msgid "Boolean (Either True or False)" +msgstr "בולי×× ×™ (×מת ×ו שקר)" + +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 +#, python-format +msgid "String (up to %(maxlength)s)" +msgstr "מחרוזת (עד %(maxlength)s תווי×)" + +#: contrib/admin/views/doc.py:294 +msgid "Comma-separated integers" +msgstr "×ž×¡×¤×¨×™× ×©×œ×ž×™× ×ž×•×¤×¨×“×™× ×‘×¤×¡×™×§×™×" + +#: contrib/admin/views/doc.py:295 +msgid "Date (without time)" +msgstr "ת×ריך (×œ×œ× ×©×¢×”)" + +#: contrib/admin/views/doc.py:296 +msgid "Date (with time)" +msgstr "ת×ריך (כולל שעה)" + +#: contrib/admin/views/doc.py:297 +msgid "E-mail address" +msgstr "כתובת דו×\"ל" + +#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 +msgid "File path" +msgstr "× ×ª×™×‘ קובץ" + +#: contrib/admin/views/doc.py:300 +msgid "Decimal number" +msgstr "מספר ×¢×©×¨×•× ×™" + +#: contrib/admin/views/doc.py:306 +msgid "Boolean (Either True, False or None)" +msgstr "בולי×× ×™ (×מת, שקר ×ו כלו×)" + +#: contrib/admin/views/doc.py:307 +msgid "Relation to parent model" +msgstr "יחס למודל ×ב" + +#: contrib/admin/views/doc.py:308 +msgid "Phone number" +msgstr "מספר טלפון" + +#: contrib/admin/views/doc.py:313 +msgid "Text" +msgstr "טקסט" + +#: contrib/admin/views/doc.py:314 +msgid "Time" +msgstr "זמן" + +#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 +msgid "URL" +msgstr "URL" + +#: contrib/admin/views/doc.py:316 +msgid "U.S. state (two uppercase letters)" +msgstr "×ž×“×™× ×” ב×רה\"ב (שתי ×ותיות גדולות)" + +#: contrib/admin/views/doc.py:317 +msgid "XML text" +msgstr "טקסט XML" + +#: contrib/admin/views/doc.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "×œ× × ×¨××” ש-%s ×”×•× ×ובייקט urlpattern" + +#: contrib/admin/views/auth.py:19 contrib/admin/views/main.py:257 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "הוספת %(name)s \"%(obj)s\" בוצעה בהצלחה." + +#: contrib/admin/views/auth.py:24 contrib/admin/views/main.py:261 +#: contrib/admin/views/main.py:347 +msgid "You may edit it again below." +msgstr "× ×™×ª×Ÿ לערוך שוב מתחת" + +#: contrib/admin/views/auth.py:30 +msgid "Add user" +msgstr "הוספת משתמש" + +#: contrib/admin/views/auth.py:57 +msgid "Password changed successfully." +msgstr "הסיסמה ×©×•× ×ª×” בהצלחה." + +#: contrib/admin/views/auth.py:64 +#, python-format +msgid "Change password: %s" +msgstr "×©×™× ×•×™ סיסמה: %s" + +#: contrib/admin/views/main.py:223 +msgid "Site administration" +msgstr "× ×™×”×•×œ ×תר" + +#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 +#, python-format +msgid "You may add another %s below." +msgstr "× ×™×ª×Ÿ להוסיף %s × ×•×¡×£ מתחת." + +#: contrib/admin/views/main.py:289 +#, python-format +msgid "Add %s" +msgstr "הוספת %s" + +#: contrib/admin/views/main.py:335 +#, python-format +msgid "Added %s." +msgstr "%s התווסף." + +#: contrib/admin/views/main.py:337 +#, python-format +msgid "Changed %s." +msgstr "%s ×©×•× ×”." + +#: contrib/admin/views/main.py:339 +#, python-format +msgid "Deleted %s." +msgstr "%s × ×ž×—×§." + +#: contrib/admin/views/main.py:342 +msgid "No fields changed." +msgstr "××£ שדה ×œ× ×”×©×ª× ×”." + +#: contrib/admin/views/main.py:345 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "×©×™× ×•×™ %(name)s \"%(obj)s\" בוצע בהצלחה." + +#: contrib/admin/views/main.py:353 +#, python-format +msgid "" +"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "הוספת %(name)s \"%(obj)s\" בוצעה בהצלחה. × ×™×ª×Ÿ לערוך ×ותו שוב מתחת." + +#: contrib/admin/views/main.py:391 +#, python-format +msgid "Change %s" +msgstr "×©×™× ×•×™ %s" + +#: contrib/admin/views/main.py:476 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +msgstr "×חד ×ו יותר %(fieldname)s ב%(name)s: %(obj)s" + +#: contrib/admin/views/main.py:481 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" +msgstr "×חד ×ו יותר %(fieldname)s ב%(name)s:" + +#: contrib/admin/views/main.py:514 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "מחיקת %(name)s \"%(obj)s\" בוצעה בהצלחה." + +#: contrib/admin/views/main.py:517 +msgid "Are you sure?" +msgstr "×”×× ×ת/×” בטוח/×” ?" + +#: contrib/admin/views/main.py:539 +#, python-format +msgid "Change history: %s" +msgstr "היסטוריית ×©×™× ×•×™: %s" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s" +msgstr "בחירת %s" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s to change" +msgstr "בחירת %s ×œ×©×™× ×•×™" + +#: contrib/admin/views/main.py:768 +msgid "Database error" +msgstr "שגי×ת בסיס × ×ª×•× ×™×" + +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin/auth/user/change_password.html:15 +#: contrib/admin/templates/admin/auth/user/change_password.html:46 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +msgid "Change password" +msgstr "×©×™× ×•×™ סיסמה" #: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/admin/base.html:29 -#: contrib/admin/templates/admin/object_history.html:5 +#: contrib/admin/templates/admin/base.html:30 #: contrib/admin/templates/admin/change_form.html:13 #: contrib/admin/templates/admin/delete_confirmation.html:6 -#: contrib/admin/templates/admin/invalid_setup.html:4 #: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/object_history.html:5 #: contrib/admin/templates/admin/change_list.html:6 -#: contrib/admin/templates/registration/password_change_form.html:4 -#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 +#: contrib/admin/templates/registration/password_reset_form.html:4 #: contrib/admin/templates/registration/logged_out.html:4 #: contrib/admin/templates/registration/password_reset_done.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 msgid "Home" msgstr "דף הבית" #: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/admin/base.html:24 -#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/base.html:25 #: contrib/admin/templates/admin/change_form.html:10 #: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 msgid "Documentation" msgstr "תיעוד" @@ -1188,26 +1715,6 @@ msgstr "תיעוד" msgid "Bookmarklets" msgstr "×™×™×¡×•×ž× ×™×•×ª" -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/view_index.html:5 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/model_detail.html:3 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 -#: contrib/admin/templates/admin_doc/model_index.html:5 -#: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin/base.html:24 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Change password" -msgstr "×©×™× ×•×™ סיסמה" - #: contrib/admin/templates/admin_doc/bookmarklets.html:5 msgid "Documentation bookmarklets" msgstr "×™×™×¡×•×ž×•× ×™×•×ª תיעוד" @@ -1266,64 +1773,132 @@ msgstr "עריכת ×ובייקט ×–×” (בחלון חדש)" msgid "As above, but opens the admin page in a new window." msgstr "×›× \"ל, ×ך דף ×”× ×™×”×•×œ ייפתח בחלון חדש." -#: contrib/admin/templates/admin/login.html:22 -msgid "Have you <a href=\"/password_reset/\">forgotten your password</a>?" -msgstr "×”×× <a href=\"/password_reset/\">שכחת ×ת הסיסמה שלך</a>?" +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "×¡×™× ×•×Ÿ" -#: contrib/admin/templates/admin/login.html:25 -#: contrib/admin/views/decorators.py:23 -msgid "Log in" -msgstr "×›× ×™×¡×”" +#: contrib/admin/templates/admin/base.html:25 +msgid "Welcome," +msgstr "שלו×" + +#: contrib/admin/templates/admin/change_form.html:15 +#: contrib/admin/templates/admin/index.html:28 +msgid "Add" +msgstr "הוספה" + +#: contrib/admin/templates/admin/change_form.html:21 +#: contrib/admin/templates/admin/object_history.html:5 +msgid "History" +msgstr "היסטוריה" + +#: contrib/admin/templates/admin/change_form.html:22 +msgid "View on site" +msgstr "צפיה ב×תר" + +#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/auth/user/change_password.html:24 +msgid "Please correct the error below." +msgstr "× × ×œ×ª×§×Ÿ ×ת השגי××” המופיעה מתחת." + +#: contrib/admin/templates/admin/change_form.html:50 +msgid "Ordering" +msgstr "מיון" + +#: contrib/admin/templates/admin/change_form.html:53 +msgid "Order:" +msgstr "מיון:" -#: contrib/admin/templates/admin/submit_line.html:3 #: contrib/admin/templates/admin/delete_confirmation.html:9 +#: contrib/admin/templates/admin/submit_line.html:3 msgid "Delete" msgstr "מחיקה" -#: contrib/admin/templates/admin/submit_line.html:4 -msgid "Save as new" -msgstr "שמירה כחדש" +#: contrib/admin/templates/admin/delete_confirmation.html:14 +#, python-format +msgid "" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" +msgstr "" +"מחיקת %(object_name)s '%(escaped_object)s' מצריכה מחיקת " +"××•×‘×™×™×§×˜×™× ×ž×§×•×©×¨×™×, ×ך לחשבון שלך ×ין הרש×ות למחיקת" +"סוגי ×”××•×‘×™×™×§×˜×™× ×”×‘××™×:" -#: contrib/admin/templates/admin/submit_line.html:5 -msgid "Save and add another" -msgstr "שמירה והוספת ×חר" +#: contrib/admin/templates/admin/delete_confirmation.html:21 +#, python-format +msgid "" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" +msgstr "" +"×”×× ×‘×¨×¦×•× ×š למחוק ×ת %(object_name)s \"%(escaped_object)s\"? " +"כל ×”×¤×¨×™×˜×™× ×”×§×©×•×¨×™× ×”×‘××™× ×™×™×ž×—×§×•:" -#: contrib/admin/templates/admin/submit_line.html:6 -msgid "Save and continue editing" -msgstr "שמירה והמשך עריכה" +#: contrib/admin/templates/admin/delete_confirmation.html:26 +msgid "Yes, I'm sure" +msgstr "כן, ×× ×™ בטוח/×”" -#: contrib/admin/templates/admin/submit_line.html:7 -msgid "Save" -msgstr "שמירה" +#: contrib/admin/templates/admin/filter.html:2 +#, python-format +msgid " By %(filter_title)s " +msgstr " לפי %(filter_title)s " -#: contrib/admin/templates/admin/base.html:24 -msgid "Welcome," -msgstr "שלו×" +#: contrib/admin/templates/admin/500.html:4 +msgid "Server error" +msgstr "שגי×ת שרת" -#: contrib/admin/templates/admin/filters.html:4 -msgid "Filter" -msgstr "×¡×™× ×•×Ÿ" +#: contrib/admin/templates/admin/500.html:6 +msgid "Server error (500)" +msgstr "שגי×ת שרת (500)" -#: contrib/admin/templates/admin/search_form.html:8 -msgid "Go" -msgstr "בצע" +#: contrib/admin/templates/admin/500.html:9 +msgid "Server Error <em>(500)</em>" +msgstr "שגי×ת שרת <em>(500)</em>" -#: contrib/admin/templates/admin/search_form.html:10 +#: contrib/admin/templates/admin/500.html:10 +msgid "" +"There's been an error. It's been reported to the site administrators via e-" +"mail and should be fixed shortly. Thanks for your patience." +msgstr "" +"התרחשה שגי××”. ×”×™× ×“×•×•×—×” ×œ×ž× ×”×œ×™ ×”×תר בדו×\"ל ותתוקן בקרוב. תודה על ×¡×‘×œ× ×•×ª×š." + +#: contrib/admin/templates/admin/index.html:17 #, python-format -msgid "1 result" -msgid_plural "%(counter)s results" -msgstr[0] "תוצ××” ×חת" -msgstr[1] "%(counter)s תוצ×ות" +msgid "Models available in the %(name)s application." +msgstr "×ž×•×“×œ×™× ×–×ž×™× ×™× ×‘×™×™×©×•× %(name)s." -#: contrib/admin/templates/admin/search_form.html:10 +#: contrib/admin/templates/admin/index.html:18 #, python-format -msgid "%(full_result_count)s total" -msgstr "%(full_result_count)s סה\"×›" +msgid "%(name)s" +msgstr "%(name)s" -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/change_form.html:20 -msgid "History" -msgstr "היסטוריה" +#: contrib/admin/templates/admin/index.html:34 +msgid "Change" +msgstr "×©×™× ×•×™" + +#: contrib/admin/templates/admin/index.html:44 +msgid "You don't have permission to edit anything." +msgstr "×ין לך הרש×ות לעריכה" + +#: contrib/admin/templates/admin/index.html:52 +msgid "Recent Actions" +msgstr "פעולות ××—×¨×•× ×•×ª" + +#: contrib/admin/templates/admin/index.html:53 +msgid "My Actions" +msgstr "הפעולות שלי" + +#: contrib/admin/templates/admin/index.html:57 +msgid "None available" +msgstr "×œ× × ×ž×¦×ו" + +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "" +"משהו שגוי ×‘×”×ª×§× ×ª בסיס ×”× ×ª×•× ×™× ×©×œ×š. × × ×œ×•×•×“× ×©× ×•×¦×¨×• טבל×ות בסיס ×”× ×ª×•× ×™× " +"המת×ימות, ובסיס ×”× ×ª×•× ×™× × ×™×ª×Ÿ לקרי××” על ידי המשתמש המת××™×." #: contrib/admin/templates/admin/object_history.html:18 msgid "Date/time" @@ -1348,40 +1923,21 @@ msgid "" msgstr "" "ל×ובייקט ×–×” ×ין היסטוריית ×©×™× ×•×™. ×›× ×¨××” ×œ× ×”×©×ª×ž×©×• בממשק ×”× ×™×”×•×œ ×”×–×” להוספתו." -#: contrib/admin/templates/admin/change_form.html:15 -#: contrib/admin/templates/admin/index.html:28 -msgid "Add" -msgstr "הוספה" - -#: contrib/admin/templates/admin/change_form.html:21 -msgid "View on site" -msgstr "צפיה ב×תר" - -#: contrib/admin/templates/admin/change_form.html:30 -msgid "Please correct the error below." -msgid_plural "Please correct the errors below." -msgstr[0] "× × ×œ×ª×§×Ÿ ×ת השגי××” המופיעה מתחת." -msgstr[1] "× × ×œ×ª×§×Ÿ ×ת השגי×ות המופיעות מתחת." - -#: contrib/admin/templates/admin/change_form.html:48 -msgid "Ordering" -msgstr "מיון" - -#: contrib/admin/templates/admin/change_form.html:51 -msgid "Order:" -msgstr "מיון:" +#: contrib/admin/templates/admin/submit_line.html:4 +msgid "Save as new" +msgstr "שמירה כחדש" -#: contrib/admin/templates/admin/base_site.html:4 -msgid "Django site admin" -msgstr "× ×™×”×•×œ ×תר Django" +#: contrib/admin/templates/admin/submit_line.html:5 +msgid "Save and add another" +msgstr "שמירה והוספת ×חר" -#: contrib/admin/templates/admin/base_site.html:7 -msgid "Django administration" -msgstr "× ×™×”×•×œ Django" +#: contrib/admin/templates/admin/submit_line.html:6 +msgid "Save and continue editing" +msgstr "שמירה והמשך עריכה" -#: contrib/admin/templates/admin/pagination.html:10 -msgid "Show all" -msgstr "הצג הכל" +#: contrib/admin/templates/admin/submit_line.html:7 +msgid "Save" +msgstr "שמירה" #: contrib/admin/templates/admin/404.html:4 #: contrib/admin/templates/admin/404.html:8 @@ -1392,91 +1948,126 @@ msgstr "דף ×œ× ×§×™×™×" msgid "We're sorry, but the requested page could not be found." msgstr "×× ×• מצטערי×, ×œ× × ×™×ª×Ÿ ×œ×ž×¦×•× ×ת הדף המבוקש." -#: contrib/admin/templates/admin/filter.html:2 +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" +msgstr "בצע" + +#: contrib/admin/templates/admin/search_form.html:10 #, python-format -msgid " By %(title)s " -msgstr " לפי %(title)s " +msgid "1 result" +msgstr "תוצ××” ×חת" -#: contrib/admin/templates/admin/delete_confirmation.html:14 +#: contrib/admin/templates/admin/search_form.html:10 #, python-format -msgid "" -"Deleting the %(object_name)s '%(object)s' would result in deleting related " -"objects, but your account doesn't have permission to delete the following " -"types of objects:" -msgstr "" -"מחיקת %(object_name)s '%(object)s' תמחק ××•×‘×™×™×§×˜×™× ×§×©×•×¨×™×, ×ך לחשבון שלך ×ין " -"הרש×ות למחיקת ××•×‘×™×™×§×˜×™× ×ž×”×¡×•×’ הב×:" +msgid "%(full_result_count)s total" +msgstr "%(full_result_count)s סה\"×›" -#: contrib/admin/templates/admin/delete_confirmation.html:21 +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" +msgstr "הצג הכל" + +#: contrib/admin/templates/admin/change_list.html:12 #, python-format -msgid "" -"Are you sure you want to delete the %(object_name)s \"%(object)s\"? All of " -"the following related items will be deleted:" -msgstr "" -"×”×× ×‘×¨×¦×•× ×š למחוק ×ת %(object_name)s·\"%(object)s\"? ×›×œ×”×¤×¨×™×˜×™× ×”×§×©×•×¨×™× ×”×‘××™× " -"יימחקו:" +msgid "Add %(name)s" +msgstr "הוספת %(name)s" -#: contrib/admin/templates/admin/delete_confirmation.html:26 -msgid "Yes, I'm sure" -msgstr "כן, ×× ×™ בטוח/×”" +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" +msgstr "× ×™×”×•×œ ×תר Django" -#: contrib/admin/templates/admin/invalid_setup.html:8 +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" +msgstr "× ×™×”×•×œ Django" + +#: contrib/admin/templates/admin/auth/user/add_form.html:6 msgid "" -"Something's wrong with your database installation. Make sure the appropriate " -"database tables have been created, and make sure the database is readable by " -"the appropriate user." -msgstr "" -"משהו שגוי ×‘×”×ª×§× ×ª בסיס ×”× ×ª×•× ×™× ×©×œ×š. × × ×œ×•×•×“× ×©× ×•×¦×¨×• טבל×ות בסיס ×”× ×ª×•× ×™× " -"המת×ימות, ובסיס ×”× ×ª×•× ×™× × ×™×ª×Ÿ לקרי××” על ידי המשתמש המת××™×." +"First, enter a username and password. Then, you'll be able to edit more user " +"options." +msgstr "ר×שית יש להזין ×©× ×ž×©×ª×ž×© וסיסמה. ל×חר מכן ×™×”×™×” ביכולתך לערוך ×פשרויות" +"× ×•×¡×¤×•×ª עבור המשתמש" -#: contrib/admin/templates/admin/index.html:17 -#, python-format -msgid "Models available in the %(name)s application." -msgstr "×ž×•×“×œ×™× ×–×ž×™× ×™× ×‘×™×™×©×•× %(name)s." +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" +msgstr "×©× ×ž×©×ª×ž×©" -#: contrib/admin/templates/admin/index.html:34 -msgid "Change" -msgstr "×©×™× ×•×™" +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +#: contrib/admin/templates/admin/auth/user/change_password.html:34 +msgid "Password" +msgstr "סיסמה" -#: contrib/admin/templates/admin/index.html:44 -msgid "You don't have permission to edit anything." -msgstr "×ין לך הרש×ות לעריכה" +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +#: contrib/admin/templates/admin/auth/user/change_password.html:39 +msgid "Password (again)" +msgstr "סיסמה (שוב)" -#: contrib/admin/templates/admin/index.html:52 -msgid "Recent Actions" -msgstr "פעולות ××—×¨×•× ×•×ª" +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +#: contrib/admin/templates/admin/auth/user/change_password.html:40 +msgid "Enter the same password as above, for verification." +msgstr "יש להזין ×ת ×ותה ×¡×™×¡× ×” שוב,ל×ימות." -#: contrib/admin/templates/admin/index.html:53 -msgid "My Actions" -msgstr "הפעולות שלי" +#: contrib/admin/templates/admin/auth/user/change_password.html:28 +#, python-format +msgid "Enter a new password for the user <strong>%(username)s</strong>." +msgstr "יש להזין סיסמה חדשה עבור המשתמש <strong>%(username)s</strong>." -#: contrib/admin/templates/admin/index.html:57 -msgid "None available" -msgstr "×œ× × ×ž×¦×ו" +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" +msgstr "×”× ×•×›×—×™." -#: contrib/admin/templates/admin/500.html:4 -msgid "Server error" -msgstr "שגי×ת שרת" +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" +msgstr "×©×™× ×•×™:" -#: contrib/admin/templates/admin/500.html:6 -msgid "Server error (500)" -msgstr "שגי×ת שרת (500)" +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" +msgstr "ת×ריך:" -#: contrib/admin/templates/admin/500.html:9 -msgid "Server Error <em>(500)</em>" -msgstr "שגי×ת שרת <em>(500)</em>" +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" +msgstr "שעה:" -#: contrib/admin/templates/admin/500.html:10 +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:6 +#: contrib/admin/templates/registration/password_reset_form.html:10 +#: contrib/admin/templates/registration/password_reset_done.html:4 +msgid "Password reset" +msgstr "×יפוס סיסמה" + +#: contrib/admin/templates/registration/password_reset_form.html:12 msgid "" -"There's been an error. It's been reported to the site administrators via e-" -"mail and should be fixed shortly. Thanks for your patience." +"Forgotten your password? Enter your e-mail address below, and we'll reset " +"your password and e-mail the new one to you." msgstr "" -"התרחשה שגי××”. ×”×™× ×“×•×•×—×” ×œ×ž× ×”×œ×™ ×”×תר בדו×\"ל ותתוקן בקרוב. תודה על ×¡×‘×œ× ×•×ª×š." +"שכחת ×ת סיסמתך ? × × ×œ×”×–×™×Ÿ ×ת כתובת הדו×\"ל מתחת, ×× ×• × ×פס×ת הסיסמה ×•× ×©×œ×— ×ת " +"החדשה ×ליך." -#: contrib/admin/templates/admin/change_list.html:11 -#, python-format -msgid "Add %(name)s" -msgstr "הוספת %(name)s" +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "E-mail address:" +msgstr "כתובת דו×\"ל:" + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "Reset my password" +msgstr "×פס ×ת סיסמתי" + +#: contrib/admin/templates/registration/logged_out.html:8 +msgid "Thanks for spending some quality time with the Web site today." +msgstr "תודה על בילוי זמן ×יכות ×¢× ×”×תר." + +#: contrib/admin/templates/registration/logged_out.html:10 +msgid "Log in again" +msgstr "התחבר/×™ שוב" + +#: contrib/admin/templates/registration/password_reset_done.html:6 +#: contrib/admin/templates/registration/password_reset_done.html:10 +msgid "Password reset successful" +msgstr "הסיסמה ×ופסה בהצלחה" + +#: contrib/admin/templates/registration/password_reset_done.html:12 +msgid "" +"We've e-mailed a new password to the e-mail address you submitted. You " +"should be receiving it shortly." +msgstr "" +"×©×œ×—× ×• ×ת הסיסמה החדשה לכתובת הדו×\"ל ×©×”×–× ×ª. ×”×™× ×מורה להתקבל תוך זמן קצר." #: contrib/admin/templates/registration/password_reset_email.html:2 msgid "You're receiving this e-mail because you requested a password reset" @@ -1509,13 +2100,22 @@ msgstr "תודה על השימוש ב×תר ×©×œ× ×•!" msgid "The %(site_name)s team" msgstr "צוות %(site_name)s" +#: contrib/admin/templates/registration/password_change_done.html:4 #: contrib/admin/templates/registration/password_change_form.html:4 #: contrib/admin/templates/registration/password_change_form.html:6 #: contrib/admin/templates/registration/password_change_form.html:10 -#: contrib/admin/templates/registration/password_change_done.html:4 msgid "Password change" msgstr "×©×™× ×•×™ סיסמה" +#: contrib/admin/templates/registration/password_change_done.html:6 +#: contrib/admin/templates/registration/password_change_done.html:10 +msgid "Password change successful" +msgstr "הסיסמה ×©×•× ×ª×” בהצלחה" + +#: contrib/admin/templates/registration/password_change_done.html:12 +msgid "Your password was changed." +msgstr "סיסמתך ×©×•× ×ª×”." + #: contrib/admin/templates/registration/password_change_form.html:12 msgid "" "Please enter your old password, for security's sake, and then enter your new " @@ -1540,378 +2140,620 @@ msgstr "×ימות סיסמה:" msgid "Change my password" msgstr "×©× ×” ×ת סיסמתי" -#: contrib/admin/templates/registration/password_change_done.html:6 -#: contrib/admin/templates/registration/password_change_done.html:10 -msgid "Password change successful" -msgstr "הסיסמה ×©×•× ×ª×” בהצלחה" +#: contrib/localflavor/it/forms.py:16 +msgid "Enter a valid zip code." +msgstr "יש להזין מיקוד חוקי." -#: contrib/admin/templates/registration/password_change_done.html:12 -msgid "Your password was changed." -msgstr "סיסמתך ×©×•× ×ª×”." +#: contrib/localflavor/it/forms.py:41 +msgid "Enter a valid Social Security number." +msgstr "יש להזין מספר ביטוח ל×ומי חוקי." -#: contrib/admin/templates/registration/logged_out.html:8 -msgid "Thanks for spending some quality time with the Web site today." -msgstr "תודה על בילוי זמן ×יכות ×¢× ×”×תר." +#: contrib/localflavor/it/forms.py:68 +msgid "Enter a valid VAT number." +msgstr "יש להזין מספר מעמ חוקי" -#: contrib/admin/templates/registration/logged_out.html:10 -msgid "Log in again" -msgstr "התחבר/×™ שוב" +#: contrib/localflavor/us/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "יש להזין מיקוד חוקי בתחביר XXXXX ×ו XXXXX-XXXX." -#: contrib/admin/templates/registration/password_reset_done.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:6 -#: contrib/admin/templates/registration/password_reset_form.html:10 -msgid "Password reset" -msgstr "×יפוס סיסמה" +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "יש להזין מספר ביטוח ל×ומי ×מריק××™ בתחביר XXX-XX-XXXX." -#: contrib/admin/templates/registration/password_reset_done.html:6 -#: contrib/admin/templates/registration/password_reset_done.html:10 -msgid "Password reset successful" -msgstr "הסיסמה ×ופסה בהצלחה" +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/fi/forms.py:14 +#: contrib/localflavor/de/forms.py:16 +msgid "Enter a zip code in the format XXXXX." +msgstr "יש להזין מיקוד בתחביר XXXXX." -#: contrib/admin/templates/registration/password_reset_done.html:12 +#: contrib/localflavor/ch/forms.py:18 contrib/localflavor/no/forms.py:15 +msgid "Enter a zip code in the format XXXX." +msgstr "יש להזין מיקוד בתחביר XXXX." + +#: contrib/localflavor/ch/forms.py:90 msgid "" -"We've e-mailed a new password to the e-mail address you submitted. You " -"should be receiving it shortly." +"Enter a valid Swiss identity or passport card number in X1234567<0 or " +"1234567890 format." msgstr "" -"×©×œ×—× ×• ×ת הסיסמה החדשה לכתובת הדו×\"ל ×©×”×–× ×ª. ×”×™× ×מורה להתקבל תוך זמן קצר." +"יש להזין מספר זיהוי ×ו דרכון שוויצרי בתחביר X1234567<0 ×ו " +"1234567890." -#: contrib/admin/templates/registration/password_reset_form.html:12 -msgid "" -"Forgotten your password? Enter your e-mail address below, and we'll reset " -"your password and e-mail the new one to you." +#: contrib/localflavor/ch/ch_states.py:5 +msgid "Aargau" msgstr "" -"שכחת ×ת סיסמתך ? × × ×œ×”×–×™×Ÿ ×ת כתובת הדו×\"ל מתחת, ×× ×• × ×פס×ת הסיסמה ×•× ×©×œ×— ×ת " -"החדשה ×ליך." -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "E-mail address:" -msgstr "כתובת דו×\"ל:" +#: contrib/localflavor/ch/ch_states.py:6 +msgid "Appenzell Innerrhoden" +msgstr "" -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "Reset my password" -msgstr "×פס ×ת סיסמתי" +#: contrib/localflavor/ch/ch_states.py:7 +msgid "Appenzell Ausserrhoden" +msgstr "" -#: contrib/admin/views/doc.py:279 contrib/admin/views/doc.py:289 -#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:297 -#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:300 -msgid "Integer" -msgstr "מספר של×" +#: contrib/localflavor/ch/ch_states.py:8 +msgid "Basel-Stadt" +msgstr "" -#: contrib/admin/views/doc.py:280 -msgid "Boolean (Either True or False)" -msgstr "בולי×× ×™ (×מת ×ו שקר)" +#: contrib/localflavor/ch/ch_states.py:9 +msgid "Basel-Land" +msgstr "" -#: contrib/admin/views/doc.py:281 contrib/admin/views/doc.py:299 -#, python-format -msgid "String (up to %(maxlength)s)" -msgstr "מחרוזת (עד %(maxlength)s תווי×)" +#: contrib/localflavor/ch/ch_states.py:10 +msgid "Berne" +msgstr "ברן" -#: contrib/admin/views/doc.py:282 -msgid "Comma-separated integers" -msgstr "×ž×¡×¤×¨×™× ×©×œ×ž×™× ×ž×•×¤×¨×“×™× ×‘×¤×¡×™×§×™×" +#: contrib/localflavor/ch/ch_states.py:11 +msgid "Fribourg" +msgstr "" -#: contrib/admin/views/doc.py:283 -msgid "Date (without time)" -msgstr "ת×ריך (×œ×œ× ×©×¢×”)" +#: contrib/localflavor/ch/ch_states.py:12 +msgid "Geneva" +msgstr "×’'× ×‘×”" -#: contrib/admin/views/doc.py:284 -msgid "Date (with time)" -msgstr "ת×ריך (כולל שעה)" +#: contrib/localflavor/ch/ch_states.py:13 +msgid "Glarus" +msgstr "גלרוס" -#: contrib/admin/views/doc.py:285 -msgid "E-mail address" -msgstr "כתובת דו×\"ל" +#: contrib/localflavor/ch/ch_states.py:14 +msgid "Graubuenden" +msgstr "" -#: contrib/admin/views/doc.py:286 contrib/admin/views/doc.py:287 -#: contrib/admin/views/doc.py:290 -msgid "File path" -msgstr "× ×ª×™×‘ קובץ" +#: contrib/localflavor/ch/ch_states.py:15 +msgid "Jura" +msgstr "" -#: contrib/admin/views/doc.py:288 -msgid "Decimal number" -msgstr "מספר ×¢×©×¨×•× ×™" +#: contrib/localflavor/ch/ch_states.py:16 +msgid "Lucerne" +msgstr "לוצרן" -#: contrib/admin/views/doc.py:294 -msgid "Boolean (Either True, False or None)" -msgstr "בולי×× ×™ (×מת, שקר ×ו כלו×)" +#: contrib/localflavor/ch/ch_states.py:17 +msgid "Neuchatel" +msgstr "" -#: contrib/admin/views/doc.py:295 -msgid "Relation to parent model" -msgstr "יחס למודל ×ב" +#: contrib/localflavor/ch/ch_states.py:18 +msgid "Nidwalden" +msgstr "" -#: contrib/admin/views/doc.py:296 -msgid "Phone number" -msgstr "מספר טלפון" +#: contrib/localflavor/ch/ch_states.py:19 +msgid "Obwalden" +msgstr "" -#: contrib/admin/views/doc.py:301 -msgid "Text" -msgstr "טקסט" +#: contrib/localflavor/ch/ch_states.py:20 +msgid "Schaffhausen" +msgstr "" -#: contrib/admin/views/doc.py:302 -msgid "Time" -msgstr "זמן" +#: contrib/localflavor/ch/ch_states.py:21 +msgid "Schwyz" +msgstr "" -#: contrib/admin/views/doc.py:303 contrib/flatpages/models.py:7 -msgid "URL" -msgstr "URL" +#: contrib/localflavor/ch/ch_states.py:22 +msgid "Solothurn" +msgstr "" -#: contrib/admin/views/doc.py:304 -msgid "U.S. state (two uppercase letters)" -msgstr "×ž×“×™× ×” ב×רה\"ב (שתי ×ותיות גדולות)" +#: contrib/localflavor/ch/ch_states.py:23 +msgid "St. Gallen" +msgstr "" -#: contrib/admin/views/doc.py:305 -msgid "XML text" -msgstr "טקסט XML" +#: contrib/localflavor/ch/ch_states.py:24 +msgid "Thurgau" +msgstr "Thurgau" -#: contrib/admin/views/main.py:226 -msgid "Site administration" -msgstr "× ×™×”×•×œ ×תר" +#: contrib/localflavor/ch/ch_states.py:25 +msgid "Ticino" +msgstr "" -#: contrib/admin/views/main.py:260 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." -msgstr "הוספת %(name)s \"%(obj)s\" בוצעה בהצלחה." +#: contrib/localflavor/ch/ch_states.py:26 +msgid "Uri" +msgstr "" -#: contrib/admin/views/main.py:264 contrib/admin/views/main.py:348 -msgid "You may edit it again below." -msgstr "× ×™×ª×Ÿ לערוך שוב מתחת" +#: contrib/localflavor/ch/ch_states.py:27 +msgid "Valais" +msgstr "" -#: contrib/admin/views/main.py:272 contrib/admin/views/main.py:357 -#, python-format -msgid "You may add another %s below." -msgstr "× ×™×ª×Ÿ להוסיף %s × ×•×¡×£ מתחת." +#: contrib/localflavor/ch/ch_states.py:28 +msgid "Vaud" +msgstr "" -#: contrib/admin/views/main.py:290 -#, python-format -msgid "Add %s" -msgstr "הוספת %s" +#: contrib/localflavor/ch/ch_states.py:29 +msgid "Zug" +msgstr "צוג" -#: contrib/admin/views/main.py:336 -#, python-format -msgid "Added %s." -msgstr "%s התווסף." +#: contrib/localflavor/ch/ch_states.py:30 +msgid "Zurich" +msgstr "" -#: contrib/admin/views/main.py:336 contrib/admin/views/main.py:338 -#: contrib/admin/views/main.py:340 -msgid "and" -msgstr "ו" +#: contrib/localflavor/no/forms.py:36 +msgid "Enter a valid Norwegian social security number." +msgstr "יש להזין מספר ביטוח ל×ומי × ×•×¨×‘×’×™ חוקי." -#: contrib/admin/views/main.py:338 -#, python-format -msgid "Changed %s." -msgstr "%s ×©×•× ×”." +#: contrib/localflavor/br/forms.py:18 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "יש להזין מיקוד בתחביר XXXXX-XXX." -#: contrib/admin/views/main.py:340 -#, python-format -msgid "Deleted %s." -msgstr "%s × ×ž×—×§." +#: contrib/localflavor/br/forms.py:30 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "מספרי טלפון ×—×™×™×‘×™× ×œ×”×™×•×ª בתחביר XX-XXXX-XXXX." -#: contrib/admin/views/main.py:343 -msgid "No fields changed." -msgstr "××£ שדה ×œ× ×”×©×ª× ×”." +#: contrib/localflavor/br/forms.py:72 +msgid "This field requires only numbers." +msgstr "יש להזין רק ספרות בשדה ×–×”." -#: contrib/admin/views/main.py:346 -#, python-format -msgid "The %(name)s \"%(obj)s\" was changed successfully." -msgstr "×©×™× ×•×™ %(name)s \"%(obj)s\" בוצע בהצלחה." +#: contrib/localflavor/br/forms.py:74 +msgid "This field requires at most 11 digits or 14 characters." +msgstr "שדה ×–×” דורש 11 ×ו 14 ספרות לכל היותר." -#: contrib/admin/views/main.py:354 -#, python-format -msgid "" -"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." -msgstr "הוספת %(name)s \"%(obj)s\" בוצעה בהצלחה. × ×™×ª×Ÿ לערוך ×ותו שוב מתחת." +#: contrib/localflavor/br/forms.py:84 +msgid "Invalid CPF number." +msgstr "מספר CPF ×œ× ×—×•×§×™" -#: contrib/admin/views/main.py:392 -#, python-format -msgid "Change %s" -msgstr "×©×™× ×•×™ %s" +#: contrib/localflavor/br/forms.py:106 +msgid "This field requires at least 14 digits" +msgstr "שדה ×–×” דורש לפחות 14 ספרות." -#: contrib/admin/views/main.py:470 -#, python-format -msgid "One or more %(fieldname)s in %(name)s: %(obj)s" -msgstr "×חד ×ו יותר %(fieldname)s ב%(name)s: %(obj)s" +#: contrib/localflavor/br/forms.py:116 +msgid "Invalid CNPJ number." +msgstr "מספר CNPJ ×œ× ×—×•×§×™" -#: contrib/admin/views/main.py:475 -#, python-format -msgid "One or more %(fieldname)s in %(name)s:" -msgstr "×חד ×ו יותר %(fieldname)s ב%(name)s:" +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "יש להזין קוד דו×ר. × ×“×¨×© רווח בין ×©× ×™ חלקי הקוד." -#: contrib/admin/views/main.py:508 -#, python-format -msgid "The %(name)s \"%(obj)s\" was deleted successfully." -msgstr "מחיקת %(name)s \"%(obj)s\" בוצעה בהצלחה." +#: contrib/localflavor/is_/forms.py:16 +msgid "" +"Enter a valid Icelandic identification number. The format is XXXXXX-XXXX." +msgstr "" +"יש להזין מספר זיהוי ××™×¡×œ× ×“×™ חוקי. התחביר ×”×•× XXXXXX-XXXX." -#: contrib/admin/views/main.py:511 -msgid "Are you sure?" -msgstr "×”×× ×ת/×” בטוח/×” ?" +#: contrib/localflavor/is_/forms.py:30 +msgid "The Icelandic identification number is not valid." +msgstr "" -#: contrib/admin/views/main.py:533 -#, python-format -msgid "Change history: %s" -msgstr "היסטוריית ×©×™× ×•×™: %s" +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:45 +msgid "Enter a valid Finnish social security number." +msgstr "יש להזין מספר ביטוח ל×ומי ×¤×™× ×™ חוקי." -#: contrib/admin/views/main.py:567 -#, python-format -msgid "Select %s" -msgstr "בחירת %s" +#: contrib/localflavor/cl/forms.py:21 +msgid "Enter valid a Chilean RUT. The format is XX.XXX.XXX-X." +msgstr "יש להזין RUT צ'ילי×× ×™ חוקי. התחביר ×”×•× XX.XXX.XXX-X." -#: contrib/admin/views/main.py:567 -#, python-format -msgid "Select %s to change" -msgstr "בחירת %s ×œ×©×™× ×•×™" +#: contrib/localflavor/cl/forms.py:26 +msgid "Enter valid a Chilean RUT" +msgstr "יש להזין RUT צ'ילי×× ×™ חוקי." -#: contrib/admin/views/main.py:743 -msgid "Database error" -msgstr "שגי×ת בסיס × ×ª×•× ×™×" +#: contrib/localflavor/au/forms.py:18 +msgid "Enter a 4 digit post code." +msgstr "יש להזין קוד דו×ר בן 4 ספרות." -#: contrib/admin/views/decorators.py:9 contrib/auth/forms.py:36 -#: contrib/auth/forms.py:43 +#: contrib/localflavor/de/forms.py:60 msgid "" -"Please enter a correct username and password. Note that both fields are case-" -"sensitive." +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." msgstr "" -"× × ×œ×”×–×™×Ÿ ×©× ×ž×©×ª×ž×© וסיסמה × ×›×•× ×™×. ×‘×©× ×™ השדות גודל ×”×ותיות ×”×× ×’×œ×™×•×ª ×ž×©× ×”." +"יש להזין מספר זיהוי ×’×¨×ž× ×™ חוקי בתחביר XXXXXXXXXXX-XXXXXXX-XXXXXXX-X." -#: contrib/admin/views/decorators.py:61 -msgid "" -"Please log in again, because your session has expired. Don't worry: Your " -"submission has been saved." +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" msgstr "" -"× × ×œ×”×ª×—×‘×¨ שוב, מ×חר ופג תוקף ההתחברות ×”× ×•×›×—×™×ª. ×ל ד××’×”: המידע ששלחת × ×©×ž×¨." -#: contrib/admin/views/decorators.py:68 -msgid "" -"Looks like your browser isn't configured to accept cookies. Please enable " -"cookies, reload this page, and try again." +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "ב×ווריה" + +#: contrib/localflavor/de/de_states.py:7 +msgid "Berlin" +msgstr "ברלין" + +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" msgstr "" -"× ×¨××” שהדפדפן שלך ××™× ×• מוגדר לקבל עוגיות. × × ×œ×פשר עוגיות, לטעון מחדש ×ת הדף " -"×•×œ× ×¡×•×ª שוב." -#: contrib/admin/views/decorators.py:82 -msgid "Usernames cannot contain the '@' character." -msgstr "×©× ×ž×©×ª×ž×© ××™× ×• יכול להכיל ×ת התו '@'." +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "ברמן" -#: contrib/admin/views/decorators.py:84 -#, python-format -msgid "Your e-mail address is not your username. Try '%s' instead." -msgstr "כתובת הדו×\"ל שלך ××™× ×” ×©× ×”×ž×©×ª×ž×© שלך. × ×¡×”/×™ '%s' במקו×." +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "המבורג" -#: contrib/redirects/models.py:7 -msgid "redirect from" -msgstr "×”×¤× ×™×” מ" +#: contrib/localflavor/de/de_states.py:11 +msgid "Hessen" +msgstr "הסה" -#: contrib/redirects/models.py:8 -msgid "" -"This should be an absolute path, excluding the domain name. Example: '/" -"events/search/'." -msgstr "×–×” ×מור להיות × ×ª×™×‘ מל×, ×œ×œ× ×©× ×”×ž×ª×—×. לדוגמ×: '‎/events/search'." +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "" -#: contrib/redirects/models.py:9 -msgid "redirect to" -msgstr "×”×¤× ×™×” ×ל" +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "" -#: contrib/redirects/models.py:10 -msgid "" -"This can be either an absolute path (as above) or a full URL starting with " -"'http://'." -msgstr "יכול להיות × ×ª×™×‘ ×ž×œ× (×›× \"ל) ×ו URL ×ž×œ× ×”×ž×ª×—×™×œ ב'http://'." +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "" -#: contrib/redirects/models.py:13 -msgid "redirect" -msgstr "×”×¤× ×™×”" +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "" -#: contrib/redirects/models.py:14 -msgid "redirects" -msgstr "×”×¤× ×™×•×ª" +#: contrib/localflavor/de/de_states.py:16 +msgid "Saarland" +msgstr "" + +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "" + +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "" + +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "" + +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "יש להזין קוד דו×ר בתחביר XXXXXXX ×ו XXX-XXXX." + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "Iwate" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "טוקיו" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "קיוטו" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "×וסקה" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "Shimane" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "Ehime" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "× ×’×¡×§×™" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "××•×§×™× ×ווה" + +#: contrib/sessions/models.py:68 +msgid "session key" +msgstr "מפתח התחברות (session key)" + +#: contrib/sessions/models.py:69 +msgid "session data" +msgstr "מידע התחברות (session data)" + +#: contrib/sessions/models.py:70 +msgid "expire date" +msgstr "ת×ריך פג תוקף" -#: contrib/auth/forms.py:30 +#: contrib/sessions/models.py:74 +msgid "session" +msgstr "התחברות" + +#: contrib/sessions/models.py:75 +msgid "sessions" +msgstr "התחברויות" + +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 +msgid "The two password fields didn't match." +msgstr "×©× ×™ שדות הסיסמה ××™× × ×–×”×™×." + +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." +msgstr "משתמש ×¢× ×©× ×ž×©×ª×ž×© ×–×” ×§×™×™× ×›×‘×¨" + +#: contrib/auth/forms.py:53 msgid "" "Your Web browser doesn't appear to have cookies enabled. Cookies are " "required for logging in." msgstr "× ×¨××” שעוגיות ×œ× ×ž×ופשרות בדפדפן שלך.הן × ×“×¨×©×•×ª כדי להתחבר." -#: contrib/auth/forms.py:45 +#: contrib/auth/forms.py:62 msgid "This account is inactive." msgstr "חשבון ×–×” ××™× ×• פעיל." -#: contrib/auth/views.py:39 -msgid "Logged out" -msgstr "יצ×ת מהמערכת" +#: contrib/auth/forms.py:85 +msgid "" +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "כתובת דו×ר ××œ×§×˜×¨×•× ×™ זו ××™× ×” משוייכת למשתמש. בטוח ×©× ×¨×©×ž×ª ?" + +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." +msgstr "×©× ×™ שדות 'הסיסמה החדשה' ××™× × ×–×”×™×." -#: contrib/auth/models.py:13 contrib/auth/models.py:26 +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." +msgstr "סיסמתך ×”×™×©× ×” ×”×•×–× ×” בצורה השגויה. × × ×œ×”×–×™× ×” שוב." + +#: contrib/auth/models.py:44 contrib/auth/models.py:64 msgid "name" msgstr "ש×" -#: contrib/auth/models.py:15 +#: contrib/auth/models.py:46 msgid "codename" msgstr "×©× ×§×•×“" -#: contrib/auth/models.py:17 +#: contrib/auth/models.py:49 msgid "permission" msgstr "הרש××”" -#: contrib/auth/models.py:18 contrib/auth/models.py:27 +#: contrib/auth/models.py:50 contrib/auth/models.py:65 msgid "permissions" msgstr "הרש×ות" -#: contrib/auth/models.py:29 +#: contrib/auth/models.py:68 msgid "group" msgstr "קבוצה" -#: contrib/auth/models.py:30 contrib/auth/models.py:65 +#: contrib/auth/models.py:69 contrib/auth/models.py:109 msgid "groups" msgstr "קבוצות" -#: contrib/auth/models.py:55 +#: contrib/auth/models.py:99 msgid "username" msgstr "×©× ×ž×©×ª×ž×©" -#: contrib/auth/models.py:56 +#: contrib/auth/models.py:99 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." +msgstr "דורש 30 ×ª×•×•×™× ×ו פחות. ×ª×•×•×™× ×לפ×× ×•×ž×¨×™×™× ×‘×œ×‘×“ (×ותיות, ספרות ×•×§×•×•×™× ×ª×—×ª×•× ×™×)." + +#: contrib/auth/models.py:100 msgid "first name" msgstr "×©× ×¤×¨×˜×™" -#: contrib/auth/models.py:57 +#: contrib/auth/models.py:101 msgid "last name" msgstr "×©× ×ž×©×¤×—×”" -#: contrib/auth/models.py:58 +#: contrib/auth/models.py:102 msgid "e-mail address" msgstr "כתובת דו×\"ל" -#: contrib/auth/models.py:59 +#: contrib/auth/models.py:103 msgid "password" msgstr "סיסמה" -#: contrib/auth/models.py:59 -msgid "Use '[algo]$[salt]$[hexdigest]'" -msgstr "השתמש ב '[algo]$[salt]$[hexdigest]'" +#: contrib/auth/models.py:103 +msgid "" +"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " +"password form</a>." +msgstr "" +"יש להזין '[algo]$[salt]$[hexdigest]' ×ו להשתמש ב<a href=\"password/\">טופס " +"×©×™× ×•×™ הסיסמה</a>." -#: contrib/auth/models.py:60 +#: contrib/auth/models.py:104 msgid "staff status" msgstr "סטטוס ×יש צוות" -#: contrib/auth/models.py:60 +#: contrib/auth/models.py:104 msgid "Designates whether the user can log into this admin site." msgstr "מציין ×”×× ×”×ž×©×ª×ž×© יכול להתחבר ל×תר ×”× ×™×”×•×œ." -#: contrib/auth/models.py:61 +#: contrib/auth/models.py:105 msgid "active" msgstr "פעיל" -#: contrib/auth/models.py:62 +#: contrib/auth/models.py:105 +msgid "" +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." +msgstr "מציין ×”×× ×”×ž×©×ª×ž×© יכול להתחבר ל×תר ×”× ×™×”×•×œ. יש לבטל בחירה זו" +"×‘×ž×§×•× ×œ×ž×—×•×§ ×—×©×‘×•× ×•×ª משתמשי×." + +#: contrib/auth/models.py:106 msgid "superuser status" msgstr "סטטוס משתמש על" -#: contrib/auth/models.py:63 +#: contrib/auth/models.py:106 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "מציין שלמשתמש ×–×” יש ×ת כל ההרש×ות ×œ×œ× ×”×¦×•×¨×š המפורש ×‘×”×¢× ×§×ª×Ÿ." + +#: contrib/auth/models.py:107 msgid "last login" msgstr "×›× ×™×¡×” ××—×¨×•× ×”" -#: contrib/auth/models.py:64 +#: contrib/auth/models.py:108 msgid "date joined" msgstr "ת×ריך הצטרפות" -#: contrib/auth/models.py:66 +#: contrib/auth/models.py:110 msgid "" "In addition to the permissions manually assigned, this user will also get " "all permissions granted to each group he/she is in." @@ -1919,38 +2761,46 @@ msgstr "" "×‘× ×•×¡×£ לכל ההרש×ות שהוקצו ×™×“× ×™×ª, ×™×•×¢× ×§×• למשתמש ×’× ×›×œ ההרש×ות של כל קבוצה " "המשוייכת ×ליו." -#: contrib/auth/models.py:67 +#: contrib/auth/models.py:111 msgid "user permissions" msgstr "הרש×ות משתמש" -#: contrib/auth/models.py:70 +#: contrib/auth/models.py:115 msgid "user" msgstr "משתמש" -#: contrib/auth/models.py:71 +#: contrib/auth/models.py:116 msgid "users" msgstr "משתמשי×" -#: contrib/auth/models.py:76 +#: contrib/auth/models.py:122 msgid "Personal info" msgstr "מידע ×ישי" -#: contrib/auth/models.py:77 +#: contrib/auth/models.py:123 msgid "Permissions" msgstr "הרש×ות" -#: contrib/auth/models.py:78 +#: contrib/auth/models.py:124 msgid "Important dates" msgstr "ת××¨×™×›×™× ×—×©×•×‘×™×" -#: contrib/auth/models.py:79 +#: contrib/auth/models.py:125 msgid "Groups" msgstr "קבוצות" -#: contrib/auth/models.py:219 +#: contrib/auth/models.py:269 msgid "message" msgstr "הודעה" +#: contrib/auth/models.py:282 +msgid "AnonymousUser" +msgstr "משתמש ×× ×•× ×™×ž×™" + +#: contrib/auth/views.py:40 +msgid "Logged out" +msgstr "יצ×ת מהמערכת" + #: contrib/flatpages/models.py:8 msgid "" "Example: '/about/contact/'. Make sure to have leading and trailing slashes." @@ -1975,11 +2825,11 @@ msgstr "×©× ×ª×‘× ×™×ª" #: contrib/flatpages/models.py:13 msgid "" -"Example: 'flatpages/contact_page'. If this isn't provided, the system will " -"use 'flatpages/default'." +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." msgstr "" -"דוגמ×: 'flatpages/contact_page'. ×”×× ××™× ×• ×§×™×™×, המערכתתשתמש ב 'flatpages/" -"default'." +"דוגמ×: 'flatpages/contact_page.html'. ×× ×–×” ×œ× ×¦×•×™×™×Ÿ, המערכת " +"תשתמש ב-'flatpages/default.html'." #: contrib/flatpages/models.py:14 msgid "registration required" @@ -1997,3 +2847,43 @@ msgstr "דף פשוט" msgid "flat pages" msgstr "×“×¤×™× ×¤×©×•×˜×™×" +#: contrib/redirects/models.py:7 +msgid "redirect from" +msgstr "×”×¤× ×™×” מ" + +#: contrib/redirects/models.py:8 +msgid "" +"This should be an absolute path, excluding the domain name. Example: '/" +"events/search/'." +msgstr "×–×” ×מור להיות × ×ª×™×‘ מל×, ×œ×œ× ×©× ×”×ž×ª×—×. לדוגמ×: '‎/events/search'." + +#: contrib/redirects/models.py:9 +msgid "redirect to" +msgstr "×”×¤× ×™×” ×ל" + +#: contrib/redirects/models.py:10 +msgid "" +"This can be either an absolute path (as above) or a full URL starting with " +"'http://'." +msgstr "יכול להיות × ×ª×™×‘ ×ž×œ× (×›× \"ל) ×ו URL ×ž×œ× ×”×ž×ª×—×™×œ ב'http://'." + +#: contrib/redirects/models.py:13 +msgid "redirect" +msgstr "×”×¤× ×™×”" + +#: contrib/redirects/models.py:14 +msgid "redirects" +msgstr "×”×¤× ×™×•×ª" + +#: contrib/contenttypes/models.py:36 +msgid "python model class name" +msgstr "×©× ×”-class של מודל פייתון" + +#: contrib/contenttypes/models.py:39 +msgid "content type" +msgstr "סוג תוכן" + +#: contrib/contenttypes/models.py:40 +msgid "content types" +msgstr "סוגי תוכן" + diff --git a/django/conf/locale/he/LC_MESSAGES/djangojs.mo b/django/conf/locale/he/LC_MESSAGES/djangojs.mo Binary files differindex 2539598770..09ecd64d87 100644 --- a/django/conf/locale/he/LC_MESSAGES/djangojs.mo +++ b/django/conf/locale/he/LC_MESSAGES/djangojs.mo diff --git a/django/conf/locale/he/LC_MESSAGES/djangojs.po b/django/conf/locale/he/LC_MESSAGES/djangojs.po index 75b53dd8db..0f94f2ef09 100644 --- a/django/conf/locale/he/LC_MESSAGES/djangojs.po +++ b/django/conf/locale/he/LC_MESSAGES/djangojs.po @@ -8,26 +8,14 @@ msgid "" msgstr "" "Project-Id-Version: djangojs 1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-03-30 13:28+0200\n" -"PO-Revision-Date: 2006-03-30 13:35+0200\n" +"POT-Creation-Date: 2007-05-06 13:08+0300\n" +"PO-Revision-Date: 2007-05-06 13:08+0300\n" "Last-Translator: Meir Kriheli <meir@mksoft.co.il>\n" "Language-Team: Hebrew\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit" -#: contrib/admin/media/js/dateparse.js:32 -#: contrib/admin/media/js/calendar.js:24 -msgid "" -"January February March April May June July August September October November " -"December" -msgstr "" -"×™× ×•×ר פברו×ר מרץ ×פריל מ××™ ×™×•× ×™ יולי ×וגוסט ספטמבר ×וקטובר × ×•×‘×ž×‘×¨ דצמבר" - -#: contrib/admin/media/js/dateparse.js:33 -msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" -msgstr "ר×שון ×©× ×™ שלישי רביעי חמישי שישי שבת" - #: contrib/admin/media/js/SelectFilter2.js:33 #, perl-format msgid "Available %s" @@ -58,54 +46,75 @@ msgstr "יש לסמן ×ת ההרש×ות המבוקשות וללחוץ על " msgid "Clear all" msgstr "×יפוס הכל" +#: contrib/admin/media/js/calendar.js:24 +#: contrib/admin/media/js/dateparse.js:32 +msgid "" +"January February March April May June July August September October November " +"December" +msgstr "" +"×™× ×•×ר פברו×ר מרץ ×פריל מ××™ ×™×•× ×™ יולי ×וגוסט ספטמבר ×וקטובר × ×•×‘×ž×‘×¨ דצמבר" + #: contrib/admin/media/js/calendar.js:25 msgid "S M T W T F S" msgstr "ר ש ש ר ×— ש ש" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:45 -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:80 +#: contrib/admin/media/js/dateparse.js:33 +msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" +msgstr "ר×שון ×©× ×™ שלישי רביעי חמישי שישי שבת" + +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:34 +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:72 +msgid "Show" +msgstr "הצג" + +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:63 +msgid "Hide" +msgstr "הסתר" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:47 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 msgid "Now" msgstr "כעת" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:48 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:51 msgid "Clock" msgstr "שעון" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:77 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:78 msgid "Choose a time" msgstr "בחירת שעה" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 msgid "Midnight" msgstr "חצות" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 msgid "6 a.m." msgstr "6 בבוקר" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:84 msgid "Noon" msgstr "צהריי×" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:87 -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:168 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:88 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:183 msgid "Cancel" msgstr "ביטול" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:111 -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:162 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:128 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:177 msgid "Today" msgstr "היו×" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:114 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:132 msgid "Calendar" msgstr "לוח ×©× ×”" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:160 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:175 msgid "Yesterday" msgstr "×תמול" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:164 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:179 msgid "Tomorrow" msgstr "מחר" diff --git a/django/conf/locale/it/LC_MESSAGES/django.mo b/django/conf/locale/it/LC_MESSAGES/django.mo Binary files differindex 821828383e..e0d5e0442d 100644 --- a/django/conf/locale/it/LC_MESSAGES/django.mo +++ b/django/conf/locale/it/LC_MESSAGES/django.mo diff --git a/django/conf/locale/it/LC_MESSAGES/django.po b/django/conf/locale/it/LC_MESSAGES/django.po index 66a4e09f88..2c9060a076 100644 --- a/django/conf/locale/it/LC_MESSAGES/django.po +++ b/django/conf/locale/it/LC_MESSAGES/django.po @@ -3,88 +3,19 @@ # Copyright (C) 2006 the Lawrence Journal-World # This file is distributed under the same license as the Django package. # -# Carlo C8E Miron <carlo.miron AT gmail.com>, 2006. -# Nicola 'tekNico' Larosa <nico AT tekNico.net>, 2007. -# Nicola Larosa <nico@tekNico.net>, 2007. msgid "" msgstr "" "Project-Id-Version: django\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-02-26 20:44+0100\n" +"POT-Creation-Date: 2007-04-11 17:39+0200\n" "PO-Revision-Date: 2007-03-14 19:29+0100\n" -"Last-Translator: Nicola Larosa <nico@tekNico.net>\n" +"Last-Translator: Flavio Curella <flavio.curella@gmail.com>\n" +"Language-Team: Italiano\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.2\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"Language-Team: Italiano\n" - -#: db/models/manipulators.py:307 -#, python-format -msgid "%(object)s with this %(type)s already exists for the given %(field)s." -msgstr "%(object)s·con questo·%(type)s·esiste già per questo·%(field)s." - -#: db/models/manipulators.py:308 contrib/admin/views/main.py:335 -#: contrib/admin/views/main.py:337 contrib/admin/views/main.py:339 -msgid "and" -msgstr "e" - -#: db/models/fields/related.py:53 -#, python-format -msgid "Please enter a valid %s." -msgstr "Inserire un %s valido." - -#: db/models/fields/related.py:642 -msgid "Separate multiple IDs with commas." -msgstr "Separare ID multipli con virgole." - -#: db/models/fields/related.py:644 -msgid "Hold down \"Control\", or \"Command\" on a Mac, to select more than one." -msgstr "Tenere premuto \"Control\", o \"Command\" su Mac, per selezionarne più di uno." - -#: db/models/fields/related.py:691 -#, python-format -msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." -msgid_plural "Please enter valid %(self)s IDs. The values %(value)r are invalid." -msgstr[0] "Inserire un ID validi per %(self)s. Il valore %(value)r non è valido." -msgstr[1] "Inserire un ID validi per %(self)s. I valori %(value)r non sono validi." - -#: db/models/fields/__init__.py:42 -#, python-format -msgid "%(optname)s with this %(fieldname)s already exists." -msgstr "%(optname)s·con questo·%(fieldname)s·esiste già ." - -#: db/models/fields/__init__.py:116 db/models/fields/__init__.py:273 -#: db/models/fields/__init__.py:609 db/models/fields/__init__.py:620 -#: oldforms/__init__.py:352 newforms/fields.py:78 newforms/fields.py:374 -#: newforms/fields.py:450 newforms/fields.py:461 newforms/models.py:177 -msgid "This field is required." -msgstr "Questo campo è obbligatorio." - -#: db/models/fields/__init__.py:366 -msgid "This value must be an integer." -msgstr "Questo valore deve essere un intero." - -#: db/models/fields/__init__.py:401 -msgid "This value must be either True or False." -msgstr "Questo valore deve essere True o False." - -#: db/models/fields/__init__.py:422 -msgid "This field cannot be null." -msgstr "Questo campo non può essere nullo." - -#: db/models/fields/__init__.py:456 core/validators.py:147 -msgid "Enter a valid date in YYYY-MM-DD format." -msgstr "Inserire una data valida in formato AAAA-MM-GG." - -#: db/models/fields/__init__.py:525 core/validators.py:156 -msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." -msgstr "Inserire una data/ora valida in formato AAAA-MM-GG OO:MM." - -#: db/models/fields/__init__.py:629 -msgid "Enter a valid filename." -msgstr "Inserire un nome file valido." #: conf/global_settings.py:39 msgid "Arabic" @@ -163,568 +94,90 @@ msgid "Japanese" msgstr "Giapponese" #: conf/global_settings.py:58 +#, fuzzy +msgid "Korean" +msgstr "Norvegese" + +#: conf/global_settings.py:59 msgid "Kannada" msgstr "Kannada" -#: conf/global_settings.py:59 +#: conf/global_settings.py:60 msgid "Latvian" msgstr "Lettone" -#: conf/global_settings.py:60 +#: conf/global_settings.py:61 msgid "Macedonian" msgstr "Macedone" -#: conf/global_settings.py:61 +#: conf/global_settings.py:62 msgid "Dutch" msgstr "Olandese" -#: conf/global_settings.py:62 +#: conf/global_settings.py:63 msgid "Norwegian" msgstr "Norvegese" -#: conf/global_settings.py:63 +#: conf/global_settings.py:64 msgid "Polish" msgstr "Polacco" -#: conf/global_settings.py:64 +#: conf/global_settings.py:65 +msgid "Portugese" +msgstr "Portoghese" + +#: conf/global_settings.py:66 msgid "Brazilian" msgstr "Brasiliano" -#: conf/global_settings.py:65 +#: conf/global_settings.py:67 msgid "Romanian" msgstr "Rumeno" -#: conf/global_settings.py:66 +#: conf/global_settings.py:68 msgid "Russian" msgstr "Russo" -#: conf/global_settings.py:67 +#: conf/global_settings.py:69 msgid "Slovak" msgstr "Slovacco" -#: conf/global_settings.py:68 +#: conf/global_settings.py:70 msgid "Slovenian" msgstr "Sloveno" -#: conf/global_settings.py:69 +#: conf/global_settings.py:71 msgid "Serbian" msgstr "Serbo" -#: conf/global_settings.py:70 +#: conf/global_settings.py:72 msgid "Swedish" msgstr "Svedese" -#: conf/global_settings.py:71 +#: conf/global_settings.py:73 msgid "Tamil" msgstr "Tamil" -#: conf/global_settings.py:72 +#: conf/global_settings.py:74 +msgid "Telugu" +msgstr "" + +#: conf/global_settings.py:75 msgid "Turkish" msgstr "Turco" -#: conf/global_settings.py:73 +#: conf/global_settings.py:76 msgid "Ukrainian" msgstr "Ucraino" -#: conf/global_settings.py:74 +#: conf/global_settings.py:77 msgid "Simplified Chinese" msgstr "Cinese semplificato" -#: conf/global_settings.py:75 +#: conf/global_settings.py:78 msgid "Traditional Chinese" msgstr "Cinese tradizionale" -#: core/validators.py:64 -msgid "This value must contain only letters, numbers and underscores." -msgstr "Questo valore può contenere solo lettere, cifre e sottolineature." - -#: core/validators.py:68 -msgid "" -"This value must contain only letters, numbers, underscores, dashes or " -"slashes." -msgstr "" -"Questo valore può contenere solo lettere, cifre, sottolineature, trattini e " -"barre diagonali." - -#: core/validators.py:72 -msgid "This value must contain only letters, numbers, underscores or hyphens." -msgstr "Questo valore può contenere solo lettere, cifre, sottolineature e trattini." - -#: core/validators.py:76 -msgid "Uppercase letters are not allowed here." -msgstr "Non sono ammesse lettere maiuscole." - -#: core/validators.py:80 -msgid "Lowercase letters are not allowed here." -msgstr "Non sono ammesse lettere minuscole." - -#: core/validators.py:87 -msgid "Enter only digits separated by commas." -msgstr "Inserire solo cifre separate da virgole." - -#: core/validators.py:99 -msgid "Enter valid e-mail addresses separated by commas." -msgstr "Inserire indirizzi e-mail validi separati da virgole." - -#: core/validators.py:103 -msgid "Please enter a valid IP address." -msgstr "Inserire un indirizzo IP valido." - -#: core/validators.py:107 -msgid "Empty values are not allowed here." -msgstr "È necessario inserire un valore." - -#: core/validators.py:111 -msgid "Non-numeric characters aren't allowed here." -msgstr "Sono ammessi soltanto caratteri numerici." - -#: core/validators.py:115 -msgid "This value can't be comprised solely of digits." -msgstr "Questo valore non può essere composto solo da cifre." - -#: core/validators.py:120 newforms/fields.py:126 -msgid "Enter a whole number." -msgstr "Inserire un numero intero." - -#: core/validators.py:124 -msgid "Only alphabetical characters are allowed here." -msgstr "Sono ammessi solo caratteri alfabetici." - -#: core/validators.py:139 -msgid "Year must be 1900 or later." -msgstr "L'anno deve essere 1900 o successivo." - -#: core/validators.py:143 -#, python-format -msgid "Invalid date: %s." -msgstr "Data non valida: %s." - -#: core/validators.py:152 -msgid "Enter a valid time in HH:MM format." -msgstr "Inserire un orario valido in formato OO:MM." - -#: core/validators.py:161 newforms/fields.py:269 -msgid "Enter a valid e-mail address." -msgstr "Inserire un indirizzo e-mail valido." - -#: core/validators.py:173 core/validators.py:444 oldforms/__init__.py:667 -msgid "No file was submitted. Check the encoding type on the form." -msgstr "Non è stato inviato alcun file. Verificare il tipo di codifica della form." - -#: core/validators.py:177 -msgid "" -"Upload a valid image. The file you uploaded was either not an image or a " -"corrupted image." -msgstr "Caricare un'immagine valida. Il file caricato non è un'immagine o è corrotto." - -#: core/validators.py:184 -#, python-format -msgid "The URL %s does not point to a valid image." -msgstr "La URL %s non punta ad un'immagine valida." - -#: core/validators.py:188 -#, python-format -msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." -msgstr "I numeri di telefono devono essere in formato XXX-XXX-XXXX. \"%s\" non è valido." - -#: core/validators.py:196 -#, python-format -msgid "The URL %s does not point to a valid QuickTime video." -msgstr "La URL %s non punta ad un video QuickTime valido." - -#: core/validators.py:200 -msgid "A valid URL is required." -msgstr "Inserire una URL valida." - -#: core/validators.py:214 -#, python-format -msgid "" -"Valid HTML is required. Specific errors are:\n" -"%s" -msgstr "" -"È richiesto HTML valido. Gli errori sono i seguenti:\n" -"%s" - -#: core/validators.py:221 -#, python-format -msgid "Badly formed XML: %s" -msgstr "XML malformato: %s" - -#: core/validators.py:238 -#, python-format -msgid "Invalid URL: %s" -msgstr "URL non valida: %s" - -#: core/validators.py:243 core/validators.py:245 -#, python-format -msgid "The URL %s is a broken link." -msgstr "La URL %s è un link non funzionante." - -#: core/validators.py:251 -msgid "Enter a valid U.S. state abbreviation." -msgstr "Inserire un valido nome di stato USA abbreviato." - -#: core/validators.py:265 -#, python-format -msgid "Watch your mouth! The word %s is not allowed here." -msgid_plural "Watch your mouth! The words %s are not allowed here." -msgstr[0] "Moderare i termini: la parola %s non è ammessa." -msgstr[1] "Moderare i termini: le parole %s non sono ammesse." - -#: core/validators.py:272 -#, python-format -msgid "This field must match the '%s' field." -msgstr "Questo campo deve corrispondere al campo '%s'." - -#: core/validators.py:291 -msgid "Please enter something for at least one field." -msgstr "Inserire qualcosa in almeno un campo." - -#: core/validators.py:300 core/validators.py:311 -msgid "Please enter both fields or leave them both empty." -msgstr "Inserire entrambi i campi o lasciarli entrambi vuoti." - -#: core/validators.py:319 -#, python-format -msgid "This field must be given if %(field)s is %(value)s" -msgstr "Questo campo è obbligatorio se %(field)s è %(value)s" - -#: core/validators.py:332 -#, python-format -msgid "This field must be given if %(field)s is not %(value)s" -msgstr "Questo campo è obbligatorio se %(field)s non è %(value)s" - -#: core/validators.py:351 -msgid "Duplicate values are not allowed." -msgstr "Non sono ammessi valori duplicati." - -#: core/validators.py:366 -#, python-format -msgid "This value must be between %s and %s." -msgstr "Questo valore deve essere compreso tra %s e %s." - -#: core/validators.py:368 -#, python-format -msgid "This value must be at least %s." -msgstr "Questo valore deve essere almeno pari a %s." - -#: core/validators.py:370 -#, python-format -msgid "This value must be no more than %s." -msgstr "Questo valore non deve essere maggiore di %s." - -#: core/validators.py:406 -#, python-format -msgid "This value must be a power of %s." -msgstr "Questo valore deve essere una potenza di %s." - -#: core/validators.py:417 -msgid "Please enter a valid decimal number." -msgstr "Inserire un numero decimale valido." - -#: core/validators.py:421 -#, python-format -msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "Please enter a valid decimal number with at most %s total digits." -msgstr[0] "Inserire un numero decimale con non più di %s cifra in totale." -msgstr[1] "Inserire un numero decimale con non più di %s cifre in totale." - -#: core/validators.py:424 -#, python-format -msgid "Please enter a valid decimal number with a whole part of at most %s digit." -msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." -msgstr[0] "Inserire un numero decimale la cui parte intera sia composta da non più di %s cifra." -msgstr[1] "Inserire un numero decimale la cui parte intera sia composta da non più di %s cifre." - -#: core/validators.py:427 -#, python-format -msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "Please enter a valid decimal number with at most %s decimal places." -msgstr[0] "Inserire un decimale con non più di %s cifra decimale." -msgstr[1] "Inserire un decimale con non più di %s cifre decimali." - -#: core/validators.py:437 -#, python-format -msgid "Make sure your uploaded file is at least %s bytes big." -msgstr "Verificare che il file caricato sia grande almeno %s byte." - -#: core/validators.py:438 -#, python-format -msgid "Make sure your uploaded file is at most %s bytes big." -msgstr "Verificare che il file caricato non sia più grande di %s byte." - -#: core/validators.py:455 -msgid "The format for this field is wrong." -msgstr "Il formato di questo campo non è valido." - -#: core/validators.py:470 -msgid "This field is invalid." -msgstr "Questo campo non è valido." - -#: core/validators.py:506 -#, python-format -msgid "Could not retrieve anything from %s." -msgstr "Impossibile recuperare alcunché da %s." - -#: core/validators.py:509 -#, python-format -msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." -msgstr "La URL %(url)s ha restituito un header Content-Type non valido: '%(contenttype)s'." - -#: core/validators.py:542 -#, python-format -msgid "" -"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " -"\"%(start)s\".)" -msgstr "Chiudere il tag %(tag)s a linea %(line)s. (La linea inizia con \"%(start)s\".)" - -#: core/validators.py:546 -#, python-format -msgid "" -"Some text starting on line %(line)s is not allowed in that context. (Line " -"starts with \"%(start)s\".)" -msgstr "" -"Il testo che comincia a linea %(line)s non e' ammesso in questo contesto. " -"(La linea comincia con \"%(start)s\".)" - -#: core/validators.py:551 -#, python-format -msgid "" -"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" -"(start)s\".)" -msgstr "\"%(attr)s\" a linea %(line)s non è un attributo valido. (La linea comincia con \"%(start)s\".)" - -#: core/validators.py:556 -#, python-format -msgid "" -"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" -"(start)s\".)" -msgstr "" -"\"<%(tag)s>\" a linea %(line)s non è un tag valido. (La linea comincia con \"%" -"(start)s\".)" - -#: core/validators.py:560 -#, python-format -msgid "" -"A tag on line %(line)s is missing one or more required attributes. (Line " -"starts with \"%(start)s\".)" -msgstr "" -"Un tag a linea %(line)s manca di uno o più attributi richiesti. (La linea " -"comincia con \"%(start)s\".)" - -#: core/validators.py:565 -#, python-format -msgid "" -"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " -"starts with \"%(start)s\".)" -msgstr "" -"L'attributo \"%(attr)s\" a linea %(line)s ha un valore non valido. (La " -"linea comincia con \"%(start)s\".)" - -#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 -msgid "The two password fields didn't match." -msgstr "I due campi password non corrispondono." - -#: contrib/auth/forms.py:25 -msgid "A user with that username already exists." -msgstr "Un utente con questo nome·è già presente." - -#: contrib/auth/forms.py:53 -msgid "" -"Your Web browser doesn't appear to have cookies enabled. Cookies are " -"required for logging in." -msgstr "Il browser web sembra non avere i cookie abilitati. I cookie sono necessari per poter accedere." - -#: contrib/auth/forms.py:60 contrib/admin/views/decorators.py:10 -msgid "" -"Please enter a correct username and password. Note that both fields are case-" -"sensitive." -msgstr "" -"Inserire nome utente e password corretti. Entrambi i campi sono case " -"sensitive." - -#: contrib/auth/forms.py:62 -msgid "This account is inactive." -msgstr "Questo account non è attivo." - -#: contrib/auth/forms.py:85 -msgid "" -"That e-mail address doesn't have an associated user account. Are you sure " -"you've registered?" -msgstr "Questo indirizzo email non è associato ad alcun account utente. Sei sicuro di esserti registrato?" - -#: contrib/auth/forms.py:117 -msgid "The two 'new password' fields didn't match." -msgstr "I due campi 'nuova password' non corrispondono." - -#: contrib/auth/forms.py:124 -msgid "Your old password was entered incorrectly. Please enter it again." -msgstr "La vecchia password non è stata inserita correttamente: va inserita di nuovo." - -#: contrib/auth/models.py:38 contrib/auth/models.py:57 -msgid "name" -msgstr "nome" - -#: contrib/auth/models.py:40 -msgid "codename" -msgstr "nome in codice" - -#: contrib/auth/models.py:42 -msgid "permission" -msgstr "permesso" - -#: contrib/auth/models.py:43 contrib/auth/models.py:58 -msgid "permissions" -msgstr "permessi" - -#: contrib/auth/models.py:60 -msgid "group" -msgstr "gruppo" - -#: contrib/auth/models.py:61 contrib/auth/models.py:100 -msgid "groups" -msgstr "gruppi" - -#: contrib/auth/models.py:90 -msgid "username" -msgstr "nome utente" - -#: contrib/auth/models.py:90 -msgid "" -"Required. 30 characters or fewer. Alphanumeric characters only (letters, " -"digits and underscores)." -msgstr "Obbligatorio. 30 caratteri o meno. Solo caratteri alfanumerici (lettere, cifre e sottolineature)." - -#: contrib/auth/models.py:91 -msgid "first name" -msgstr "nome" - -#: contrib/auth/models.py:92 -msgid "last name" -msgstr "cognome" - -#: contrib/auth/models.py:93 -msgid "e-mail address" -msgstr "indirizzo e-mail" - -#: contrib/auth/models.py:94 -msgid "password" -msgstr "password" - -#: contrib/auth/models.py:94 -msgid "" -"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " -"password form</a>." -msgstr "Usare '[algo]$[salt]$[hexdigest]' oppure la maschera di <a href=\"password/\">cambio password</a>." - -#: contrib/auth/models.py:95 -msgid "staff status" -msgstr "privilegi di staff" - -#: contrib/auth/models.py:95 -msgid "Designates whether the user can log into this admin site." -msgstr "Indica se l'utente può accedere a questo sito di amministrazione." - -#: contrib/auth/models.py:96 -msgid "active" -msgstr "attivo" - -#: contrib/auth/models.py:96 -msgid "" -"Designates whether this user can log into the Django admin. Unselect this " -"instead of deleting accounts." -msgstr "Indica se l'utente può accedere all'amministrazione di Django. Deselezionare qui, piuttosto che cancellare gli account." - -#: contrib/auth/models.py:97 -msgid "superuser status" -msgstr "privilegi di superutente" - -#: contrib/auth/models.py:97 -msgid "" -"Designates that this user has all permissions without explicitly assigning " -"them." -msgstr "Indica che l'utente ha tutti i privilegi, senza che siano stati assegnati esplicitamente." - -#: contrib/auth/models.py:98 -msgid "last login" -msgstr "ultimo accesso" - -#: contrib/auth/models.py:99 -msgid "date joined" -msgstr "iscritto in data" - -#: contrib/auth/models.py:101 -msgid "" -"In addition to the permissions manually assigned, this user will also get " -"all permissions granted to each group he/she is in." -msgstr "" -"In aggiunta ai privilegi assegnati manualmente, l'utente riceverà anche tutti " -"i privilegi assegnati ad ogni gruppo cui appartiene." - -#: contrib/auth/models.py:102 -msgid "user permissions" -msgstr "privilegi utente" - -#: contrib/auth/models.py:105 -msgid "user" -msgstr "utente" - -#: contrib/auth/models.py:106 -msgid "users" -msgstr "utenti" - -#: contrib/auth/models.py:111 -msgid "Personal info" -msgstr "Informazioni personali" - -#: contrib/auth/models.py:112 -msgid "Permissions" -msgstr "Privilegi" - -#: contrib/auth/models.py:113 -msgid "Important dates" -msgstr "Date importanti" - -#: contrib/auth/models.py:114 -msgid "Groups" -msgstr "Gruppi" - -#: contrib/auth/models.py:258 -msgid "message" -msgstr "messaggio" - -#: contrib/auth/views.py:39 -msgid "Logged out" -msgstr "Accesso annullato" - -#: contrib/admin/models.py:16 -msgid "action time" -msgstr "data azione" - -#: contrib/admin/models.py:19 -msgid "object id" -msgstr "ID oggetto" - -#: contrib/admin/models.py:20 -msgid "object repr" -msgstr "rappresentazione oggetto" - -#: contrib/admin/models.py:21 -msgid "action flag" -msgstr "flag azione" - -#: contrib/admin/models.py:22 -msgid "change message" -msgstr "messaggio di modifica" - -#: contrib/admin/models.py:25 -msgid "log entry" -msgstr "voce di log" - -#: contrib/admin/models.py:26 -msgid "log entries" -msgstr "voci di log" - #: contrib/admin/filterspecs.py:40 #, python-format msgid "" @@ -759,412 +212,163 @@ msgstr "Questo mese" msgid "This year" msgstr "Quest'anno" -#: contrib/admin/filterspecs.py:143 oldforms/__init__.py:572 -#: newforms/widgets.py:170 +#: contrib/admin/filterspecs.py:143 newforms/widgets.py:180 +#: oldforms/__init__.py:577 msgid "Yes" msgstr "Sì" -#: contrib/admin/filterspecs.py:143 oldforms/__init__.py:572 -#: newforms/widgets.py:170 +#: contrib/admin/filterspecs.py:143 newforms/widgets.py:180 +#: oldforms/__init__.py:577 msgid "No" msgstr "No" -#: contrib/admin/filterspecs.py:150 oldforms/__init__.py:572 -#: newforms/widgets.py:170 +#: contrib/admin/filterspecs.py:150 newforms/widgets.py:180 +#: oldforms/__init__.py:577 msgid "Unknown" msgstr "Sconosciuto" -#: contrib/admin/views/decorators.py:24 -#: contrib/admin/templates/admin/login.html:25 -msgid "Log in" -msgstr "Accedi" - -#: contrib/admin/views/decorators.py:62 -msgid "" -"Please log in again, because your session has expired. Don't worry: Your " -"submission has been saved." -msgstr "" -"La sessione è scaduta: occorre accedere nuovamente. I dati inseriti sono stati comunque" -"salvati." - -#: contrib/admin/views/decorators.py:69 -msgid "" -"Looks like your browser isn't configured to accept cookies. Please enable " -"cookies, reload this page, and try again." -msgstr "Il browser non sembra configurato per accettare i cookie. Una volta abilitati, ricaricare la pagina e riprovare." - -#: contrib/admin/views/decorators.py:83 -msgid "Usernames cannot contain the '@' character." -msgstr "I nomi utente non possono contenere il carattere '@'." - -#: contrib/admin/views/decorators.py:85 -#, python-format -msgid "Your e-mail address is not your username. Try '%s' instead." -msgstr "Il nome utente non è costituito dall'indirizzo e-mail. Provare con '%s'." - -#: contrib/admin/views/main.py:223 -msgid "Site administration" -msgstr "Amministrazione sito" - -#: contrib/admin/views/main.py:257 contrib/admin/views/auth.py:19 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." -msgstr "%(name)s \"%(obj)s\" è stato aggiunto correttamente." - -#: contrib/admin/views/main.py:261 contrib/admin/views/main.py:347 -#: contrib/admin/views/auth.py:24 -msgid "You may edit it again below." -msgstr "È possibile modificarlo nuovamente qui sotto." - -#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 -#, python-format -msgid "You may add another %s below." -msgstr "È possibile aggiungere un altro %s qui sotto." - -#: contrib/admin/views/main.py:289 -#, python-format -msgid "Add %s" -msgstr "Aggiungere %s" - -#: contrib/admin/views/main.py:335 -#, python-format -msgid "Added %s." -msgstr "Aggiunto %s" - -#: contrib/admin/views/main.py:337 -#, python-format -msgid "Changed %s." -msgstr "Modificato %s." - -#: contrib/admin/views/main.py:339 -#, python-format -msgid "Deleted %s." -msgstr "Cancellato %s" - -#: contrib/admin/views/main.py:342 -msgid "No fields changed." -msgstr "Nessun campo modificato." - -#: contrib/admin/views/main.py:345 -#, python-format -msgid "The %(name)s \"%(obj)s\" was changed successfully." -msgstr "%(name)s \"%(obj)s\" è stato modificato correttamente." - -#: contrib/admin/views/main.py:353 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." -msgstr "%(name)s \"%(obj)s\" è stato aggiunto correttamente. È possibile modificarlo nuovamente qui sotto." - -#: contrib/admin/views/main.py:391 -#, python-format -msgid "Change %s" -msgstr "Modificare %s" - -#: contrib/admin/views/main.py:476 -#, python-format -msgid "One or more %(fieldname)s in %(name)s: %(obj)s" -msgstr "Uno o più %(fieldname)s in %(name)s: %(obj)s" - -#: contrib/admin/views/main.py:481 -#, python-format -msgid "One or more %(fieldname)s in %(name)s:" -msgstr "Uno o più %(fieldname)s in %(name)s:" - -#: contrib/admin/views/main.py:514 -#, python-format -msgid "The %(name)s \"%(obj)s\" was deleted successfully." -msgstr "%(name)s \"%(obj)s\" è stato cancellato correttamente." - -#: contrib/admin/views/main.py:517 -msgid "Are you sure?" -msgstr "Sei sicuro?" - -#: contrib/admin/views/main.py:539 -#, python-format -msgid "Change history: %s" -msgstr "Tracciato delle modifiche: %s" - -#: contrib/admin/views/main.py:573 -#, python-format -msgid "Select %s" -msgstr "Seleziona %s" - -#: contrib/admin/views/main.py:573 -#, python-format -msgid "Select %s to change" -msgstr "Seleziona %s per modificare" - -#: contrib/admin/views/main.py:768 -msgid "Database error" -msgstr "Errore nel database" - -#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 -#: contrib/admin/views/doc.py:50 -msgid "tag:" -msgstr "tag:" - -#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 -#: contrib/admin/views/doc.py:81 -msgid "filter:" -msgstr "filtro:" - -#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 -#: contrib/admin/views/doc.py:139 -msgid "view:" -msgstr "view:" - -#: contrib/admin/views/doc.py:164 -#, python-format -msgid "App %r not found" -msgstr "Appl. %r non trovata" - -#: contrib/admin/views/doc.py:171 -#, python-format -msgid "Model %r not found in app %r" -msgstr "Modello %r non trovato nell'appl. %r" - -#: contrib/admin/views/doc.py:183 -#, python-format -msgid "the related `%s.%s` object" -msgstr "l'oggetto `%s.%s` collegato" - -#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 -#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 -msgid "model:" -msgstr "modello:" - -#: contrib/admin/views/doc.py:214 -#, python-format -msgid "related `%s.%s` objects" -msgstr "oggetti `%s.%s` collegati" - -#: contrib/admin/views/doc.py:219 -#, python-format -msgid "all %s" -msgstr "tutti %s" - -#: contrib/admin/views/doc.py:224 -#, python-format -msgid "number of %s" -msgstr "numero di %s" - -#: contrib/admin/views/doc.py:229 -#, python-format -msgid "Fields on %s objects" -msgstr "Campi sugli oggetti %s" - -#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 -#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 -#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 -msgid "Integer" -msgstr "Intero" - -#: contrib/admin/views/doc.py:292 -msgid "Boolean (Either True or False)" -msgstr "Booleano (True o False)" - -#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 -#, python-format -msgid "String (up to %(maxlength)s)" -msgstr "Stringa (fino a %(maxlength)s caratteri)" - -#: contrib/admin/views/doc.py:294 -msgid "Comma-separated integers" -msgstr "Interi separati da virgola" - -#: contrib/admin/views/doc.py:295 -msgid "Date (without time)" -msgstr "Data (senza orario)" - -#: contrib/admin/views/doc.py:296 -msgid "Date (with time)" -msgstr "Data (con orario)" - -#: contrib/admin/views/doc.py:297 -msgid "E-mail address" -msgstr "Indirizzo e-mail" - -#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 -#: contrib/admin/views/doc.py:302 -msgid "File path" -msgstr "Percorso di file" - -#: contrib/admin/views/doc.py:300 -msgid "Decimal number" -msgstr "Numero decimale" - -#: contrib/admin/views/doc.py:304 contrib/comments/models.py:85 -msgid "IP address" -msgstr "indirizzo IP" +#: contrib/admin/models.py:16 +msgid "action time" +msgstr "data azione" -#: contrib/admin/views/doc.py:306 -msgid "Boolean (Either True, False or None)" -msgstr "Booleano (True, False o None)" +#: contrib/admin/models.py:19 +msgid "object id" +msgstr "ID oggetto" -#: contrib/admin/views/doc.py:307 -msgid "Relation to parent model" -msgstr "Collegamento a modello padre" +#: contrib/admin/models.py:20 +msgid "object repr" +msgstr "rappresentazione oggetto" -#: contrib/admin/views/doc.py:308 -msgid "Phone number" -msgstr "Numero di telefono" +#: contrib/admin/models.py:21 +msgid "action flag" +msgstr "flag azione" -#: contrib/admin/views/doc.py:313 -msgid "Text" -msgstr "Testo" +#: contrib/admin/models.py:22 +msgid "change message" +msgstr "messaggio di modifica" -#: contrib/admin/views/doc.py:314 -msgid "Time" -msgstr "Orario" +#: contrib/admin/models.py:25 +msgid "log entry" +msgstr "voce di log" -#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 -msgid "URL" -msgstr "URL" +#: contrib/admin/models.py:26 +msgid "log entries" +msgstr "voci di log" -#: contrib/admin/views/doc.py:316 -msgid "U.S. state (two uppercase letters)" -msgstr "Stato USA (due lettere maiuscole)" +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 +msgid "Page not found" +msgstr "Pagina non trovata" -#: contrib/admin/views/doc.py:317 -msgid "XML text" -msgstr "Testo XML" +#: contrib/admin/templates/admin/404.html:10 +msgid "We're sorry, but the requested page could not be found." +msgstr "Spiacenti, ma la pagina richiesta non è stata trovata." -#: contrib/admin/views/doc.py:343 -#, python-format -msgid "%s does not appear to be a urlpattern object" -msgstr "%s non sembra essere un oggetto urlpattern" +#: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/base.html:30 +#: contrib/admin/templates/admin/change_form.html:13 +#: contrib/admin/templates/admin/change_list.html:6 +#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/object_history.html:5 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +#: contrib/admin/templates/registration/logged_out.html:4 +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 +msgid "Home" +msgstr "Pagina iniziale" -#: contrib/admin/views/auth.py:30 -msgid "Add user" -msgstr "Aggiungi utente" +#: contrib/admin/templates/admin/500.html:4 +msgid "Server error" +msgstr "Errore del server" -#: contrib/admin/views/auth.py:57 -msgid "Password changed successfully." -msgstr "La password è stata cambiata correttamente." +#: contrib/admin/templates/admin/500.html:6 +msgid "Server error (500)" +msgstr "Errore del server (500)" -#: contrib/admin/views/auth.py:64 -#, python-format -msgid "Change password: %s" -msgstr "Cambia la password: %s" +#: contrib/admin/templates/admin/500.html:9 +msgid "Server Error <em>(500)</em>" +msgstr "Errore del server <em>(500)</em>" -#: contrib/admin/templatetags/admin_list.py:247 -msgid "All dates" -msgstr "Tutte le date" +#: contrib/admin/templates/admin/500.html:10 +msgid "" +"There's been an error. It's been reported to the site administrators via e-" +"mail and should be fixed shortly. Thanks for your patience." +msgstr "" +"Si è verificato un errore. È stato riportato agli amministratori del sito " +"via e-mail e verrà corretto a breve. Grazie per la tua pazienza." -#: contrib/admin/templates/admin/pagination.html:10 -msgid "Show all" -msgstr "Mostra tutto" +#: contrib/admin/templates/admin/base.html:25 +msgid "Welcome," +msgstr "Benvenuto," -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 #: contrib/admin/templates/admin/change_form.html:10 #: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:3 #: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/base.html:25 #: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/registration/password_change_form.html:3 #: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 msgid "Documentation" msgstr "Documentazione" -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 #: contrib/admin/templates/admin/change_form.html:10 #: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:3 #: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/base.html:25 #: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/admin/auth/user/change_password.html:15 #: contrib/admin/templates/admin/auth/user/change_password.html:46 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 #: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/view_index.html:5 #: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 msgid "Change password" msgstr "Cambia la password" -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 #: contrib/admin/templates/admin/change_form.html:10 #: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:3 #: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/base.html:25 #: contrib/admin/templates/admin/auth/user/change_password.html:9 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 #: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/view_index.html:5 #: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 #: contrib/comments/templates/comments/form.html:6 msgid "Log out" msgstr "Esci" -#: contrib/admin/templates/admin/delete_confirmation.html:6 -#: contrib/admin/templates/admin/change_form.html:13 -#: contrib/admin/templates/admin/change_list.html:6 -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/500.html:4 -#: contrib/admin/templates/admin/invalid_setup.html:4 -#: contrib/admin/templates/admin/base.html:30 -#: contrib/admin/templates/admin/auth/user/change_password.html:12 -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/registration/password_reset_form.html:4 -#: contrib/admin/templates/registration/logged_out.html:4 -#: contrib/admin/templates/registration/password_reset_done.html:4 -#: contrib/admin/templates/registration/password_change_form.html:4 -#: contrib/admin/templates/registration/password_change_done.html:4 -msgid "Home" -msgstr "Pagina iniziale" - -#: contrib/admin/templates/admin/delete_confirmation.html:9 -#: contrib/admin/templates/admin/submit_line.html:3 -msgid "Delete" -msgstr "Cancella" - -#: contrib/admin/templates/admin/delete_confirmation.html:14 -#, python-format -msgid "" -"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " -"related objects, but your account doesn't have permission to delete the " -"following types of objects:" -msgstr "" -"La cancellazione di %(object_name)s '%(escaped_object)s' causerebbe la cancellazione " -"di oggetti collegati, ma questo account non ha i permessi per cancellare gli oggetti dei seguenti tipi:" - -#: contrib/admin/templates/admin/delete_confirmation.html:21 -#, python-format -msgid "" -"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " -"All of the following related items will be deleted:" -msgstr "" -"Sei sicuro di voler rimuovere %(object_name)s \"%(escaped_object)s\"? Tutti i seguenti " -"oggetti collegati saranno cancellati:" - -#: contrib/admin/templates/admin/delete_confirmation.html:26 -msgid "Yes, I'm sure" -msgstr "Sì, sono sicuro" - -#: contrib/admin/templates/admin/404.html:4 -#: contrib/admin/templates/admin/404.html:8 -msgid "Page not found" -msgstr "Pagina non trovata" +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" +msgstr "Amministrazione sito Django" -#: contrib/admin/templates/admin/404.html:10 -msgid "We're sorry, but the requested page could not be found." -msgstr "Spiacenti, ma la pagina richiesta non è stata trovata." +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" +msgstr "Amministrazione Django" #: contrib/admin/templates/admin/change_form.html:15 #: contrib/admin/templates/admin/index.html:28 @@ -1195,31 +399,48 @@ msgstr "Ordinamento" msgid "Order:" msgstr "Ordine:" -#: contrib/admin/templates/admin/filter.html:2 +#: contrib/admin/templates/admin/change_list.html:12 #, python-format -msgid " By %(filter_title)s " -msgstr " Per %(filter_title)s " +msgid "Add %(name)s" +msgstr "Aggiungi %(name)s" -#: contrib/admin/templates/admin/submit_line.html:4 -msgid "Save as new" -msgstr "Salva come nuovo" +#: contrib/admin/templates/admin/delete_confirmation.html:9 +#: contrib/admin/templates/admin/submit_line.html:3 +msgid "Delete" +msgstr "Cancella" -#: contrib/admin/templates/admin/submit_line.html:5 -msgid "Save and add another" -msgstr "Salva e aggiungi un altro" +#: contrib/admin/templates/admin/delete_confirmation.html:14 +#, python-format +msgid "" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" +msgstr "" +"La cancellazione di %(object_name)s '%(escaped_object)s' causerebbe la " +"cancellazione di oggetti collegati, ma questo account non ha i permessi per " +"cancellare gli oggetti dei seguenti tipi:" -#: contrib/admin/templates/admin/submit_line.html:6 -msgid "Save and continue editing" -msgstr "Salva e continua le modifiche" +#: contrib/admin/templates/admin/delete_confirmation.html:21 +#, python-format +msgid "" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" +msgstr "" +"Sei sicuro di voler rimuovere %(object_name)s \"%(escaped_object)s\"? Tutti " +"i seguenti oggetti collegati saranno cancellati:" -#: contrib/admin/templates/admin/submit_line.html:7 -msgid "Save" -msgstr "Salva" +#: contrib/admin/templates/admin/delete_confirmation.html:26 +msgid "Yes, I'm sure" +msgstr "Sì, sono sicuro" -#: contrib/admin/templates/admin/change_list.html:12 +#: contrib/admin/templates/admin/filter.html:2 #, python-format -msgid "Add %(name)s" -msgstr "Aggiungi %(name)s" +msgid " By %(filter_title)s " +msgstr " Per %(filter_title)s " + +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "Filtro" #: contrib/admin/templates/admin/index.html:17 #, python-format @@ -1251,13 +472,31 @@ msgstr "Azioni Proprie" msgid "None available" msgstr "Nessuno disponibile" -#: contrib/admin/templates/admin/base_site.html:4 -msgid "Django site admin" -msgstr "Amministrazione sito Django" +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "" +"Ci sono problemi nell'installazione del database. Assicurarsi che le tabelle " +"appropriate del database siano state create, e che il database sia leggibile " +"dall'utente appropriato." -#: contrib/admin/templates/admin/base_site.html:7 -msgid "Django administration" -msgstr "Amministrazione Django" +#: contrib/admin/templates/admin/login.html:17 +#: contrib/comments/templates/comments/form.html:6 +#: contrib/comments/templates/comments/form.html:8 +msgid "Username:" +msgstr "Nome utente:" + +#: contrib/admin/templates/admin/login.html:20 +#: contrib/comments/templates/comments/form.html:8 +msgid "Password:" +msgstr "Password:" + +#: contrib/admin/templates/admin/login.html:25 +#: contrib/admin/views/decorators.py:24 +msgid "Log in" +msgstr "Accedi" #: contrib/admin/templates/admin/object_history.html:18 msgid "Date/time" @@ -1279,32 +518,13 @@ msgstr "j F Y, H:i" msgid "" "This object doesn't have a change history. It probably wasn't added via this " "admin site." -msgstr "Questo oggetto non ha cambiamenti registrati. Probabilmente non è stato creato con questo sito di amministrazione." - -#: contrib/admin/templates/admin/500.html:4 -msgid "Server error" -msgstr "Errore del server" - -#: contrib/admin/templates/admin/500.html:6 -msgid "Server error (500)" -msgstr "Errore del server (500)" - -#: contrib/admin/templates/admin/500.html:9 -msgid "Server Error <em>(500)</em>" -msgstr "Errore del server <em>(500)</em>" - -#: contrib/admin/templates/admin/500.html:10 -msgid "" -"There's been an error. It's been reported to the site administrators via e-" -"mail and should be fixed shortly. Thanks for your patience." -msgstr "Si è verificato un errore. È stato riportato agli amministratori del sito via e-mail e verrà corretto a breve. Grazie per la tua pazienza." +msgstr "" +"Questo oggetto non ha cambiamenti registrati. Probabilmente non è stato " +"creato con questo sito di amministrazione." -#: contrib/admin/templates/admin/invalid_setup.html:8 -msgid "" -"Something's wrong with your database installation. Make sure the appropriate " -"database tables have been created, and make sure the database is readable by " -"the appropriate user." -msgstr "Ci sono problemi nell'installazione del database. Assicurarsi che le tabelle appropriate del database siano state create, e che il database sia leggibile dall'utente appropriato." +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" +msgstr "Mostra tutto" #: contrib/admin/templates/admin/search_form.html:8 msgid "Go" @@ -1322,34 +542,29 @@ msgstr[1] "%(counter)s risultati" msgid "%(full_result_count)s total" msgstr "%(full_result_count)s totali" -#: contrib/admin/templates/admin/filters.html:4 -msgid "Filter" -msgstr "Filtro" - -#: contrib/admin/templates/admin/login.html:17 -#: contrib/comments/templates/comments/form.html:6 -#: contrib/comments/templates/comments/form.html:8 -msgid "Username:" -msgstr "Nome utente:" +#: contrib/admin/templates/admin/submit_line.html:4 +msgid "Save as new" +msgstr "Salva come nuovo" -#: contrib/admin/templates/admin/login.html:20 -#: contrib/comments/templates/comments/form.html:8 -msgid "Password:" -msgstr "Password:" +#: contrib/admin/templates/admin/submit_line.html:5 +msgid "Save and add another" +msgstr "Salva e aggiungi un altro" -#: contrib/admin/templates/admin/login.html:22 -msgid "Have you <a href=\"/password_reset/\">forgotten your password</a>?" -msgstr "Hai <a href=\"/password_reset/\">dimenticato la password</a>?" +#: contrib/admin/templates/admin/submit_line.html:6 +msgid "Save and continue editing" +msgstr "Salva e continua le modifiche" -#: contrib/admin/templates/admin/base.html:25 -msgid "Welcome," -msgstr "Benvenuto," +#: contrib/admin/templates/admin/submit_line.html:7 +msgid "Save" +msgstr "Salva" #: contrib/admin/templates/admin/auth/user/add_form.html:6 msgid "" "First, enter a username and password. Then, you'll be able to edit more user " "options." -msgstr "Inserire innanzitutto nome utente e password. Si potrà quindi modificare le altre impostazioni dell'utente." +msgstr "" +"Inserire innanzitutto nome utente e password. Si potrà quindi modificare le " +"altre impostazioni dell'utente." #: contrib/admin/templates/admin/auth/user/add_form.html:12 msgid "Username" @@ -1373,7 +588,8 @@ msgstr "Inserire la stessa password inserita sopra, come verifica." #: contrib/admin/templates/admin/auth/user/change_password.html:28 #, python-format msgid "Enter a new password for the user <strong>%(username)s</strong>." -msgstr "Inserire una nuova password per l'utente <strong>%(username)s</strong>." +msgstr "" +"Inserire una nuova password per l'utente <strong>%(username)s</strong>." #: contrib/admin/templates/admin_doc/bookmarklets.html:3 msgid "Bookmarklets" @@ -1394,10 +610,14 @@ msgid "" "your computer is \"internal\").</p>\n" msgstr "" "\n" -"<p class=\"help\">Per installare i bookmarklet, trascinare il link sulla barra \n" -"dei bookmark, o cliccare il link con il tasto destro e aggiungerlo ai bookmark.\n" -"Sarà quindi possibile selezionare un bookmarklet in qualsiasi pagina del sito.\n" -"Si noti che alcuni di questi bookmarklet richiedono l'accesso al sito tramite un\n" +"<p class=\"help\">Per installare i bookmarklet, trascinare il link sulla " +"barra \n" +"dei bookmark, o cliccare il link con il tasto destro e aggiungerlo ai " +"bookmark.\n" +"Sarà quindi possibile selezionare un bookmarklet in qualsiasi pagina del " +"sito.\n" +"Si noti che alcuni di questi bookmarklet richiedono l'accesso al sito " +"tramite un\n" "computer designato come \"interno\" (chiedere al proprio amministratore di \n" "sistema se non si è sicuri che il proprio computer sia \"interno\").</p>\n" @@ -1410,8 +630,8 @@ msgid "" "Jumps you from any page to the documentation for the view that generates " "that page." msgstr "" -"Porta da qualsiasi pagina alla documentazione della view che genera " -"quella pagina." +"Porta da qualsiasi pagina alla documentazione della view che genera quella " +"pagina." #: contrib/admin/templates/admin_doc/bookmarklets.html:22 msgid "Show object ID" @@ -1421,7 +641,9 @@ msgstr "Mostra l'ID dell'oggetto" msgid "" "Shows the content-type and unique ID for pages that represent a single " "object." -msgstr "Mostra il content-type e l'ID univoco di pagine che rappresentano un singolo oggetto." +msgstr "" +"Mostra il content-type e l'ID univoco di pagine che rappresentano un singolo " +"oggetto." #: contrib/admin/templates/admin_doc/bookmarklets.html:25 msgid "Edit this object (current window)" @@ -1429,7 +651,9 @@ msgstr "Modifica quest'oggetto (nella finestra corrente)" #: contrib/admin/templates/admin_doc/bookmarklets.html:26 msgid "Jumps to the admin page for pages that represent a single object." -msgstr "Porta alla pagina amministrativa di pagine che rappresentano un oggetto singolo." +msgstr "" +"Porta alla pagina amministrativa di pagine che rappresentano un oggetto " +"singolo." #: contrib/admin/templates/admin_doc/bookmarklets.html:28 msgid "Edit this object (new window)" @@ -1437,48 +661,81 @@ msgstr "Modifica quest'oggetto (in una nuova finestra)" #: contrib/admin/templates/admin_doc/bookmarklets.html:29 msgid "As above, but opens the admin page in a new window." -msgstr "Come sopra, ma apre la pagina di amministrazione in una nuova finestra." +msgstr "" +"Come sopra, ma apre la pagina di amministrazione in una nuova finestra." -#: contrib/admin/templates/widget/date_time.html:3 -msgid "Date:" -msgstr "Data:" +#: contrib/admin/templates/registration/logged_out.html:8 +msgid "Thanks for spending some quality time with the Web site today." +msgstr "Grazie per aver speso il tuo tempo prezioso su questo sito oggi." -#: contrib/admin/templates/widget/date_time.html:4 -msgid "Time:" -msgstr "Orario:" +#: contrib/admin/templates/registration/logged_out.html:10 +msgid "Log in again" +msgstr "Accedi di nuovo" -#: contrib/admin/templates/widget/file.html:2 -msgid "Currently:" -msgstr "Attualmente:" +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_change_form.html:6 +#: contrib/admin/templates/registration/password_change_form.html:10 +msgid "Password change" +msgstr "Cambio password" -#: contrib/admin/templates/widget/file.html:3 -msgid "Change:" -msgstr "Modifica:" +#: contrib/admin/templates/registration/password_change_done.html:6 +#: contrib/admin/templates/registration/password_change_done.html:10 +msgid "Password change successful" +msgstr "Cambio di password avvenuto correttamente" + +#: contrib/admin/templates/registration/password_change_done.html:12 +msgid "Your password was changed." +msgstr "La password è stata cambiata." + +#: contrib/admin/templates/registration/password_change_form.html:12 +msgid "" +"Please enter your old password, for security's sake, and then enter your new " +"password twice so we can verify you typed it in correctly." +msgstr "" +"Inserire l'attuale password, per ragioni di sicurezza, e poi la nuova " +"password due volte, per verificare di averla scritta correttamente." + +#: contrib/admin/templates/registration/password_change_form.html:17 +msgid "Old password:" +msgstr "Password attuale:" +#: contrib/admin/templates/registration/password_change_form.html:19 +msgid "New password:" +msgstr "Nuova password:" + +#: contrib/admin/templates/registration/password_change_form.html:21 +msgid "Confirm password:" +msgstr "Confermare la password:" + +#: contrib/admin/templates/registration/password_change_form.html:23 +msgid "Change my password" +msgstr "Modifica la mia password" + +#: contrib/admin/templates/registration/password_reset_done.html:4 #: contrib/admin/templates/registration/password_reset_form.html:4 #: contrib/admin/templates/registration/password_reset_form.html:6 #: contrib/admin/templates/registration/password_reset_form.html:10 -#: contrib/admin/templates/registration/password_reset_done.html:4 msgid "Password reset" msgstr "Reimposta la password" -#: contrib/admin/templates/registration/password_reset_form.html:12 -msgid "" -"Forgotten your password? Enter your e-mail address below, and we'll reset " -"your password and e-mail the new one to you." -msgstr "Dimenticata la password? Inserire il proprio indirizzo e-mail qui sotto: la password sarà reimpostata, e la nuova ti verrà inviata per e-mail." - -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "E-mail address:" -msgstr "Indirizzo e-mail:" +#: contrib/admin/templates/registration/password_reset_done.html:6 +#: contrib/admin/templates/registration/password_reset_done.html:10 +msgid "Password reset successful" +msgstr "Password reimpostata correttamente" -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "Reset my password" -msgstr "Reimposta la mia password" +#: contrib/admin/templates/registration/password_reset_done.html:12 +msgid "" +"We've e-mailed a new password to the e-mail address you submitted. You " +"should be receiving it shortly." +msgstr "" +"La nuova password è stata inviata all'indirizzo e-mail inserito. Arriverà a " +"breve." #: contrib/admin/templates/registration/password_reset_email.html:2 msgid "You're receiving this e-mail because you requested a password reset" -msgstr "Hai ricevuto questa e-mail perché hai chiesto di reimpostare la password" +msgstr "" +"Hai ricevuto questa e-mail perché hai chiesto di reimpostare la password" #: contrib/admin/templates/registration/password_reset_email.html:3 #, python-format @@ -1507,148 +764,509 @@ msgstr "Grazie per aver usato il nostro sito!" msgid "The %(site_name)s team" msgstr "Il team di %(site_name)s" -#: contrib/admin/templates/registration/logged_out.html:8 -msgid "Thanks for spending some quality time with the Web site today." -msgstr "Grazie per aver speso il tuo tempo prezioso su questo sito oggi." +#: contrib/admin/templates/registration/password_reset_form.html:12 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll reset " +"your password and e-mail the new one to you." +msgstr "" +"Dimenticata la password? Inserire il proprio indirizzo e-mail qui sotto: la " +"password sarà reimpostata, e la nuova ti verrà inviata per e-mail." -#: contrib/admin/templates/registration/logged_out.html:10 -msgid "Log in again" -msgstr "Accedi di nuovo" +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "E-mail address:" +msgstr "Indirizzo e-mail:" -#: contrib/admin/templates/registration/password_reset_done.html:6 -#: contrib/admin/templates/registration/password_reset_done.html:10 -msgid "Password reset successful" -msgstr "Password reimpostata correttamente" +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "Reset my password" +msgstr "Reimposta la mia password" -#: contrib/admin/templates/registration/password_reset_done.html:12 +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" +msgstr "Data:" + +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" +msgstr "Orario:" + +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" +msgstr "Attualmente:" + +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" +msgstr "Modifica:" + +#: contrib/admin/templatetags/admin_list.py:247 +msgid "All dates" +msgstr "Tutte le date" + +#: contrib/admin/views/auth.py:19 contrib/admin/views/main.py:257 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "%(name)s \"%(obj)s\" è stato aggiunto correttamente." + +#: contrib/admin/views/auth.py:24 contrib/admin/views/main.py:261 +#: contrib/admin/views/main.py:347 +msgid "You may edit it again below." +msgstr "È possibile modificarlo nuovamente qui sotto." + +#: contrib/admin/views/auth.py:30 +msgid "Add user" +msgstr "Aggiungi utente" + +#: contrib/admin/views/auth.py:57 +msgid "Password changed successfully." +msgstr "La password è stata cambiata correttamente." + +#: contrib/admin/views/auth.py:64 +#, python-format +msgid "Change password: %s" +msgstr "Cambia la password: %s" + +#: contrib/admin/views/decorators.py:10 contrib/auth/forms.py:60 msgid "" -"We've e-mailed a new password to the e-mail address you submitted. You " -"should be receiving it shortly." -msgstr "La nuova password è stata inviata all'indirizzo e-mail inserito. Arriverà a breve." +"Please enter a correct username and password. Note that both fields are case-" +"sensitive." +msgstr "" +"Inserire nome utente e password corretti. Entrambi i campi sono case " +"sensitive." -#: contrib/admin/templates/registration/password_change_form.html:4 -#: contrib/admin/templates/registration/password_change_form.html:6 -#: contrib/admin/templates/registration/password_change_form.html:10 -#: contrib/admin/templates/registration/password_change_done.html:4 -msgid "Password change" -msgstr "Cambio password" +#: contrib/admin/views/decorators.py:62 +msgid "" +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." +msgstr "" +"La sessione è scaduta: occorre accedere nuovamente. I dati inseriti sono " +"stati comunquesalvati." -#: contrib/admin/templates/registration/password_change_form.html:12 +#: contrib/admin/views/decorators.py:69 msgid "" -"Please enter your old password, for security's sake, and then enter your new " -"password twice so we can verify you typed it in correctly." -msgstr "Inserire l'attuale password, per ragioni di sicurezza, e poi la nuova password due volte, per verificare di averla scritta correttamente." +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." +msgstr "" +"Il browser non sembra configurato per accettare i cookie. Una volta " +"abilitati, ricaricare la pagina e riprovare." -#: contrib/admin/templates/registration/password_change_form.html:17 -msgid "Old password:" -msgstr "Password attuale:" +#: contrib/admin/views/decorators.py:83 +msgid "Usernames cannot contain the '@' character." +msgstr "I nomi utente non possono contenere il carattere '@'." -#: contrib/admin/templates/registration/password_change_form.html:19 -msgid "New password:" -msgstr "Nuova password:" +#: contrib/admin/views/decorators.py:85 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." +msgstr "" +"Il nome utente non è costituito dall'indirizzo e-mail. Provare con '%s'." -#: contrib/admin/templates/registration/password_change_form.html:21 -msgid "Confirm password:" -msgstr "Confermare la password:" +#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 +msgid "tag:" +msgstr "tag:" -#: contrib/admin/templates/registration/password_change_form.html:23 -msgid "Change my password" -msgstr "Modifica la mia password" +#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 +msgid "filter:" +msgstr "filtro:" -#: contrib/admin/templates/registration/password_change_done.html:6 -#: contrib/admin/templates/registration/password_change_done.html:10 -msgid "Password change successful" -msgstr "Cambio di password avvenuto correttamente" +#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 +msgid "view:" +msgstr "view:" -#: contrib/admin/templates/registration/password_change_done.html:12 -msgid "Your password was changed." -msgstr "La password è stata cambiata." +#: contrib/admin/views/doc.py:164 +#, python-format +msgid "App %r not found" +msgstr "Appl. %r non trovata" -#: contrib/sites/models.py:10 -msgid "domain name" -msgstr "nome di dominio" +#: contrib/admin/views/doc.py:171 +#, fuzzy, python-format +msgid "Model %(name)r not found in app %(label)r" +msgstr "Modello %r non trovato nell'appl. %r" -#: contrib/sites/models.py:11 -msgid "display name" -msgstr "nome visualizzato" +#: contrib/admin/views/doc.py:183 +#, fuzzy, python-format +msgid "the related `%(label)s.%(type)s` object" +msgstr "l'oggetto `%s.%s` collegato" -#: contrib/sites/models.py:15 -msgid "site" -msgstr "sito" +#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 +msgid "model:" +msgstr "modello:" -#: contrib/sites/models.py:16 -msgid "sites" -msgstr "siti" +#: contrib/admin/views/doc.py:214 +#, fuzzy, python-format +msgid "related `%(label)s.%(name)s` objects" +msgstr "oggetti `%s.%s` collegati" -#: contrib/flatpages/models.py:8 -msgid "Example: '/about/contact/'. Make sure to have leading and trailing slashes." -msgstr "Esempio: '/about/contact/'. Assicurarsi di inserire le barre diagonali iniziali e finali." +#: contrib/admin/views/doc.py:219 +#, python-format +msgid "all %s" +msgstr "tutti %s" -#: contrib/flatpages/models.py:9 -msgid "title" -msgstr "titolo" +#: contrib/admin/views/doc.py:224 +#, python-format +msgid "number of %s" +msgstr "numero di %s" -#: contrib/flatpages/models.py:10 -msgid "content" -msgstr "contenuto" +#: contrib/admin/views/doc.py:229 +#, python-format +msgid "Fields on %s objects" +msgstr "Campi sugli oggetti %s" -#: contrib/flatpages/models.py:11 -msgid "enable comments" -msgstr "abilita commenti" +#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 +msgid "Integer" +msgstr "Intero" -#: contrib/flatpages/models.py:12 -msgid "template name" -msgstr "nome modello" +#: contrib/admin/views/doc.py:292 +msgid "Boolean (Either True or False)" +msgstr "Booleano (True o False)" -#: contrib/flatpages/models.py:13 +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 +#, python-format +msgid "String (up to %(maxlength)s)" +msgstr "Stringa (fino a %(maxlength)s caratteri)" + +#: contrib/admin/views/doc.py:294 +msgid "Comma-separated integers" +msgstr "Interi separati da virgola" + +#: contrib/admin/views/doc.py:295 +msgid "Date (without time)" +msgstr "Data (senza orario)" + +#: contrib/admin/views/doc.py:296 +msgid "Date (with time)" +msgstr "Data (con orario)" + +#: contrib/admin/views/doc.py:297 +msgid "E-mail address" +msgstr "Indirizzo e-mail" + +#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 +msgid "File path" +msgstr "Percorso di file" + +#: contrib/admin/views/doc.py:300 +msgid "Decimal number" +msgstr "Numero decimale" + +#: contrib/admin/views/doc.py:304 contrib/comments/models.py:85 +msgid "IP address" +msgstr "indirizzo IP" + +#: contrib/admin/views/doc.py:306 +msgid "Boolean (Either True, False or None)" +msgstr "Booleano (True, False o None)" + +#: contrib/admin/views/doc.py:307 +msgid "Relation to parent model" +msgstr "Collegamento a modello padre" + +#: contrib/admin/views/doc.py:308 +msgid "Phone number" +msgstr "Numero di telefono" + +#: contrib/admin/views/doc.py:313 +msgid "Text" +msgstr "Testo" + +#: contrib/admin/views/doc.py:314 +msgid "Time" +msgstr "Orario" + +#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 +msgid "URL" +msgstr "URL" + +#: contrib/admin/views/doc.py:316 +msgid "U.S. state (two uppercase letters)" +msgstr "Stato USA (due lettere maiuscole)" + +#: contrib/admin/views/doc.py:317 +msgid "XML text" +msgstr "Testo XML" + +#: contrib/admin/views/doc.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "%s non sembra essere un oggetto urlpattern" + +#: contrib/admin/views/main.py:223 +msgid "Site administration" +msgstr "Amministrazione sito" + +#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 +#, python-format +msgid "You may add another %s below." +msgstr "È possibile aggiungere un altro %s qui sotto." + +#: contrib/admin/views/main.py:289 +#, python-format +msgid "Add %s" +msgstr "Aggiungere %s" + +#: contrib/admin/views/main.py:335 +#, python-format +msgid "Added %s." +msgstr "Aggiunto %s" + +#: contrib/admin/views/main.py:335 contrib/admin/views/main.py:337 +#: contrib/admin/views/main.py:339 db/models/manipulators.py:308 +msgid "and" +msgstr "e" + +#: contrib/admin/views/main.py:337 +#, python-format +msgid "Changed %s." +msgstr "Modificato %s." + +#: contrib/admin/views/main.py:339 +#, python-format +msgid "Deleted %s." +msgstr "Cancellato %s" + +#: contrib/admin/views/main.py:342 +msgid "No fields changed." +msgstr "Nessun campo modificato." + +#: contrib/admin/views/main.py:345 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "%(name)s \"%(obj)s\" è stato modificato correttamente." + +#: contrib/admin/views/main.py:353 +#, python-format msgid "" -"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " -"will use 'flatpages/default.html'." -msgstr "Esempio: 'flatpages/contact_page.html'. Se non specificato, il sistema userà 'flatpages/default.html'." +"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "" +"%(name)s \"%(obj)s\" è stato aggiunto correttamente. È possibile modificarlo " +"nuovamente qui sotto." -#: contrib/flatpages/models.py:14 -msgid "registration required" -msgstr "registrazione obbligatoria" +#: contrib/admin/views/main.py:391 +#, python-format +msgid "Change %s" +msgstr "Modificare %s" -#: contrib/flatpages/models.py:14 -msgid "If this is checked, only logged-in users will be able to view the page." -msgstr "Se selezionato, solo gli utenti che hanno effettuato l'accesso potranno vedere la pagina." +#: contrib/admin/views/main.py:476 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +msgstr "Uno o più %(fieldname)s in %(name)s: %(obj)s" -#: contrib/flatpages/models.py:18 -msgid "flat page" -msgstr "pagina statica" +#: contrib/admin/views/main.py:481 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" +msgstr "Uno o più %(fieldname)s in %(name)s:" -#: contrib/flatpages/models.py:19 -msgid "flat pages" -msgstr "pagine statiche" +#: contrib/admin/views/main.py:514 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "%(name)s \"%(obj)s\" è stato cancellato correttamente." -#: contrib/redirects/models.py:7 -msgid "redirect from" -msgstr "redirigi da" +#: contrib/admin/views/main.py:517 +msgid "Are you sure?" +msgstr "Sei sicuro?" -#: contrib/redirects/models.py:8 +#: contrib/admin/views/main.py:539 +#, python-format +msgid "Change history: %s" +msgstr "Tracciato delle modifiche: %s" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s" +msgstr "Seleziona %s" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s to change" +msgstr "Seleziona %s per modificare" + +#: contrib/admin/views/main.py:768 +msgid "Database error" +msgstr "Errore nel database" + +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 +msgid "The two password fields didn't match." +msgstr "I due campi password non corrispondono." + +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." +msgstr "Un utente con questo nome·è già presente." + +#: contrib/auth/forms.py:53 msgid "" -"This should be an absolute path, excluding the domain name. Example: '/" -"events/search/'." -msgstr "Deve essere un percorso assoluto, senza nome di dominio. Esempio: '/events/search/'." +"Your Web browser doesn't appear to have cookies enabled. Cookies are " +"required for logging in." +msgstr "" +"Il browser web sembra non avere i cookie abilitati. I cookie sono necessari " +"per poter accedere." -#: contrib/redirects/models.py:9 -msgid "redirect to" -msgstr "redirigi verso" +#: contrib/auth/forms.py:62 +msgid "This account is inactive." +msgstr "Questo account non è attivo." -#: contrib/redirects/models.py:10 +#: contrib/auth/forms.py:85 msgid "" -"This can be either an absolute path (as above) or a full URL starting with " -"'http://'." -msgstr "Può essere un percorso assoluto (come sopra) o una URL completa che inizia con 'http://'." +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "" +"Questo indirizzo email non è associato ad alcun account utente. Sei sicuro " +"di esserti registrato?" -#: contrib/redirects/models.py:13 -msgid "redirect" -msgstr "redirezione" +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." +msgstr "I due campi 'nuova password' non corrispondono." -#: contrib/redirects/models.py:14 -msgid "redirects" -msgstr "redirezioni" +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." +msgstr "" +"La vecchia password non è stata inserita correttamente: va inserita di nuovo." + +#: contrib/auth/models.py:38 contrib/auth/models.py:58 +msgid "name" +msgstr "nome" + +#: contrib/auth/models.py:40 +msgid "codename" +msgstr "nome in codice" + +#: contrib/auth/models.py:43 +msgid "permission" +msgstr "permesso" + +#: contrib/auth/models.py:44 contrib/auth/models.py:59 +msgid "permissions" +msgstr "permessi" + +#: contrib/auth/models.py:62 +msgid "group" +msgstr "gruppo" + +#: contrib/auth/models.py:63 contrib/auth/models.py:103 +msgid "groups" +msgstr "gruppi" + +#: contrib/auth/models.py:93 +msgid "username" +msgstr "nome utente" + +#: contrib/auth/models.py:93 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." +msgstr "" +"Obbligatorio. 30 caratteri o meno. Solo caratteri alfanumerici (lettere, " +"cifre e sottolineature)." + +#: contrib/auth/models.py:94 +msgid "first name" +msgstr "nome" + +#: contrib/auth/models.py:95 +msgid "last name" +msgstr "cognome" + +#: contrib/auth/models.py:96 +msgid "e-mail address" +msgstr "indirizzo e-mail" + +#: contrib/auth/models.py:97 +msgid "password" +msgstr "password" + +#: contrib/auth/models.py:97 +msgid "" +"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " +"password form</a>." +msgstr "" +"Usare '[algo]$[salt]$[hexdigest]' oppure la maschera di <a href=\"password/" +"\">cambio password</a>." + +#: contrib/auth/models.py:98 +msgid "staff status" +msgstr "privilegi di staff" + +#: contrib/auth/models.py:98 +msgid "Designates whether the user can log into this admin site." +msgstr "Indica se l'utente può accedere a questo sito di amministrazione." + +#: contrib/auth/models.py:99 +msgid "active" +msgstr "attivo" + +#: contrib/auth/models.py:99 +msgid "" +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." +msgstr "" +"Indica se l'utente può accedere all'amministrazione di Django. Deselezionare " +"qui, piuttosto che cancellare gli account." + +#: contrib/auth/models.py:100 +msgid "superuser status" +msgstr "privilegi di superutente" + +#: contrib/auth/models.py:100 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "" +"Indica che l'utente ha tutti i privilegi, senza che siano stati assegnati " +"esplicitamente." + +#: contrib/auth/models.py:101 +msgid "last login" +msgstr "ultimo accesso" + +#: contrib/auth/models.py:102 +msgid "date joined" +msgstr "iscritto in data" + +#: contrib/auth/models.py:104 +msgid "" +"In addition to the permissions manually assigned, this user will also get " +"all permissions granted to each group he/she is in." +msgstr "" +"In aggiunta ai privilegi assegnati manualmente, l'utente riceverà anche " +"tutti i privilegi assegnati ad ogni gruppo cui appartiene." + +#: contrib/auth/models.py:105 +msgid "user permissions" +msgstr "privilegi utente" + +#: contrib/auth/models.py:109 +msgid "user" +msgstr "utente" + +#: contrib/auth/models.py:110 +msgid "users" +msgstr "utenti" + +#: contrib/auth/models.py:116 +msgid "Personal info" +msgstr "Informazioni personali" + +#: contrib/auth/models.py:117 +msgid "Permissions" +msgstr "Privilegi" + +#: contrib/auth/models.py:118 +msgid "Important dates" +msgstr "Date importanti" + +#: contrib/auth/models.py:119 +msgid "Groups" +msgstr "Gruppi" + +#: contrib/auth/models.py:263 +msgid "message" +msgstr "messaggio" + +#: contrib/auth/views.py:39 +msgid "Logged out" +msgstr "Accesso annullato" #: contrib/comments/models.py:67 contrib/comments/models.py:166 msgid "object ID" @@ -1715,7 +1333,9 @@ msgstr "è rimosso" msgid "" "Check this box if the comment is inappropriate. A \"This comment has been " "removed\" message will be displayed instead." -msgstr "Spuntare la casella se il commento è inappropriato. Verrà sostituito dal messaggio \"Questo commento è stato rimosso\"." +msgstr "" +"Spuntare la casella se il commento è inappropriato. Verrà sostituito dal " +"messaggio \"Questo commento è stato rimosso\"." #: contrib/comments/models.py:91 msgid "comments" @@ -1826,21 +1446,48 @@ msgstr "cancellazioni da moderatore" msgid "Moderator deletion by %r" msgstr "Cancellazione da moderatore %r" -#: contrib/comments/views/karma.py:19 -msgid "Anonymous users cannot vote" -msgstr "Gli utenti anonimi non possono votare" +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "Hai dimenticato la password?" -#: contrib/comments/views/karma.py:23 -msgid "Invalid comment ID" -msgstr "ID commento non valido" +#: contrib/comments/templates/comments/form.html:12 +msgid "Ratings" +msgstr "Valutazioni" -#: contrib/comments/views/karma.py:25 -msgid "No voting for yourself" -msgstr "Impossibile votare per se stessi" +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Required" +msgstr "Obbligatorio" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Optional" +msgstr "Facoltativo" + +#: contrib/comments/templates/comments/form.html:23 +msgid "Post a photo" +msgstr "Invia una foto" + +#: contrib/comments/templates/comments/form.html:28 +#: contrib/comments/templates/comments/freeform.html:5 +msgid "Comment:" +msgstr "Commento:" + +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 +msgid "Preview comment" +msgstr "Anteprima commento" + +#: contrib/comments/templates/comments/freeform.html:4 +msgid "Your name:" +msgstr "Il suo nome:" #: contrib/comments/views/comments.py:27 -msgid "This rating is required because you've entered at least one other rating." -msgstr "Questa valutazione è obbligatoria perché hai inserito almeno un'altra valutazione." +msgid "" +"This rating is required because you've entered at least one other rating." +msgstr "" +"Questa valutazione è obbligatoria perché hai inserito almeno un'altra " +"valutazione." #: contrib/comments/views/comments.py:111 #, python-format @@ -1855,11 +1502,13 @@ msgid_plural "" "\n" "%(text)s" msgstr[0] "" -"Questo commento è stato inserito da un utente autore di meno di %(count)s commento:\n" +"Questo commento è stato inserito da un utente autore di meno di %(count)s " +"commento:\n" "\n" "%(text)s" msgstr[1] "" -"Questo commento è stato inserito da un utente autore di meno di %(count)s commenti:\n" +"Questo commento è stato inserito da un utente autore di meno di %(count)s " +"commenti:\n" "\n" "%(text)s" @@ -1896,135 +1545,1049 @@ msgid "" "invalid" msgstr "" "Il modulo di commento ha un parametro 'target' non valido -- l'ID " -"dell'oggetto non e` valido" +"dell'oggetto non è valido" #: contrib/comments/views/comments.py:257 #: contrib/comments/views/comments.py:321 msgid "The comment form didn't provide either 'preview' or 'post'" msgstr "Il modulo di commento non fornisce né 'anteprima' né 'invia'" -#: contrib/comments/templates/comments/form.html:8 -msgid "Forgotten your password?" -msgstr "Hai dimenticato la password?" +#: contrib/comments/views/karma.py:19 +msgid "Anonymous users cannot vote" +msgstr "Gli utenti anonimi non possono votare" -#: contrib/comments/templates/comments/form.html:12 -msgid "Ratings" -msgstr "Valutazioni" +#: contrib/comments/views/karma.py:23 +msgid "Invalid comment ID" +msgstr "ID commento non valido" -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Required" -msgstr "Obbligatorio" +#: contrib/comments/views/karma.py:25 +msgid "No voting for yourself" +msgstr "Impossibile votare per se stessi" -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Optional" -msgstr "Facoltativo" +#: contrib/contenttypes/models.py:36 +msgid "python model class name" +msgstr "nome della classe modello in Python" -#: contrib/comments/templates/comments/form.html:23 -msgid "Post a photo" -msgstr "Invia una foto" +#: contrib/contenttypes/models.py:39 +msgid "content type" +msgstr "content type" -#: contrib/comments/templates/comments/form.html:28 -#: contrib/comments/templates/comments/freeform.html:5 -msgid "Comment:" -msgstr "Commento:" +#: contrib/contenttypes/models.py:40 +msgid "content types" +msgstr "content type" -#: contrib/comments/templates/comments/form.html:35 -#: contrib/comments/templates/comments/freeform.html:10 -msgid "Preview comment" -msgstr "Anteprima commento" +#: contrib/flatpages/models.py:8 +msgid "" +"Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "" +"Esempio: '/about/contact/'. Assicurarsi di inserire le barre diagonali " +"iniziali e finali." -#: contrib/comments/templates/comments/freeform.html:4 -msgid "Your name:" -msgstr "Il suo nome:" +#: contrib/flatpages/models.py:9 +msgid "title" +msgstr "titolo" + +#: contrib/flatpages/models.py:10 +msgid "content" +msgstr "contenuto" + +#: contrib/flatpages/models.py:11 +msgid "enable comments" +msgstr "abilita commenti" + +#: contrib/flatpages/models.py:12 +msgid "template name" +msgstr "nome modello" + +#: contrib/flatpages/models.py:13 +msgid "" +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." +msgstr "" +"Esempio: 'flatpages/contact_page.html'. Se non specificato, il sistema userà " +"'flatpages/default.html'." + +#: contrib/flatpages/models.py:14 +msgid "registration required" +msgstr "registrazione obbligatoria" + +#: contrib/flatpages/models.py:14 +msgid "If this is checked, only logged-in users will be able to view the page." +msgstr "" +"Se selezionato, solo gli utenti che hanno effettuato l'accesso potranno " +"vedere la pagina." + +#: contrib/flatpages/models.py:18 +msgid "flat page" +msgstr "pagina statica" + +#: contrib/flatpages/models.py:19 +msgid "flat pages" +msgstr "pagine statiche" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:17 +#, fuzzy +msgid "st" +msgstr "º" + +#: contrib/humanize/templatetags/humanize.py:17 +#, fuzzy +msgid "nd" +msgstr "º" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "º" + +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "%(value).1f milione" +msgstr[1] "%(value).1f milioni" + +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "%(value).1f miliardo" +msgstr[1] "%(value).1f miliardi" + +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "due" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "tre" + +#: contrib/humanize/templatetags/humanize.py:68 +#, fuzzy +msgid "four" +msgstr "quattro" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "cinque" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "sei" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "sette" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "otto" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "nove" + +#: contrib/localflavor/au/forms.py:18 +#, fuzzy +msgid "Enter a 4 digit post code." +msgstr "Inserire una codici postale di 4 cifre." + +#: contrib/localflavor/br/forms.py:18 +#, fuzzy +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "Inserire un codice postale nel formato XXXXX o XXXXX-XXXX." + +#: contrib/localflavor/br/forms.py:30 +#, fuzzy +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "" +"I numeri di telefono devono essere in formato XXX-XXX-XXXX. \"%s\" non è " +"valido." + +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "" + +#: contrib/localflavor/de/de_states.py:7 +#, fuzzy +msgid "Berlin" +msgstr "Berlino" + +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "" + +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "Amburgo" + +#: contrib/localflavor/de/de_states.py:11 +#, fuzzy +msgid "Hessen" +msgstr "" + +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "" + +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "" + +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "" + +#: contrib/localflavor/de/de_states.py:16 +#, fuzzy +msgid "Saarland" +msgstr "" + +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "Sassonia" + +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "" + +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "" + +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "" + +#: contrib/localflavor/de/forms.py:16 contrib/localflavor/fi/forms.py:14 +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/it/forms.py:14 +#, fuzzy +msgid "Enter a zip code in the format XXXXX." +msgstr "Inserire un codice postale nel formato XXXXX o XXXXX-XXXX." + +#: contrib/localflavor/de/forms.py:60 +msgid "" +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." +msgstr "Inserire un numero tedesco di carta d'identità valido nel formato XXXXXXXXXXX-XXXXXXX-XXXXXXX-X." + +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:45 +#, fuzzy +msgid "Enter a valid Finnish social security number." +msgstr "Inserire un numero valido di assisstenza sociale finlandese." + +#: contrib/localflavor/jp/forms.py:21 +#, fuzzy +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "Inserire un codice postale nel formato XXXXX o XXXXX-XXXX." + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +#, fuzzy +msgid "Kanagawa" +msgstr "Kannada" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +#, fuzzy +msgid "Shimane" +msgstr "Modifica" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +#, fuzzy +msgid "Kagawa" +msgstr "Kannada" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +#, fuzzy +msgid "Ehime" +msgstr "Orario" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "" + +#: contrib/localflavor/no/forms.py:15 +#, fuzzy +msgid "Enter a zip code in the format XXXX." +msgstr "Inserire un codice postale nel formato XXXXX o XXXXX-XXXX." + +#: contrib/localflavor/no/forms.py:36 +#, fuzzy +msgid "Enter a valid Norwegian social security number." +msgstr "Inserire un numero decimale valido." #: contrib/localflavor/uk/forms.py:18 msgid "Enter a postcode. A space is required between the two postcode parts." -msgstr "Inserire un codice postale. È obbligatorio uno spazio tra le due parti del codice postale." +msgstr "" +"Inserire un codice postale. È obbligatorio uno spazio tra le due parti del " +"codice postale." -#: contrib/localflavor/usa/forms.py:17 +#: contrib/localflavor/us/forms.py:18 msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." msgstr "Inserire un codice postale nel formato XXXXX o XXXXX-XXXX." -#: contrib/sessions/models.py:51 +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "Inserire un numero di assistenza sociale statunitense valido, nel formato XXX-XX-XXXX." + +#: contrib/redirects/models.py:7 +msgid "redirect from" +msgstr "redirigi da" + +#: contrib/redirects/models.py:8 +msgid "" +"This should be an absolute path, excluding the domain name. Example: '/" +"events/search/'." +msgstr "" +"Deve essere un percorso assoluto, senza nome di dominio. Esempio: '/events/" +"search/'." + +#: contrib/redirects/models.py:9 +msgid "redirect to" +msgstr "redirigi verso" + +#: contrib/redirects/models.py:10 +msgid "" +"This can be either an absolute path (as above) or a full URL starting with " +"'http://'." +msgstr "" +"Può essere un percorso assoluto (come sopra) o una URL completa che inizia " +"con 'http://'." + +#: contrib/redirects/models.py:13 +msgid "redirect" +msgstr "redirezione" + +#: contrib/redirects/models.py:14 +msgid "redirects" +msgstr "redirezioni" + +#: contrib/sessions/models.py:68 msgid "session key" msgstr "chiave di sessione" -#: contrib/sessions/models.py:52 +#: contrib/sessions/models.py:69 msgid "session data" msgstr "dati di sessione" -#: contrib/sessions/models.py:53 +#: contrib/sessions/models.py:70 msgid "expire date" msgstr "data di scadenza" -#: contrib/sessions/models.py:57 +#: contrib/sessions/models.py:74 msgid "session" msgstr "sessione" -#: contrib/sessions/models.py:58 +#: contrib/sessions/models.py:75 msgid "sessions" msgstr "sessioni" -#: contrib/contenttypes/models.py:26 -msgid "python model class name" -msgstr "nome della classe modello in Python" +#: contrib/sites/models.py:10 +msgid "domain name" +msgstr "nome di dominio" -#: contrib/contenttypes/models.py:29 -msgid "content type" -msgstr "content type" +#: contrib/sites/models.py:11 +msgid "display name" +msgstr "nome visualizzato" -#: contrib/contenttypes/models.py:30 -msgid "content types" -msgstr "content type" +#: contrib/sites/models.py:15 +msgid "site" +msgstr "sito" + +#: contrib/sites/models.py:16 +msgid "sites" +msgstr "siti" + +#: core/validators.py:64 +msgid "This value must contain only letters, numbers and underscores." +msgstr "Questo valore può contenere solo lettere, cifre e sottolineature." + +#: core/validators.py:68 +msgid "" +"This value must contain only letters, numbers, underscores, dashes or " +"slashes." +msgstr "" +"Questo valore può contenere solo lettere, cifre, sottolineature, trattini e " +"barre diagonali." + +#: core/validators.py:72 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "" +"Questo valore può contenere solo lettere, cifre, sottolineature e trattini." + +#: core/validators.py:76 +msgid "Uppercase letters are not allowed here." +msgstr "Non sono ammesse lettere maiuscole." + +#: core/validators.py:80 +msgid "Lowercase letters are not allowed here." +msgstr "Non sono ammesse lettere minuscole." + +#: core/validators.py:87 +msgid "Enter only digits separated by commas." +msgstr "Inserire solo cifre separate da virgole." + +#: core/validators.py:99 +msgid "Enter valid e-mail addresses separated by commas." +msgstr "Inserire indirizzi e-mail validi separati da virgole." + +#: core/validators.py:103 +msgid "Please enter a valid IP address." +msgstr "Inserire un indirizzo IP valido." + +#: core/validators.py:107 +msgid "Empty values are not allowed here." +msgstr "È necessario inserire un valore." + +#: core/validators.py:111 +msgid "Non-numeric characters aren't allowed here." +msgstr "Sono ammessi soltanto caratteri numerici." -#: oldforms/__init__.py:387 +#: core/validators.py:115 +msgid "This value can't be comprised solely of digits." +msgstr "Questo valore non può essere composto solo da cifre." + +#: core/validators.py:120 newforms/fields.py:128 +msgid "Enter a whole number." +msgstr "Inserire un numero intero." + +#: core/validators.py:124 +msgid "Only alphabetical characters are allowed here." +msgstr "Sono ammessi solo caratteri alfabetici." + +#: core/validators.py:139 +msgid "Year must be 1900 or later." +msgstr "L'anno deve essere 1900 o successivo." + +#: core/validators.py:143 +#, fuzzy, python-format +msgid "Invalid date: %s" +msgstr "Data non valida: %s." + +#: core/validators.py:148 db/models/fields/__init__.py:457 +msgid "Enter a valid date in YYYY-MM-DD format." +msgstr "Inserire una data valida in formato AAAA-MM-GG." + +#: core/validators.py:153 +msgid "Enter a valid time in HH:MM format." +msgstr "Inserire un orario valido in formato OO:MM." + +#: core/validators.py:157 db/models/fields/__init__.py:526 +msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." +msgstr "Inserire una data/ora valida in formato AAAA-MM-GG OO:MM." + +#: core/validators.py:162 newforms/fields.py:271 +msgid "Enter a valid e-mail address." +msgstr "Inserire un indirizzo e-mail valido." + +#: core/validators.py:174 core/validators.py:445 oldforms/__init__.py:672 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "" +"Non è stato inviato alcun file. Verificare il tipo di codifica della form." + +#: core/validators.py:178 +msgid "" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." +msgstr "" +"Caricare un'immagine valida. Il file caricato non è un'immagine o è corrotto." + +#: core/validators.py:185 +#, python-format +msgid "The URL %s does not point to a valid image." +msgstr "La URL %s non punta ad un'immagine valida." + +#: core/validators.py:189 +#, python-format +msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." +msgstr "" +"I numeri di telefono devono essere in formato XXX-XXX-XXXX. \"%s\" non è " +"valido." + +#: core/validators.py:197 +#, python-format +msgid "The URL %s does not point to a valid QuickTime video." +msgstr "La URL %s non punta ad un video QuickTime valido." + +#: core/validators.py:201 +msgid "A valid URL is required." +msgstr "Inserire una URL valida." + +#: core/validators.py:215 +#, python-format +msgid "" +"Valid HTML is required. Specific errors are:\n" +"%s" +msgstr "" +"È richiesto HTML valido. Gli errori sono i seguenti:\n" +"%s" + +#: core/validators.py:222 +#, python-format +msgid "Badly formed XML: %s" +msgstr "XML malformato: %s" + +#: core/validators.py:239 +#, python-format +msgid "Invalid URL: %s" +msgstr "URL non valida: %s" + +#: core/validators.py:244 core/validators.py:246 +#, python-format +msgid "The URL %s is a broken link." +msgstr "La URL %s è un link non funzionante." + +#: core/validators.py:252 +msgid "Enter a valid U.S. state abbreviation." +msgstr "Inserire un valido nome di stato USA abbreviato." + +#: core/validators.py:266 +#, python-format +msgid "Watch your mouth! The word %s is not allowed here." +msgid_plural "Watch your mouth! The words %s are not allowed here." +msgstr[0] "Moderare i termini: la parola %s non è ammessa." +msgstr[1] "Moderare i termini: le parole %s non sono ammesse." + +#: core/validators.py:273 +#, python-format +msgid "This field must match the '%s' field." +msgstr "Questo campo deve corrispondere al campo '%s'." + +#: core/validators.py:292 +msgid "Please enter something for at least one field." +msgstr "Inserire qualcosa in almeno un campo." + +#: core/validators.py:301 core/validators.py:312 +msgid "Please enter both fields or leave them both empty." +msgstr "Inserire entrambi i campi o lasciarli entrambi vuoti." + +#: core/validators.py:320 +#, python-format +msgid "This field must be given if %(field)s is %(value)s" +msgstr "Questo campo è obbligatorio se %(field)s è %(value)s" + +#: core/validators.py:333 +#, python-format +msgid "This field must be given if %(field)s is not %(value)s" +msgstr "Questo campo è obbligatorio se %(field)s non è %(value)s" + +#: core/validators.py:352 +msgid "Duplicate values are not allowed." +msgstr "Non sono ammessi valori duplicati." + +#: core/validators.py:367 +#, fuzzy, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "Questo valore deve essere compreso tra %s e %s." + +#: core/validators.py:369 +#, python-format +msgid "This value must be at least %s." +msgstr "Questo valore deve essere almeno pari a %s." + +#: core/validators.py:371 +#, python-format +msgid "This value must be no more than %s." +msgstr "Questo valore non deve essere maggiore di %s." + +#: core/validators.py:407 +#, python-format +msgid "This value must be a power of %s." +msgstr "Questo valore deve essere una potenza di %s." + +#: core/validators.py:418 +msgid "Please enter a valid decimal number." +msgstr "Inserire un numero decimale valido." + +#: core/validators.py:422 +#, python-format +msgid "Please enter a valid decimal number with at most %s total digit." +msgid_plural "" +"Please enter a valid decimal number with at most %s total digits." +msgstr[0] "Inserire un numero decimale con non più di %s cifra in totale." +msgstr[1] "Inserire un numero decimale con non più di %s cifre in totale." + +#: core/validators.py:425 +#, python-format +msgid "" +"Please enter a valid decimal number with a whole part of at most %s digit." +msgid_plural "" +"Please enter a valid decimal number with a whole part of at most %s digits." +msgstr[0] "" +"Inserire un numero decimale la cui parte intera sia composta da non più di %" +"s cifra." +msgstr[1] "" +"Inserire un numero decimale la cui parte intera sia composta da non più di %" +"s cifre." + +#: core/validators.py:428 +#, python-format +msgid "Please enter a valid decimal number with at most %s decimal place." +msgid_plural "" +"Please enter a valid decimal number with at most %s decimal places." +msgstr[0] "Inserire un decimale con non più di %s cifra decimale." +msgstr[1] "Inserire un decimale con non più di %s cifre decimali." + +#: core/validators.py:438 +#, python-format +msgid "Make sure your uploaded file is at least %s bytes big." +msgstr "Verificare che il file caricato sia grande almeno %s byte." + +#: core/validators.py:439 +#, python-format +msgid "Make sure your uploaded file is at most %s bytes big." +msgstr "Verificare che il file caricato non sia più grande di %s byte." + +#: core/validators.py:456 +msgid "The format for this field is wrong." +msgstr "Il formato di questo campo non è valido." + +#: core/validators.py:471 +msgid "This field is invalid." +msgstr "Questo campo non è valido." + +#: core/validators.py:507 +#, python-format +msgid "Could not retrieve anything from %s." +msgstr "Impossibile recuperare alcunché da %s." + +#: core/validators.py:510 +#, python-format +msgid "" +"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgstr "" +"La URL %(url)s ha restituito un header Content-Type non valido: '%" +"(contenttype)s'." + +#: core/validators.py:543 +#, python-format +msgid "" +"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " +"\"%(start)s\".)" +msgstr "" +"Chiudere il tag %(tag)s a linea %(line)s. (La linea inizia con \"%(start)s" +"\".)" + +#: core/validators.py:547 +#, python-format +msgid "" +"Some text starting on line %(line)s is not allowed in that context. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Il testo che comincia a linea %(line)s non e' ammesso in questo contesto. " +"(La linea comincia con \"%(start)s\".)" + +#: core/validators.py:552 +#, python-format +msgid "" +"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"\"%(attr)s\" a linea %(line)s non è un attributo valido. (La linea comincia " +"con \"%(start)s\".)" + +#: core/validators.py:557 +#, python-format +msgid "" +"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"\"<%(tag)s>\" a linea %(line)s non è un tag valido. (La linea comincia con " +"\"%(start)s\".)" + +#: core/validators.py:561 +#, python-format +msgid "" +"A tag on line %(line)s is missing one or more required attributes. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Un tag a linea %(line)s manca di uno o più attributi richiesti. (La linea " +"comincia con \"%(start)s\".)" + +#: core/validators.py:566 +#, python-format +msgid "" +"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"L'attributo \"%(attr)s\" a linea %(line)s ha un valore non valido. (La linea " +"comincia con \"%(start)s\".)" + +#: db/models/manipulators.py:307 +#, python-format +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "%(object)s·con questo·%(type)s·esiste già per questo·%(field)s." + +#: db/models/fields/__init__.py:42 +#, python-format +msgid "%(optname)s with this %(fieldname)s already exists." +msgstr "%(optname)s·con questo·%(fieldname)s·esiste già ." + +#: db/models/fields/__init__.py:117 db/models/fields/__init__.py:274 +#: db/models/fields/__init__.py:610 db/models/fields/__init__.py:621 +#: newforms/fields.py:80 newforms/fields.py:376 newforms/fields.py:452 +#: newforms/fields.py:463 newforms/models.py:178 oldforms/__init__.py:357 +msgid "This field is required." +msgstr "Questo campo è obbligatorio." + +#: db/models/fields/__init__.py:367 +msgid "This value must be an integer." +msgstr "Questo valore deve essere un intero." + +#: db/models/fields/__init__.py:402 +msgid "This value must be either True or False." +msgstr "Questo valore deve essere True o False." + +#: db/models/fields/__init__.py:423 +msgid "This field cannot be null." +msgstr "Questo campo non può essere nullo." + +#: db/models/fields/__init__.py:630 +msgid "Enter a valid filename." +msgstr "Inserire un nome file valido." + +#: db/models/fields/__init__.py:751 +#, fuzzy +msgid "This value must be either None, True or False." +msgstr "Questo valore deve essere True o False." + +#: db/models/fields/related.py:53 +#, python-format +msgid "Please enter a valid %s." +msgstr "Inserire un %s valido." + +#: db/models/fields/related.py:642 +msgid "Separate multiple IDs with commas." +msgstr "Separare ID multipli con virgole." + +#: db/models/fields/related.py:644 +msgid "" +"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "" +"Tenere premuto \"Control\", o \"Command\" su Mac, per selezionarne più di " +"uno." + +#: db/models/fields/related.py:691 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +msgid_plural "" +"Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr[0] "" +"Inserire un ID validi per %(self)s. Il valore %(value)r non è valido." +msgstr[1] "" +"Inserire un ID validi per %(self)s. I valori %(value)r non sono validi." + +#: newforms/fields.py:103 newforms/fields.py:256 +#, python-format +msgid "Ensure this value has at most %d characters." +msgstr "Assicurarsi che questo valore non contenga più di %d caratteri." + +#: newforms/fields.py:105 newforms/fields.py:258 +#, python-format +msgid "Ensure this value has at least %d characters." +msgstr "Assicurarsi che questo valore contenga almeno %d caratteri." + +#: newforms/fields.py:130 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "Assicurarsi che questo valore sia minore o uguale a %s." + +#: newforms/fields.py:132 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "Assicurarsi che questo valore sia maggiore o uguale a %s." + +#: newforms/fields.py:165 +msgid "Enter a valid date." +msgstr "Inserire una data valida." + +#: newforms/fields.py:192 +msgid "Enter a valid time." +msgstr "Inserire un orario valido." + +#: newforms/fields.py:228 +msgid "Enter a valid date/time." +msgstr "Inserire una coppia data/orario valida." + +#: newforms/fields.py:242 +msgid "Enter a valid value." +msgstr "Inserire un valore valido." + +#: newforms/fields.py:289 newforms/fields.py:311 +msgid "Enter a valid URL." +msgstr "Inserire una URL valida." + +#: newforms/fields.py:313 +msgid "This URL appears to be a broken link." +msgstr "Questa URL non sembra funzionare." + +#: newforms/fields.py:362 newforms/models.py:165 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "" +"Selezionare un'opzione valida. La scelta effettuata non compare tra quelle " +"disponibili." + +#: newforms/fields.py:380 newforms/fields.py:456 newforms/models.py:182 +msgid "Enter a list of values." +msgstr "Inserire una lista di valori." + +#: newforms/fields.py:389 newforms/models.py:188 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "Selezionare un'opzione valida;'%s non compare tra quelle disponibili." + +#: oldforms/__init__.py:392 #, python-format msgid "Ensure your text is less than %s character." msgid_plural "Ensure your text is less than %s characters." msgstr[0] "Assicurarsi che il testo sia più corto di %s carattere." msgstr[1] "Assicurarsi che il testo sia più corto di %s caratteri." -#: oldforms/__init__.py:392 +#: oldforms/__init__.py:397 msgid "Line breaks are not allowed here." msgstr "Non sono ammessi a capo manuali." -#: oldforms/__init__.py:493 oldforms/__init__.py:566 oldforms/__init__.py:605 +#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 #, python-format msgid "Select a valid choice; '%(data)s' is not in %(choices)s." msgstr "Selezionare un'opzione valida; '%(data)s' non presente in %(choices)s." -#: oldforms/__init__.py:669 +#: oldforms/__init__.py:674 msgid "The submitted file is empty." msgstr "Il file inviato è vuoto." -#: oldforms/__init__.py:725 +#: oldforms/__init__.py:730 msgid "Enter a whole number between -32,768 and 32,767." msgstr "Inserire un numero intero compreso tra -32.768 e 32.767." -#: oldforms/__init__.py:735 +#: oldforms/__init__.py:740 msgid "Enter a positive number." msgstr "Inserire un numero positivo." -#: oldforms/__init__.py:745 +#: oldforms/__init__.py:750 msgid "Enter a whole number between 0 and 32,767." msgstr "Inserire un numero intero compreso tra 0 e 32.767." -#: views/generic/create_update.py:43 -#, python-format -msgid "The %(verbose_name)s was created successfully." -msgstr "%(verbose_name)s è stato creato correttamente." +#: template/defaultfilters.py:491 +msgid "yes,no,maybe" +msgstr "sì,no,forse" -#: views/generic/create_update.py:117 -#, python-format -msgid "The %(verbose_name)s was updated successfully." -msgstr "%(verbose_name)s è stato aggiornato correttamente." +#: utils/dateformat.py:40 +msgid "p.m." +msgstr "" -#: views/generic/create_update.py:184 -#, python-format -msgid "The %(verbose_name)s was deleted." -msgstr "%(verbose_name)s è stato cancellato." +#: utils/dateformat.py:41 +msgid "a.m." +msgstr "" + +#: utils/dateformat.py:46 +msgid "PM" +msgstr "" + +#: utils/dateformat.py:47 +msgid "AM" +msgstr "" + +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "mezzanotte" + +#: utils/dateformat.py:97 +msgid "noon" +msgstr "mezzogiorno" #: utils/dates.py:6 msgid "Monday" @@ -2214,84 +2777,40 @@ msgid_plural "minutes" msgstr[0] "minuto" msgstr[1] "minuti" -#: utils/translation/trans_real.py:362 +#: utils/translation/trans_real.py:358 msgid "DATE_FORMAT" msgstr "j F Y" -#: utils/translation/trans_real.py:363 +#: utils/translation/trans_real.py:359 msgid "DATETIME_FORMAT" msgstr "j F Y, H:i" -#: utils/translation/trans_real.py:364 +#: utils/translation/trans_real.py:360 msgid "TIME_FORMAT" msgstr "H:i" -#: utils/translation/trans_real.py:380 +#: utils/translation/trans_real.py:376 msgid "YEAR_MONTH_FORMAT" msgstr "Y F" -#: utils/translation/trans_real.py:381 +#: utils/translation/trans_real.py:377 msgid "MONTH_DAY_FORMAT" msgstr "F j" -#: template/defaultfilters.py:490 -msgid "yes,no,maybe" -msgstr "sì,no,forse" - -#: newforms/fields.py:101 newforms/fields.py:254 -#, python-format -msgid "Ensure this value has at most %d characters." -msgstr "Assicurarsi che questo valore non contenga più di %d caratteri." - -#: newforms/fields.py:103 newforms/fields.py:256 -#, python-format -msgid "Ensure this value has at least %d characters." -msgstr "Assicurarsi che questo valore contenga almeno %d caratteri." - -#: newforms/fields.py:128 +#: views/generic/create_update.py:43 #, python-format -msgid "Ensure this value is less than or equal to %s." -msgstr "Assicurarsi che questo valore sia minore o uguale a %s." +msgid "The %(verbose_name)s was created successfully." +msgstr "%(verbose_name)s è stato creato correttamente." -#: newforms/fields.py:130 +#: views/generic/create_update.py:117 #, python-format -msgid "Ensure this value is greater than or equal to %s." -msgstr "Assicurarsi che questo valore sia maggiore o uguale a %s." - -#: newforms/fields.py:163 -msgid "Enter a valid date." -msgstr "Inserire una data valida." - -#: newforms/fields.py:190 -msgid "Enter a valid time." -msgstr "Inserire un orario valido." - -#: newforms/fields.py:226 -msgid "Enter a valid date/time." -msgstr "Inserire una coppia data/orario valida." - -#: newforms/fields.py:240 -msgid "Enter a valid value." -msgstr "Inserire un valore valido." - -#: newforms/fields.py:287 newforms/fields.py:309 -msgid "Enter a valid URL." -msgstr "Inserire una URL valida." - -#: newforms/fields.py:311 -msgid "This URL appears to be a broken link." -msgstr "Questa URL non sembra funzionare." - -#: newforms/fields.py:360 newforms/models.py:164 -msgid "Select a valid choice. That choice is not one of the available choices." -msgstr "Selezionare un'opzione valida. La scelta effettuata non compare tra quelle disponibili." - -#: newforms/fields.py:378 newforms/fields.py:454 newforms/models.py:181 -msgid "Enter a list of values." -msgstr "Inserire una lista di valori." +msgid "The %(verbose_name)s was updated successfully." +msgstr "%(verbose_name)s è stato aggiornato correttamente." -#: newforms/fields.py:387 newforms/models.py:187 +#: views/generic/create_update.py:184 #, python-format -msgid "Select a valid choice. %s is not one of the available choices." -msgstr "Selezionare un'opzione valida;'%s non compare tra quelle disponibili." +msgid "The %(verbose_name)s was deleted." +msgstr "%(verbose_name)s è stato cancellato." +#~ msgid "Have you <a href=\"/password_reset/\">forgotten your password</a>?" +#~ msgstr "Hai <a href=\"/password_reset/\">dimenticato la password</a>?" diff --git a/django/conf/locale/ko/LC_MESSAGES/django.mo b/django/conf/locale/ko/LC_MESSAGES/django.mo Binary files differnew file mode 100644 index 0000000000..58e97b496e --- /dev/null +++ b/django/conf/locale/ko/LC_MESSAGES/django.mo diff --git a/django/conf/locale/ko/LC_MESSAGES/django.po b/django/conf/locale/ko/LC_MESSAGES/django.po new file mode 100644 index 0000000000..476f7316ba --- /dev/null +++ b/django/conf/locale/ko/LC_MESSAGES/django.po @@ -0,0 +1,2797 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Django 1.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-04-24 12:33+0900\n" +"PO-Revision-Date: 2007-04-06 11:04+0900\n" +"Last-Translator: Sung-Jin Hong <serialx.net@gmail.com>\n" +"Language-Team: Korean\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: db/models/manipulators.py:307 +#, python-format +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "%(field)s ì— ìž…ë ¥ëœ ê°’ì€ %(type)s ì˜ %(object)s ì— ì´ë¯¸ 존재합니다." + +#: db/models/manipulators.py:308 contrib/admin/views/main.py:335 +#: contrib/admin/views/main.py:337 contrib/admin/views/main.py:339 +msgid "and" +msgstr "ë˜í•œ" + +#: db/models/fields/__init__.py:42 +#, python-format +msgid "%(optname)s with this %(fieldname)s already exists." +msgstr "%(fieldname)s ì˜ %(optname)s (ì€)는 ì´ë¯¸ 존재합니다." + +#: db/models/fields/__init__.py:117 db/models/fields/__init__.py:274 +#: db/models/fields/__init__.py:610 db/models/fields/__init__.py:621 +#: newforms/fields.py:80 newforms/fields.py:376 newforms/fields.py:452 +#: newforms/fields.py:463 newforms/models.py:178 oldforms/__init__.py:357 +msgid "This field is required." +msgstr "필수 í•목입니다." + +#: db/models/fields/__init__.py:367 +msgid "This value must be an integer." +msgstr "ì •ìˆ˜ ê°’ì„ ì‚¬ìš©í•˜ì„¸ìš”." + +#: db/models/fields/__init__.py:402 +msgid "This value must be either True or False." +msgstr "True ë˜ëŠ” False ê°’ì„ ì‚¬ìš©í•˜ì„¸ìš”." + +#: db/models/fields/__init__.py:423 +msgid "This field cannot be null." +msgstr "ì´ í•„ë“œëŠ” null ê°’ì€ ì‚¬ìš©í• ìˆ˜ 없습니다. " + +#: db/models/fields/__init__.py:457 core/validators.py:148 +msgid "Enter a valid date in YYYY-MM-DD format." +msgstr "ë‚ ì§œëŠ” YYYY-MM-DD 형ì‹ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš”." + +#: db/models/fields/__init__.py:526 core/validators.py:157 +msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." +msgstr "ë‚ ì§œ/시ê°ì„ YYYY-MM-DD HH:MM 형ì‹ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš”." + +#: db/models/fields/__init__.py:630 +msgid "Enter a valid filename." +msgstr "올바른 파ì¼ëª…ì„ ìž…ë ¥í•˜ì„¸ìš”." + +#: db/models/fields/__init__.py:751 +msgid "This value must be either None, True or False." +msgstr "None, True ë˜ëŠ” False ê°’ì„ ì‚¬ìš©í•˜ì„¸ìš”." + +#: db/models/fields/related.py:53 +#, python-format +msgid "Please enter a valid %s." +msgstr "올바른 %s (ì„)를 ìž…ë ¥í•˜ì„¸ìš”." + +#: db/models/fields/related.py:642 +msgid "Separate multiple IDs with commas." +msgstr "복수 ID는 콤마로 구분해 주세요." + +#: db/models/fields/related.py:644 +msgid "" +"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "" +"복수 ì„ íƒ ì‹œì—는 \"Control\" 키를 누른 ìƒíƒœì—서 ì„ íƒí•´ 주세요.(Macì€ " +"\"Command\" 키)" + +#: db/models/fields/related.py:691 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +msgid_plural "" +"Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr[0] "" +"올바른 %(self)s ID를 ìž…ë ¥í•´ 주세요. %(value)r (ì€)는 ì ì ˆì¹˜ 않습니다." +msgstr[1] "" +"올바른 %(self)s ID를 ìž…ë ¥í•´ 주세요. %(value)r (ì€)는 ì ì ˆì¹˜ 않습니다." + +#: conf/global_settings.py:39 +msgid "Arabic" +msgstr "ì•„ëžì–´" + +#: conf/global_settings.py:40 +msgid "Bengali" +msgstr "방글ë¼ë°ì‹œì–´" + +#: conf/global_settings.py:41 +msgid "Catalan" +msgstr "카탈로니아어" + +#: conf/global_settings.py:42 +msgid "Czech" +msgstr "체코어" + +#: conf/global_settings.py:43 +msgid "Welsh" +msgstr "웨ì¼ì¦ˆì–´" + +#: conf/global_settings.py:44 +msgid "Danish" +msgstr "ë´ë§ˆí¬ì–´" + +#: conf/global_settings.py:45 +msgid "German" +msgstr "ë…ì¼ì–´" + +#: conf/global_settings.py:46 +msgid "Greek" +msgstr "그리스어" + +#: conf/global_settings.py:47 +msgid "English" +msgstr "ì˜ì–´" + +#: conf/global_settings.py:48 +msgid "Spanish" +msgstr "스페ì¸ì–´" + +#: conf/global_settings.py:49 +msgid "Argentinean Spanish" +msgstr "아르헨티나_스페ì¸ì–´" + +#: conf/global_settings.py:50 +msgid "Finnish" +msgstr "핀란드어" + +#: conf/global_settings.py:51 +msgid "French" +msgstr "프랑스어" + +#: conf/global_settings.py:52 +msgid "Galician" +msgstr "갈리시아어" + +#: conf/global_settings.py:53 +msgid "Hungarian" +msgstr "í—가리어" + +#: conf/global_settings.py:54 +msgid "Hebrew" +msgstr "히브리어" + +#: conf/global_settings.py:55 +msgid "Icelandic" +msgstr "ì•„ì´ìŠ¬ëž€ë“œì–´" + +#: conf/global_settings.py:56 +msgid "Italian" +msgstr "ì´íƒˆë¦¬ì•„ì–´" + +#: conf/global_settings.py:57 +msgid "Japanese" +msgstr "ì¼ë³¸ì–´" + +#: conf/global_settings.py:58 +msgid "Korean" +msgstr "한êµì–´" + +#: conf/global_settings.py:59 +msgid "Kannada" +msgstr "칸나다어" + +#: conf/global_settings.py:60 +msgid "Latvian" +msgstr "ë¼íŠ¸ë¹„ì•„ì–´" + +#: conf/global_settings.py:61 +msgid "Macedonian" +msgstr "마케ë„니아어" + +#: conf/global_settings.py:62 +msgid "Dutch" +msgstr "네ëœëž€ë“œì–´" + +#: conf/global_settings.py:63 +msgid "Norwegian" +msgstr "노르웨ì´ì–´" + +#: conf/global_settings.py:64 +msgid "Polish" +msgstr "í´ëž€ë“œì–´" + +#: conf/global_settings.py:65 +msgid "Portugese" +msgstr "í¬ë¥´íˆ¬ê°ˆì–´" + +#: conf/global_settings.py:66 +msgid "Brazilian" +msgstr "브ë¼ì§ˆì–´" + +#: conf/global_settings.py:67 +msgid "Romanian" +msgstr "루마니아어" + +#: conf/global_settings.py:68 +msgid "Russian" +msgstr "러시아어" + +#: conf/global_settings.py:69 +msgid "Slovak" +msgstr "슬로바키아어" + +#: conf/global_settings.py:70 +msgid "Slovenian" +msgstr "ìŠ¬ë¡œë² ë‹ˆì•„ì–´" + +#: conf/global_settings.py:71 +msgid "Serbian" +msgstr "세르비아어" + +#: conf/global_settings.py:72 +msgid "Swedish" +msgstr "스웨ë´ì–´" + +#: conf/global_settings.py:73 +msgid "Tamil" +msgstr "타밀어" + +#: conf/global_settings.py:74 +msgid "Telugu" +msgstr "텔루구어" + +#: conf/global_settings.py:75 +msgid "Turkish" +msgstr "터키어" + +#: conf/global_settings.py:76 +msgid "Ukrainian" +msgstr "ìš°í¬ë¼ì´ë‚˜ì–´" + +#: conf/global_settings.py:77 +msgid "Simplified Chinese" +msgstr "중êµì–´ ê°„ì²´" + +#: conf/global_settings.py:78 +msgid "Traditional Chinese" +msgstr "중êµì–´ 번체" + +#: core/validators.py:64 +msgid "This value must contain only letters, numbers and underscores." +msgstr "문ìž, 숫ìž, '_'ë§Œ 가능합니다." + +#: core/validators.py:68 +msgid "" +"This value must contain only letters, numbers, underscores, dashes or " +"slashes." +msgstr "문ìž, 숫ìž, '_', '-', '/'ë§Œ 가능합니다." + +#: core/validators.py:72 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "문ìž, 숫ìž, '_', '-'ë§Œ 가능합니다." + +#: core/validators.py:76 +msgid "Uppercase letters are not allowed here." +msgstr "대문ìžëŠ” ì‚¬ìš©í• ìˆ˜ 없습니다." + +#: core/validators.py:80 +msgid "Lowercase letters are not allowed here." +msgstr "소문ìžëŠ” ì‚¬ìš©í• ìˆ˜ 없습니다." + +#: core/validators.py:87 +msgid "Enter only digits separated by commas." +msgstr "콤마로 êµ¬ë¶„ëœ ìˆ«ìžë§Œ ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:99 +msgid "Enter valid e-mail addresses separated by commas." +msgstr "콤마로 êµ¬ë¶„ëœ ì´ë©”ì¼ ì£¼ì†Œë§Œ ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:103 +msgid "Please enter a valid IP address." +msgstr "올바른 IP 주소를 ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:107 +msgid "Empty values are not allowed here." +msgstr "반드시 ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:111 +msgid "Non-numeric characters aren't allowed here." +msgstr "숫ìžë§Œ ì‚¬ìš©í• ìˆ˜ 있습니다." + +#: core/validators.py:115 +msgid "This value can't be comprised solely of digits." +msgstr "숫ìžë§Œ ì‚¬ìš©í• ìˆ˜ëŠ” 없습니다." + +#: core/validators.py:120 newforms/fields.py:128 +msgid "Enter a whole number." +msgstr "ì •ìˆ˜ë¥¼ ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:124 +msgid "Only alphabetical characters are allowed here." +msgstr "문ìžë§Œ ì‚¬ìš©í• ìˆ˜ 있습니다." + +#: core/validators.py:139 +msgid "Year must be 1900 or later." +msgstr "1900ë…„ ì´í›„ì˜ ì—°ë„ë§Œ 가능" + +#: core/validators.py:143 +#, python-format +msgid "Invalid date: %s" +msgstr "ë‚ ì§œê°€ ë¶€ì ì ˆí•©ë‹ˆë‹¤.: %s" + +#: core/validators.py:153 +msgid "Enter a valid time in HH:MM format." +msgstr "시ê°ì€ HH:MM 형ì‹ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:162 newforms/fields.py:271 +msgid "Enter a valid e-mail address." +msgstr "올바른 ì´ë©”ì¼ ì£¼ì†Œë¥¼ ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:174 core/validators.py:445 oldforms/__init__.py:672 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "등ë¡ëœ 파ì¼ì´ 없습니다. ì¸ì½”딩 형ì‹ì„ 확ì¸í•˜ì„¸ìš”." + +#: core/validators.py:178 +msgid "" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." +msgstr "" +"올바른 ì´ë¯¸ì§€ë¥¼ 업로드하세요.ì—…ë¡œë“œí•˜ì‹ íŒŒì¼ì€ ì´ë¯¸ì§€ 파ì¼ì´ 아니거나 파ì¼ì´ " +"ê¹¨ì ¸ 있습니다." + +#: core/validators.py:185 +#, python-format +msgid "The URL %s does not point to a valid image." +msgstr "해당 URL %s (ì€)는 올바른 ì´ë¯¸ì§€ê°€ 아닙니다." + +#: core/validators.py:189 +#, python-format +msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." +msgstr "" +"ì „í™”ë²ˆí˜¸ëŠ” xxx-xxx-xxxx 형ì‹ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš”. \"%s\" (ì€)는 ë¶€ì ì ˆí•©ë‹ˆë‹¤." + +#: core/validators.py:197 +#, python-format +msgid "The URL %s does not point to a valid QuickTime video." +msgstr "해당 URL %s (ì€)는 올바른 QuickTime videoê°€ 아닙니다." + +#: core/validators.py:201 +msgid "A valid URL is required." +msgstr "올바른 URLì„ ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:215 +#, python-format +msgid "" +"Valid HTML is required. Specific errors are:\n" +"%s" +msgstr "" +"올바른 HTMLì„ ìž…ë ¥í•˜ì„¸ìš”. 오류:\n" +"%s" + +#: core/validators.py:222 +#, python-format +msgid "Badly formed XML: %s" +msgstr "ìž˜ëª»ëœ í˜•ì‹ì˜ XML: %s" + +#: core/validators.py:239 +#, python-format +msgid "Invalid URL: %s" +msgstr "ë¶€ì ì ˆí•œ URL: %s" + +#: core/validators.py:244 core/validators.py:246 +#, python-format +msgid "The URL %s is a broken link." +msgstr "해당 URL %s ë§í¬ê°€ 깨졌습니다." + +#: core/validators.py:252 +msgid "Enter a valid U.S. state abbreviation." +msgstr "올바른 미êµì˜ ì£¼ì˜ ì•½ì–´ë¥¼ ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:266 +#, python-format +msgid "Watch your mouth! The word %s is not allowed here." +msgid_plural "Watch your mouth! The words %s are not allowed here." +msgstr[0] "비ì†ì–´/욕설입니다. %s (ì€)는 사용하실 수 없습니다." +msgstr[1] "비ì†ì–´/욕설입니다. %s (ì€)는 사용하실 수 없습니다." + +#: core/validators.py:273 +#, python-format +msgid "This field must match the '%s' field." +msgstr "ì´ í•„ë“œëŠ” '%s' 필드와 ì¼ì¹˜í•´ì•¼ 합니다." + +#: core/validators.py:292 +msgid "Please enter something for at least one field." +msgstr "하나 ì´ìƒì˜ í•„ë“œì— ìž…ë ¥í•´ 주세요." + +#: core/validators.py:301 core/validators.py:312 +msgid "Please enter both fields or leave them both empty." +msgstr "양쪽 í•„ë“œì— ëª¨ë‘ ìž…ë ¥í•˜ì‹œê±°ë‚˜, ëª¨ë‘ ë¹ˆì¹¸ìœ¼ë¡œ í•´ 주ì‹ì‹œì˜¤." + +#: core/validators.py:320 +#, python-format +msgid "This field must be given if %(field)s is %(value)s" +msgstr "%(field)s (ì´)ê°€ %(value)s ì¼ ê²½ìš°, ì´ í•„ë“œì— ë°˜ë“œì‹œ ìž…ë ¥í•´ 주세요." + +#: core/validators.py:333 +#, python-format +msgid "This field must be given if %(field)s is not %(value)s" +msgstr "" +"%(field)s (ì´)ê°€ %(value)s (ì´)ê°€ ì•„ë‹ ê²½ìš°, ì´ í•„ë“œì— ë°˜ë“œì‹œ ìž…ë ¥í•´ 주세요." + +#: core/validators.py:352 +msgid "Duplicate values are not allowed." +msgstr "중복해서 ì‚¬ìš©í• ìˆ˜ 없습니다." + +#: core/validators.py:367 +#, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "%(lower)s ì—서 %(upper)s 사ì´ì˜ ê°’ì„ ì‚¬ìš©í•´ 주세요." + +#: core/validators.py:369 +#, python-format +msgid "This value must be at least %s." +msgstr "%s ì´ìƒì˜ ê°’ì„ ì‚¬ìš©í•´ 주세요." + +#: core/validators.py:371 +#, python-format +msgid "This value must be no more than %s." +msgstr "%s ì´í•˜ì˜ ê°’ì„ ì‚¬ìš©í•´ 주세요." + +#: core/validators.py:407 +#, python-format +msgid "This value must be a power of %s." +msgstr "%s ì œê³±ì˜ ê°’ì„ ì‚¬ìš©í•´ 주세요." + +#: core/validators.py:418 +msgid "Please enter a valid decimal number." +msgstr "10진수를 사용해 주세요." + +#: core/validators.py:422 +#, python-format +msgid "Please enter a valid decimal number with at most %s total digit." +msgid_plural "" +"Please enter a valid decimal number with at most %s total digits." +msgstr[0] "ì „ì²´ %s ìžë¦¬ ì´í•˜ì˜ 10진수를 ìž…ë ¥í•˜ì„¸ìš”." +msgstr[1] "ì „ì²´ %s ìžë¦¬ ì´í•˜ì˜ 10진수를 ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:425 +#, python-format +msgid "" +"Please enter a valid decimal number with a whole part of at most %s digit." +msgid_plural "" +"Please enter a valid decimal number with a whole part of at most %s digits." +msgstr[0] "ì •ìˆ˜ë¶€ë¶„ì´ %s ìžë¦¬ ì´í•˜ì¸ 10진수를 ìž…ë ¥í•˜ì„¸ìš”." +msgstr[1] "ì •ìˆ˜ë¶€ë¶„ì´ %s ìžë¦¬ ì´í•˜ì¸ 10진수를 ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:428 +#, python-format +msgid "Please enter a valid decimal number with at most %s decimal place." +msgid_plural "" +"Please enter a valid decimal number with at most %s decimal places." +msgstr[0] "ì†Œìˆ˜ë¶€ë¶„ì´ %s ìžë¦¬ ì´í•˜ì¸ 10진수를 ìž…ë ¥í•˜ì„¸ìš”." +msgstr[1] "ì†Œìˆ˜ë¶€ë¶„ì´ %s ìžë¦¬ ì´í•˜ì¸ 10진수를 ìž…ë ¥í•˜ì„¸ìš”." + +#: core/validators.py:438 +#, python-format +msgid "Make sure your uploaded file is at least %s bytes big." +msgstr "업로드 파ì¼ì€ %s bytes ì´ìƒìž…니다." + +#: core/validators.py:439 +#, python-format +msgid "Make sure your uploaded file is at most %s bytes big." +msgstr "업로드 파ì¼ì€ %s bytes ì´í•˜ìž…니다." + +#: core/validators.py:456 +msgid "The format for this field is wrong." +msgstr "ì´ í•„ë“œì˜ í˜•ì‹ì´ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: core/validators.py:471 +msgid "This field is invalid." +msgstr "필드가 올바르지 않습니다." + +#: core/validators.py:507 +#, python-format +msgid "Could not retrieve anything from %s." +msgstr "%s ì—서 ê²€ìƒ‰ëœ ë‚´ìš©ì´ ì—†ìŠµë‹ˆë‹¤." + +#: core/validators.py:510 +#, python-format +msgid "" +"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgstr "" +"URL %(url)s (ì´)ê°€ ë¶€ì ì ˆí•œ Content-Type heade '%(contenttype)s' (ì„)를 반환" +"했습니다." + +#: core/validators.py:543 +#, python-format +msgid "" +"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " +"\"%(start)s\".)" +msgstr "" +"%(line)s ì¤„ì˜ %(tag)s 태그가 닫히지 않았습니다.(시작줄 : \"%(start)s\")" + +#: core/validators.py:547 +#, python-format +msgid "" +"Some text starting on line %(line)s is not allowed in that context. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"%(line)s ì¤„ì˜ ë‚´ìš©ìœ¼ë¡œ 시작하는 í…스트는 ì‚¬ìš©í• ìˆ˜ 없습니다.(시작줄 : \"%" +"(start)s\")" + +#: core/validators.py:552 +#, python-format +msgid "" +"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"%(line)s ì¤„ì˜ \"%(attr)s\" (ì€)는 ë¶€ì ì ˆí•œ ì†ì„±ìž…니다.(시작줄 : \"%(start)s" +"\")" + +#: core/validators.py:557 +#, python-format +msgid "" +"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"%(line)s ì¤„ì˜ \"<%(tag)s>\" (ì€)는 ë¶€ì ì ˆí•œ 태그입니다.(시작줄 : \"%(start)s" +"\")" + +#: core/validators.py:561 +#, python-format +msgid "" +"A tag on line %(line)s is missing one or more required attributes. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"%(line)s ì¤„ì˜ íƒœê·¸ëŠ” 하나 ì´ìƒì˜ 필수 ì†ì„±ì´ ìƒëžµë˜ì–´ 있습니다.(시작줄 : \"%" +"(start)s\")" + +#: core/validators.py:566 +#, python-format +msgid "" +"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"%(line)s ì¤„ì˜ \"%(attr)s\" ì†ì„±ì˜ ê°’ì´ ë¶€ì ì ˆí•©ë‹ˆë‹¤.(시작줄 : \"%(start)s\")" + +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "%(verbose_name)s (ì´)ê°€ ìƒì„±ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "%(verbose_name)s (ì´)ê°€ ìˆ˜ì •ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "%(verbose_name)s (ì´)ê°€ ì‚ì œë˜ì—ˆìŠµë‹ˆë‹¤." + +#: utils/dates.py:6 +msgid "Monday" +msgstr "월요ì¼" + +#: utils/dates.py:6 +msgid "Tuesday" +msgstr "화요ì¼" + +#: utils/dates.py:6 +msgid "Wednesday" +msgstr "수요ì¼" + +#: utils/dates.py:6 +msgid "Thursday" +msgstr "목요ì¼" + +#: utils/dates.py:6 +msgid "Friday" +msgstr "금요ì¼" + +#: utils/dates.py:7 +msgid "Saturday" +msgstr "í† ìš”ì¼" + +#: utils/dates.py:7 +msgid "Sunday" +msgstr "ì¼ìš”ì¼" + +#: utils/dates.py:14 +msgid "January" +msgstr "1ì›”" + +#: utils/dates.py:14 +msgid "February" +msgstr "2ì›”" + +#: utils/dates.py:14 utils/dates.py:27 +msgid "March" +msgstr "3ì›”" + +#: utils/dates.py:14 utils/dates.py:27 +msgid "April" +msgstr "4ì›”" + +#: utils/dates.py:14 utils/dates.py:27 +msgid "May" +msgstr "5ì›”" + +#: utils/dates.py:14 utils/dates.py:27 +msgid "June" +msgstr "6ì›”" + +#: utils/dates.py:15 utils/dates.py:27 +msgid "July" +msgstr "7ì›”" + +#: utils/dates.py:15 +msgid "August" +msgstr "8ì›”" + +#: utils/dates.py:15 +msgid "September" +msgstr "9ì›”" + +#: utils/dates.py:15 +msgid "October" +msgstr "10ì›”" + +#: utils/dates.py:15 +msgid "November" +msgstr "11ì›”" + +#: utils/dates.py:16 +msgid "December" +msgstr "12ì›”" + +#: utils/dates.py:19 +msgid "jan" +msgstr "1ì›”" + +#: utils/dates.py:19 +msgid "feb" +msgstr "2ì›”" + +#: utils/dates.py:19 +msgid "mar" +msgstr "3ì›”" + +#: utils/dates.py:19 +msgid "apr" +msgstr "4ì›”" + +#: utils/dates.py:19 +msgid "may" +msgstr "5ì›”" + +#: utils/dates.py:19 +msgid "jun" +msgstr "6ì›”" + +#: utils/dates.py:20 +msgid "jul" +msgstr "7ì›”" + +#: utils/dates.py:20 +msgid "aug" +msgstr "8ì›”" + +#: utils/dates.py:20 +msgid "sep" +msgstr "9ì›”" + +#: utils/dates.py:20 +msgid "oct" +msgstr "10ì›”" + +#: utils/dates.py:20 +msgid "nov" +msgstr "11ì›”" + +#: utils/dates.py:20 +msgid "dec" +msgstr "12ì›”" + +#: utils/dates.py:27 +msgid "Jan." +msgstr "1ì›”" + +#: utils/dates.py:27 +msgid "Feb." +msgstr "2ì›”" + +#: utils/dates.py:28 +msgid "Aug." +msgstr "8ì›”" + +#: utils/dates.py:28 +msgid "Sept." +msgstr "9ì›”" + +#: utils/dates.py:28 +msgid "Oct." +msgstr "10ì›”" + +#: utils/dates.py:28 +msgid "Nov." +msgstr "11ì›”" + +#: utils/dates.py:28 +msgid "Dec." +msgstr "12ì›”" + +#: utils/timesince.py:12 +msgid "year" +msgid_plural "years" +msgstr[0] "ë…„" +msgstr[1] "ë…„" + +#: utils/timesince.py:13 +msgid "month" +msgid_plural "months" +msgstr[0] "ì›”" +msgstr[1] "ì›”" + +#: utils/timesince.py:14 +msgid "week" +msgid_plural "weeks" +msgstr[0] "주" +msgstr[1] "주" + +#: utils/timesince.py:15 +msgid "day" +msgid_plural "days" +msgstr[0] "ì¼" +msgstr[1] "ì¼" + +#: utils/timesince.py:16 +msgid "hour" +msgid_plural "hours" +msgstr[0] "시간" +msgstr[1] "시간" + +#: utils/timesince.py:17 +msgid "minute" +msgid_plural "minutes" +msgstr[0] "ë¶„" +msgstr[1] "ë¶„" + +#: utils/timesince.py:40 +#, python-format +msgid "%d milliseconds" +msgstr "%d밀리초" + +#: utils/timesince.py:41 +#, python-format +msgid "%(number)d %(type)s" +msgstr "%(number)d%(type)s" + +#: utils/timesince.py:47 +#, python-format +msgid ", %(number)d %(type)s" +msgstr ", %(number)d%(type)s" + +#: utils/dateformat.py:40 +msgid "p.m." +msgstr "오후" + +#: utils/dateformat.py:41 +msgid "a.m." +msgstr "ì˜¤ì „" + +#: utils/dateformat.py:46 +msgid "PM" +msgstr "오후" + +#: utils/dateformat.py:47 +msgid "AM" +msgstr "ì˜¤ì „" + +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "ìžì •" + +#: utils/dateformat.py:97 +msgid "noon" +msgstr "ì •ì˜¤" + +#: utils/translation/trans_real.py:358 +msgid "DATE_FORMAT" +msgstr "" + +#: utils/translation/trans_real.py:359 +msgid "DATETIME_FORMAT" +msgstr "" + +#: utils/translation/trans_real.py:360 +msgid "TIME_FORMAT" +msgstr "" + +#: utils/translation/trans_real.py:376 +msgid "YEAR_MONTH_FORMAT" +msgstr "" + +#: utils/translation/trans_real.py:377 +msgid "MONTH_DAY_FORMAT" +msgstr "" + +#: newforms/fields.py:103 newforms/fields.py:256 +#, python-format +msgid "Ensure this value has at most %d characters." +msgstr "%d ìž ì´í•˜ë¡œ ìž…ë ¥í•´ 주세요." + +#: newforms/fields.py:105 newforms/fields.py:258 +#, python-format +msgid "Ensure this value has at least %d characters." +msgstr "%d ìž ì´ìƒ ìž…ë ¥í•´ 주세요." + +#: newforms/fields.py:130 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "%s ìž ì´í•˜ë¡œ ìž…ë ¥í•´ 주세요." + +#: newforms/fields.py:132 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "%s ìž ì´ìƒ ìž…ë ¥í•´ 주세요." + +#: newforms/fields.py:165 +msgid "Enter a valid date." +msgstr "올바른 ë‚ ì§œë¥¼ ìž…ë ¥í•˜ì„¸ìš”." + +#: newforms/fields.py:192 +msgid "Enter a valid time." +msgstr "올바른 시ê°ì„ ìž…ë ¥í•˜ì„¸ìš”." + +#: newforms/fields.py:228 +msgid "Enter a valid date/time." +msgstr "올바른 ë‚ ì§œ/시ê°ì„ ìž…ë ¥í•˜ì„¸ìš”." + +#: newforms/fields.py:242 +msgid "Enter a valid value." +msgstr "올바른 ê°’ì„ ìž…ë ¥í•˜ì„¸ìš”." + +#: newforms/fields.py:289 newforms/fields.py:311 +msgid "Enter a valid URL." +msgstr "올바른 URLì„ ìž…ë ¥í•˜ì„¸ìš”." + +#: newforms/fields.py:313 +msgid "This URL appears to be a broken link." +msgstr "해당 URLì˜ ë§í¬ê°€ 잘못 ë˜ì–´ 있습니다." + +#: newforms/fields.py:364 newforms/models.py:165 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "올바르게 ì„ íƒí•´ 주세요. ì„ íƒí•˜ì‹ ê²ƒì´ ì„ íƒê°€ëŠ¥í•ëª©ì— ì—†ìŠµë‹ˆë‹¤." + +#: newforms/fields.py:380 newforms/fields.py:456 newforms/models.py:182 +msgid "Enter a list of values." +msgstr "리스트를 ìž…ë ¥í•˜ì„¸ìš”." + +#: newforms/fields.py:389 newforms/models.py:188 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "올바르게 ì„ íƒí•´ 주세요. %s (ì´)ê°€ ì„ íƒê°€ëŠ¥í•ëª©ì— ì—†ìŠµë‹ˆë‹¤." + +#: newforms/widgets.py:180 contrib/admin/filterspecs.py:150 +#: oldforms/__init__.py:577 +msgid "Unknown" +msgstr "알 수 없습니다." + +#: newforms/widgets.py:180 contrib/admin/filterspecs.py:143 +#: oldforms/__init__.py:577 +msgid "Yes" +msgstr "예" + +#: newforms/widgets.py:180 contrib/admin/filterspecs.py:143 +#: oldforms/__init__.py:577 +msgid "No" +msgstr "아니오" + +#: contrib/contenttypes/models.py:36 +msgid "python model class name" +msgstr "python ëª¨ë¸ í´ëž˜ìФ 명" + +#: contrib/contenttypes/models.py:39 +msgid "content type" +msgstr "콘í…ì¸ íƒ€ìž…" + +#: contrib/contenttypes/models.py:40 +msgid "content types" +msgstr "콘í…ì¸ íƒ€ìž…(들)" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "번째" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "st" +msgstr "번째" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "nd" +msgstr "번째" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "번째" + +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "(value).1f" +msgstr[1] "(value).1f" + +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "%(value).1f" +msgstr[1] "%(value).1f" + +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "%(value).1f" +msgstr[1] "%(value).1f" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "1" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "2" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "3" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "four" +msgstr "4" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "5" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "6" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "7" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "8" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "9" + +#: contrib/auth/views.py:39 +msgid "Logged out" +msgstr "로그 아웃" + +#: contrib/auth/models.py:38 contrib/auth/models.py:58 +msgid "name" +msgstr "ì´ë¦„" + +#: contrib/auth/models.py:40 +msgid "codename" +msgstr "코드명" + +#: contrib/auth/models.py:43 +msgid "permission" +msgstr "허가" + +#: contrib/auth/models.py:44 contrib/auth/models.py:59 +msgid "permissions" +msgstr "허가" + +#: contrib/auth/models.py:62 +msgid "group" +msgstr "그룹" + +#: contrib/auth/models.py:63 contrib/auth/models.py:103 +msgid "groups" +msgstr "그룹" + +#: contrib/auth/models.py:93 +msgid "username" +msgstr "사용ìžëª…" + +#: contrib/auth/models.py:93 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." +msgstr "필수í•목입니다. 30ìž ì´ë‚´ë¡œ ìž…ë ¥í•˜ì„¸ìš”.(알파벳, 숫ìž, '_' ë§Œ 가능)" + +#: contrib/auth/models.py:94 +msgid "first name" +msgstr "ì´ë¦„" + +#: contrib/auth/models.py:95 +msgid "last name" +msgstr "성" + +#: contrib/auth/models.py:96 +msgid "e-mail address" +msgstr "ì´ë©”ì¼ ì£¼ì†Œ" + +#: contrib/auth/models.py:97 +msgid "password" +msgstr "비밀번호" + +#: contrib/auth/models.py:97 +msgid "" +"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " +"password form</a>." +msgstr "" +"'[algo]$[salt]$[hexdigest]' ë˜ëŠ” <a href=\"password/\">비밀번호 변경</a>" + +#: contrib/auth/models.py:98 +msgid "staff status" +msgstr "스태프 권한" + +#: contrib/auth/models.py:98 +msgid "Designates whether the user can log into this admin site." +msgstr "사용ìžê°€ 관리사ì´íŠ¸ì— ë¡œê·¸ì¸ì´ 가능한지를 나타냅니다." + +#: contrib/auth/models.py:99 +msgid "active" +msgstr "활성" + +#: contrib/auth/models.py:99 +msgid "" +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." +msgstr "사용ìžê°€ 'Django 관리'ì— ë¡œê·¸ì¸ì´ 가능한지를 나타냅니다." + +#: contrib/auth/models.py:100 +msgid "superuser status" +msgstr "최ìƒìœ„ ì‚¬ìš©ìž ê¶Œí•œ" + +#: contrib/auth/models.py:100 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "해당 사용ìžì—게 ëª¨ë“ ê¶Œí•œì„ í—ˆê°€í•©ë‹ˆë‹¤." + +#: contrib/auth/models.py:101 +msgid "last login" +msgstr "마지막 로그ì¸" + +#: contrib/auth/models.py:102 +msgid "date joined" +msgstr "등ë¡ì¼" + +#: contrib/auth/models.py:104 +msgid "" +"In addition to the permissions manually assigned, this user will also get " +"all permissions granted to each group he/she is in." +msgstr "해당 사용ìžì—게 ì†í•´ìžˆëŠ” ê·¸ë£¹ì˜ ëª¨ë“ ê¶Œí•œì„ í—ˆê°€í•©ë‹ˆë‹¤." + +#: contrib/auth/models.py:105 +msgid "user permissions" +msgstr "ì‚¬ìš©ìž ê¶Œí•œ" + +#: contrib/auth/models.py:109 +msgid "user" +msgstr "사용ìž" + +#: contrib/auth/models.py:110 +msgid "users" +msgstr "사용ìž(들)" + +#: contrib/auth/models.py:116 +msgid "Personal info" +msgstr "ê°œì¸ì •ë³´" + +#: contrib/auth/models.py:117 +msgid "Permissions" +msgstr "권한" + +#: contrib/auth/models.py:118 +msgid "Important dates" +msgstr "중요한 ì¼ì •" + +#: contrib/auth/models.py:119 +msgid "Groups" +msgstr "그룹" + +#: contrib/auth/models.py:263 +msgid "message" +msgstr "메시지" + +#: contrib/auth/models.py:276 +#, fuzzy +msgid "AnonymousUser" +msgstr "ìµëª…사용ìž" + +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 +msgid "The two password fields didn't match." +msgstr "비밀번호가 ì¼ì¹˜í•˜ì§€ 않습니다." + +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." +msgstr "해당 사용ìžëª…ì€ ì´ë¯¸ 존재합니다." + +#: contrib/auth/forms.py:53 +msgid "" +"Your Web browser doesn't appear to have cookies enabled. Cookies are " +"required for logging in." +msgstr "" +"사용하시는 브ë¼ìš°ì €ê°€ ì¿ í‚¤ë¥¼ 허용하지 않습니다.로그ì¸í•˜ê¸° 위해서는 ì¿ í‚¤ 사용" +"ì´ í•„ìš”í•©ë‹ˆë‹¤." + +#: contrib/auth/forms.py:60 contrib/admin/views/decorators.py:10 +msgid "" +"Please enter a correct username and password. Note that both fields are case-" +"sensitive." +msgstr "사용ìžëª…ê³¼ 비밀번호를 ìž…ë ¥í•˜ì„¸ìš”.(대, ì†Œë¬¸ìž êµ¬ë³„)" + +#: contrib/auth/forms.py:62 +msgid "This account is inactive." +msgstr "ì´ ê³„ì •ì€ ìœ íš¨í•˜ì§€ 않습니다." + +#: contrib/auth/forms.py:85 +msgid "" +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "" +"ì´ë©”ì¼ì£¼ì†Œì™€ ì¼ì¹˜í•˜ëŠ” 사용ìžê°€ 없습니다.ì´ ì´ë©”ì¼ì£¼ì†Œë¡œ 등ë¡í•˜ì…¨ìŠµë‹ˆê¹Œ?" + +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." +msgstr "새로운 비밀번호가 ì¼ì¹˜í•˜ì§€ 않습니다." + +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." +msgstr "기존 비밀번호를 잘못 ìž…ë ¥í•˜ì…¨ìŠµë‹ˆë‹¤. 다시 ìž…ë ¥í•´ 주세요." + +#: contrib/redirects/models.py:7 +msgid "redirect from" +msgstr "ì—서 ìž¬ì „ì†¡" + +#: contrib/redirects/models.py:8 +msgid "" +"This should be an absolute path, excluding the domain name. Example: '/" +"events/search/'." +msgstr "ë„ë©”ì¸ëª…ì„ ì œì™¸í•œ ì ˆëŒ€ê²½ë¡œë¡œ ìž…ë ¥í•˜ì„¸ìš”. 예: '/events/search/'" + +#: contrib/redirects/models.py:9 +msgid "redirect to" +msgstr "(으)로 ìž¬ì „ì†¡" + +#: contrib/redirects/models.py:10 +msgid "" +"This can be either an absolute path (as above) or a full URL starting with " +"'http://'." +msgstr "ì ˆëŒ€ê²½ë¡œì™€ URL('http://' í¬í•¨) ëª¨ë‘ ê°€ëŠ¥í•©ë‹ˆë‹¤." + +#: contrib/redirects/models.py:13 +msgid "redirect" +msgstr "ìž¬ì „ì†¡" + +#: contrib/redirects/models.py:14 +msgid "redirects" +msgstr "ìž¬ì „ì†¡" + +#: contrib/comments/models.py:67 contrib/comments/models.py:166 +msgid "object ID" +msgstr "오브ì 트 ID" + +#: contrib/comments/models.py:68 +msgid "headline" +msgstr "최근 ì •ë³´" + +#: contrib/comments/models.py:69 contrib/comments/models.py:90 +#: contrib/comments/models.py:167 +msgid "comment" +msgstr "코멘트" + +#: contrib/comments/models.py:70 +msgid "rating #1" +msgstr "rating #1" + +#: contrib/comments/models.py:71 +msgid "rating #2" +msgstr "rating #2" + +#: contrib/comments/models.py:72 +msgid "rating #3" +msgstr "rating #3" + +#: contrib/comments/models.py:73 +msgid "rating #4" +msgstr "rating #4" + +#: contrib/comments/models.py:74 +msgid "rating #5" +msgstr "rating #5" + +#: contrib/comments/models.py:75 +msgid "rating #6" +msgstr "rating #6" + +#: contrib/comments/models.py:76 +msgid "rating #7" +msgstr "rating #7" + +#: contrib/comments/models.py:77 +msgid "rating #8" +msgstr "rating #8" + +#: contrib/comments/models.py:82 +msgid "is valid rating" +msgstr "올바른 ë ˆì´íŒ…입니다." + +#: contrib/comments/models.py:83 contrib/comments/models.py:169 +msgid "date/time submitted" +msgstr "ë‚ ì§œ/시간 확ì¸" + +#: contrib/comments/models.py:84 contrib/comments/models.py:170 +msgid "is public" +msgstr "공개합니다." + +#: contrib/comments/models.py:85 contrib/admin/views/doc.py:304 +msgid "IP address" +msgstr "IP 주소" + +#: contrib/comments/models.py:86 +msgid "is removed" +msgstr "ì‚ì œí•©ë‹ˆë‹¤." + +#: contrib/comments/models.py:86 +msgid "" +"Check this box if the comment is inappropriate. A \"This comment has been " +"removed\" message will be displayed instead." +msgstr "" +"코멘트가 ë¶€ì ì ˆí•œ 경우 ì²´í¬í•˜ì„¸ìš”. \"코멘트가 ì‚ì œë˜ì—ˆìŠµë‹ˆë‹¤.\" 메시지가 표시" +"ë©ë‹ˆë‹¤." + +#: contrib/comments/models.py:91 +msgid "comments" +msgstr "코멘트(들)" + +#: contrib/comments/models.py:131 contrib/comments/models.py:207 +msgid "Content object" +msgstr "콘í…ì¸ ì˜¤ë¸Œì 트" + +#: contrib/comments/models.py:159 +#, python-format +msgid "" +"Posted by %(user)s at %(date)s\n" +"\n" +"%(comment)s\n" +"\n" +"http://%(domain)s%(url)s" +msgstr "" +"%(user)s (ì´)ê°€ %(date)s 등ë¡\n" +"\n" +"%(comment)s\n" +"\n" +"http://%(domain)s%(url)s" + +#: contrib/comments/models.py:168 +msgid "person's name" +msgstr "ì‚¬ìš©ìž ì´ë¦„" + +#: contrib/comments/models.py:171 +msgid "ip address" +msgstr "IP 주소" + +#: contrib/comments/models.py:173 +msgid "approved by staff" +msgstr "스태프 승ì¸" + +#: contrib/comments/models.py:176 +msgid "free comment" +msgstr "프리 코멘트" + +#: contrib/comments/models.py:177 +msgid "free comments" +msgstr "프리 코멘트(들)" + +#: contrib/comments/models.py:233 +msgid "score" +msgstr "스코어" + +#: contrib/comments/models.py:234 +msgid "score date" +msgstr "스코어 ë‚ ì§œ" + +#: contrib/comments/models.py:237 +msgid "karma score" +msgstr "카르마 스코어" + +#: contrib/comments/models.py:238 +msgid "karma scores" +msgstr "카르마 스코어" + +#: contrib/comments/models.py:242 +#, python-format +msgid "%(score)d rating by %(user)s" +msgstr "%(user)s (ì´)ê°€ %(score)d ì 부여했습니다." + +#: contrib/comments/models.py:258 +#, python-format +msgid "" +"This comment was flagged by %(user)s:\n" +"\n" +"%(text)s" +msgstr "" +"%(user)s:\n" +"\n" +"%(text)s" + +#: contrib/comments/models.py:265 +msgid "flag date" +msgstr "플래그 ë‚ ì§œ" + +#: contrib/comments/models.py:268 +msgid "user flag" +msgstr "ì‚¬ìš©ìž í”Œëž˜ê·¸" + +#: contrib/comments/models.py:269 +msgid "user flags" +msgstr "ì‚¬ìš©ìž í”Œëž˜ê·¸" + +#: contrib/comments/models.py:273 +#, python-format +msgid "Flag by %r" +msgstr "%r (으)로 플래그" + +#: contrib/comments/models.py:278 +msgid "deletion date" +msgstr "ì‚ì œì¼" + +#: contrib/comments/models.py:280 +msgid "moderator deletion" +msgstr "" + +#: contrib/comments/models.py:281 +msgid "moderator deletions" +msgstr "" + +#: contrib/comments/models.py:285 +#, python-format +msgid "Moderator deletion by %r" +msgstr "" + +#: contrib/comments/views/karma.py:19 +msgid "Anonymous users cannot vote" +msgstr "ë¯¸ë“±ë¡ ì‚¬ìš©ìžëŠ” íˆ¬í‘œí• ìˆ˜ 없습니다." + +#: contrib/comments/views/karma.py:23 +msgid "Invalid comment ID" +msgstr "코멘트 IDê°€ ë¶€ì ì ˆí•©ë‹ˆë‹¤." + +#: contrib/comments/views/karma.py:25 +msgid "No voting for yourself" +msgstr "ìžì‹ ì´ ì§ì ‘ íˆ¬í‘œí• ìˆ˜ 없습니다." + +#: contrib/comments/views/comments.py:27 +msgid "" +"This rating is required because you've entered at least one other rating." +msgstr "다른 ë ˆì´íŒ…ì„ ìž…ë ¥í–ˆì„ ê²½ìš°, ì´ ë ˆì´íŒ…ì€ í•„ížˆ ìž…ë ¥í•˜ì…”ì•¼ 합니다." + +#: contrib/comments/views/comments.py:111 +#, python-format +msgid "" +"This comment was posted by a user who has posted fewer than %(count)s " +"comment:\n" +"\n" +"%(text)s" +msgid_plural "" +"This comment was posted by a user who has posted fewer than %(count)s " +"comments:\n" +"\n" +"%(text)s" +msgstr[0] "" +"ì´ ì½”ë©˜íŠ¸ë¥¼ 작성한 사용ìžì˜ 코멘트 í¬ìŠ¤íŒ…ì€ %(count)s 번 ì´í•˜ìž…니다.:\n" +"\n" +"%(text)s" +msgstr[1] "" +"ì´ ì½”ë©˜íŠ¸ë¥¼ 작성한 사용ìžì˜ 코멘트 í¬ìŠ¤íŒ…ì€ %(count)s 번 ì´í•˜ìž…니다.:\n" +"\n" +"%(text)s" + +#: contrib/comments/views/comments.py:116 +#, python-format +msgid "" +"This comment was posted by a sketchy user:\n" +"\n" +"%(text)s" +msgstr "" +"ì´ ì½”ë©˜íŠ¸ëŠ” 알수 없는 사용ìžê°€ 작성했습니다.:\n" +"\n" +"%(text)s" + +#: contrib/comments/views/comments.py:188 +#: contrib/comments/views/comments.py:280 +msgid "Only POSTs are allowed" +msgstr "POSTë§Œ 가능합니다." + +#: contrib/comments/views/comments.py:192 +#: contrib/comments/views/comments.py:284 +msgid "One or more of the required fields wasn't submitted" +msgstr "하나 ì´ìƒì˜ 필수í•ëª©ì´ ëˆ„ë½ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/comments/views/comments.py:196 +#: contrib/comments/views/comments.py:286 +msgid "Somebody tampered with the comment form (security violation)" +msgstr "해당 코멘트가 ëˆ„êµ°ê°€ì— ì˜í•´ 변경ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/comments/views/comments.py:206 +#: contrib/comments/views/comments.py:292 +msgid "" +"The comment form had an invalid 'target' parameter -- the object ID was " +"invalid" +msgstr "" +"'target' 파ë¼ë¯¸í„°ê°€ 코멘트 í¼ì— ì 합하지 않습니다.오브ì 트 IDê°€ ë¶€ì ì ˆí•©ë‹ˆë‹¤." + +#: contrib/comments/views/comments.py:257 +#: contrib/comments/views/comments.py:321 +msgid "The comment form didn't provide either 'preview' or 'post'" +msgstr "해당 코멘트 í¼ì€ '미리보기'와 'post' ê¸°ëŠ¥ì„ ì œê³µí•˜ì§€ 않습니다." + +#: contrib/comments/templates/comments/freeform.html:4 +msgid "Your name:" +msgstr "ì´ë¦„:" + +#: contrib/comments/templates/comments/freeform.html:5 +#: contrib/comments/templates/comments/form.html:28 +msgid "Comment:" +msgstr "코멘트:" + +#: contrib/comments/templates/comments/freeform.html:10 +#: contrib/comments/templates/comments/form.html:35 +msgid "Preview comment" +msgstr "코멘트 미리보기" + +#: contrib/comments/templates/comments/form.html:6 +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:17 +msgid "Username:" +msgstr "사용ìžëª…" + +#: contrib/comments/templates/comments/form.html:6 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/model_index.html:5 +msgid "Log out" +msgstr "로그아웃" + +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:20 +msgid "Password:" +msgstr "비밀번호" + +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "비밀번호를 잊으셨습니까?" + +#: contrib/comments/templates/comments/form.html:12 +msgid "Ratings" +msgstr "ë ˆì´íŒ…" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Required" +msgstr "필수í•목" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Optional" +msgstr "옵션" + +#: contrib/comments/templates/comments/form.html:23 +msgid "Post a photo" +msgstr "사진 등ë¡" + +#: contrib/flatpages/models.py:7 contrib/admin/views/doc.py:315 +msgid "URL" +msgstr "URL" + +#: contrib/flatpages/models.py:8 +msgid "" +"Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "앞, ë’¤ì— ìŠ¬ëž˜ì‹œ(/)를 넣으세요. 예:'/about/contact/' " + +#: contrib/flatpages/models.py:9 +msgid "title" +msgstr "ì œëª©" + +#: contrib/flatpages/models.py:10 +msgid "content" +msgstr "ë‚´ìš©" + +#: contrib/flatpages/models.py:11 +msgid "enable comments" +msgstr "사용 가능한 코멘트" + +#: contrib/flatpages/models.py:12 +msgid "template name" +msgstr "템플릿명" + +#: contrib/flatpages/models.py:13 +msgid "" +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." +msgstr "" +"예: 'flatpages/contact_page.html' 를 ì‚¬ìš©í• ìˆ˜ 없는 경우 ì‹œìŠ¤í…œì´ 'flatpages/" +"default.html' (ì„)를 사용합니다." + +#: contrib/flatpages/models.py:14 +msgid "registration required" +msgstr "등ë¡í•˜ì„¸ìš”." + +#: contrib/flatpages/models.py:14 +msgid "If this is checked, only logged-in users will be able to view the page." +msgstr "ì²´í¬í• 경우, ë¡œê·¸ì¸ ì‚¬ìš©ìžë§Œ 해당 페ì´ì§€ë¥¼ ë³¼ 수 있습니다." + +#: contrib/flatpages/models.py:18 +msgid "flat page" +msgstr "플랫 페ì´ì§€" + +#: contrib/flatpages/models.py:19 +msgid "flat pages" +msgstr "플랫 페ì´ì§€(들)" + +#: contrib/sessions/models.py:68 +msgid "session key" +msgstr "세션 키" + +#: contrib/sessions/models.py:69 +msgid "session data" +msgstr "세션 ë‚ ì§œ" + +#: contrib/sessions/models.py:70 +msgid "expire date" +msgstr "ìœ íš¨ë‚ ì§œ" + +#: contrib/sessions/models.py:74 +msgid "session" +msgstr "세션" + +#: contrib/sessions/models.py:75 +msgid "sessions" +msgstr "세션" + +#: contrib/sites/models.py:10 +msgid "domain name" +msgstr "ë„ë©”ì¸ ëª…" + +#: contrib/sites/models.py:11 +msgid "display name" +msgstr "표시명" + +#: contrib/sites/models.py:15 +msgid "site" +msgstr "사ì´íЏ" + +#: contrib/sites/models.py:16 +msgid "sites" +msgstr "사ì´íЏ(들)" + +#: contrib/admin/filterspecs.py:40 +#, python-format +msgid "" +"<h3>By %s:</h3>\n" +"<ul>\n" +msgstr "" +"<h3>%s(으)로:</h3>\n" +"<ul>\n" + +#: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 +#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 +msgid "All" +msgstr "모ë‘" + +#: contrib/admin/filterspecs.py:109 +msgid "Any date" +msgstr "ì–¸ì œë‚˜" + +#: contrib/admin/filterspecs.py:110 +msgid "Today" +msgstr "오늘" + +#: contrib/admin/filterspecs.py:113 +msgid "Past 7 days" +msgstr "지난 7ì¼" + +#: contrib/admin/filterspecs.py:115 +msgid "This month" +msgstr "ì´ë²ˆ 달" + +#: contrib/admin/filterspecs.py:117 +msgid "This year" +msgstr "ì´ë²ˆ í•´" + +#: contrib/admin/models.py:16 +msgid "action time" +msgstr "ì•¡ì…˜ 타임" + +#: contrib/admin/models.py:19 +msgid "object id" +msgstr "오브ì 트 ì•„ì´ë””" + +#: contrib/admin/models.py:20 +msgid "object repr" +msgstr "오브ì 트 표현" + +#: contrib/admin/models.py:21 +msgid "action flag" +msgstr "ì•¡ì…˜ 플래그" + +#: contrib/admin/models.py:22 +msgid "change message" +msgstr "메시지 변경" + +#: contrib/admin/models.py:25 +msgid "log entry" +msgstr "로그 엔트리" + +#: contrib/admin/models.py:26 +msgid "log entries" +msgstr "로그 엔트리" + +#: contrib/admin/templatetags/admin_list.py:247 +msgid "All dates" +msgstr "ì–¸ì œë‚˜" + +#: contrib/admin/views/decorators.py:24 +#: contrib/admin/templates/admin/login.html:25 +msgid "Log in" +msgstr "로그ì¸" + +#: contrib/admin/views/decorators.py:62 +msgid "" +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." +msgstr "ë¡œê·¸ì¸ ì„¸ì…˜ì´ ëŠê²¼ìŠµë‹ˆë‹¤. 다시 ë¡œê·¸ì¸ í•˜ì„¸ìš”." + +#: contrib/admin/views/decorators.py:69 +msgid "" +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." +msgstr "" +"사용하시는 브ë¼ìš°ì €ê°€ ì¿ í‚¤ ì‚¬ìš©ì„ í—ˆê°€í•˜ê³ ìžˆì§€ 않습니다.ì¿ í‚¤ ì‚¬ìš©ì„ ì²´í¬í•˜ì‹œ" +"ê³ ë‹¤ì‹œ 시ë„í•´ 주세요." + +#: contrib/admin/views/decorators.py:83 +msgid "Usernames cannot contain the '@' character." +msgstr "사용ìžëª…ì—는 '@'ì„ ì‚¬ìš©í• ìˆ˜ 없습니다." + +#: contrib/admin/views/decorators.py:85 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." +msgstr "ì´ë©”ì¼ ì£¼ì†Œì™€ 사용ìžëª…ì€ ë‹¤ë¦…ë‹ˆë‹¤. '%s'를 사용하세요." + +#: contrib/admin/views/auth.py:19 contrib/admin/views/main.py:257 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "%(name)s \"%(obj)s\" (ì´)ê°€ 추가ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/views/auth.py:24 contrib/admin/views/main.py:261 +#: contrib/admin/views/main.py:347 +msgid "You may edit it again below." +msgstr "계ì†í•´ì„œ 편집하실 수 있습니다." + +#: contrib/admin/views/auth.py:30 +msgid "Add user" +msgstr "ì‚¬ìš©ìž ì¶”ê°€" + +#: contrib/admin/views/auth.py:57 +msgid "Password changed successfully." +msgstr "비밀번호가 변경ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/views/auth.py:64 +#, python-format +msgid "Change password: %s" +msgstr "비밀번호 변경: %s" + +#: contrib/admin/views/main.py:223 +msgid "Site administration" +msgstr "사ì´íЏ 관리" + +#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 +#, python-format +msgid "You may add another %s below." +msgstr "계ì†í•´ì„œ 다른 %s (ì„)를 추가하세요." + +#: contrib/admin/views/main.py:289 +#, python-format +msgid "Add %s" +msgstr "%s 추가" + +#: contrib/admin/views/main.py:335 +#, python-format +msgid "Added %s." +msgstr "%s (ì´)ê°€ 추가ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/views/main.py:337 +#, python-format +msgid "Changed %s." +msgstr "%s (ì´)ê°€ 변경ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/views/main.py:339 +#, python-format +msgid "Deleted %s." +msgstr "%s (ì´)ê°€ ì‚ì œë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/views/main.py:342 +msgid "No fields changed." +msgstr "ë³€ê²½ëœ í•„ë“œê°€ 없습니다." + +#: contrib/admin/views/main.py:345 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "%(name)s \"%(obj)s\" (ì´)ê°€ 변경ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/views/main.py:353 +#, python-format +msgid "" +"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "%(name)s \"%(obj)s\" (ì´)ê°€ 추가ë˜ì—ˆìŠµë‹ˆë‹¤. 계ì†í•´ì„œ 편집하세요." + +#: contrib/admin/views/main.py:391 +#, python-format +msgid "Change %s" +msgstr "%s 변경" + +#: contrib/admin/views/main.py:476 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +msgstr "%(name)s ì— %(fieldname)s (ì´)ê°€ 하나 ì´ìƒ 있는 %(obj)s" + +#: contrib/admin/views/main.py:481 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" +msgstr "%(name)s ì— %(fieldname)s (ì´)ê°€ 하나 ì´ìƒ 있는" + +#: contrib/admin/views/main.py:514 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "%(name)s \"%(obj)s\" (ì´)ê°€ ì‚ì œë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/views/main.py:517 +msgid "Are you sure?" +msgstr "확실합니까?" + +#: contrib/admin/views/main.py:539 +#, python-format +msgid "Change history: %s" +msgstr "변경 ížˆìŠ¤í† ë¦¬: %s" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s" +msgstr "%s ì„ íƒ" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s to change" +msgstr "ë³€ê²½í• %s ì„ íƒ" + +#: contrib/admin/views/main.py:768 +msgid "Database error" +msgstr "ë°ì´í„°ë² ì´ìФ 오류" + +#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 +msgid "tag:" +msgstr "태그:" + +#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 +msgid "filter:" +msgstr "í•„í„°:" + +#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 +msgid "view:" +msgstr "ë·°:" + +#: contrib/admin/views/doc.py:164 +#, python-format +msgid "App %r not found" +msgstr "어플리케ì´ì…˜ %r (ì´)ê°€ 없습니다." + +#: contrib/admin/views/doc.py:171 +#, python-format +msgid "Model %(name)r not found in app %(label)r" +msgstr "ëª¨ë¸ %(name)r (ì´)ê°€ 어플리케ì´ì…˜ %(label)r ì— ì—†ìŠµë‹ˆë‹¤." + +#: contrib/admin/views/doc.py:183 +#, python-format +msgid "the related `%(label)s.%(type)s` object" +msgstr "`%(label)s.%(type)s` ê´€ë ¨ 오브ì 트" + +#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 +msgid "model:" +msgstr "모ë¸:" + +#: contrib/admin/views/doc.py:214 +#, python-format +msgid "related `%(label)s.%(name)s` objects" +msgstr "`%(label)s.%(name)s` ê´€ë ¨ 오브ì 트(들)" + +#: contrib/admin/views/doc.py:219 +#, python-format +msgid "all %s" +msgstr "ëª¨ë“ %s" + +#: contrib/admin/views/doc.py:224 +#, python-format +msgid "number of %s" +msgstr "%s ì˜ ìˆ˜" + +#: contrib/admin/views/doc.py:229 +#, python-format +msgid "Fields on %s objects" +msgstr "%s 오브ì íŠ¸ì˜ í•„ë“œ" + +#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 +msgid "Integer" +msgstr "ì •ìˆ˜" + +#: contrib/admin/views/doc.py:292 +msgid "Boolean (Either True or False)" +msgstr "boolean(ì°¸ ë˜ëŠ” ê±°ì§“)" + +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 +#, python-format +msgid "String (up to %(maxlength)s)" +msgstr "문ìžì—´(%(maxlength)s 까지)" + +#: contrib/admin/views/doc.py:294 +msgid "Comma-separated integers" +msgstr "ì •ìˆ˜(콤마로 구분)" + +#: contrib/admin/views/doc.py:295 +msgid "Date (without time)" +msgstr "ë‚ ì§œ(시간 ì œì™¸)" + +#: contrib/admin/views/doc.py:296 +msgid "Date (with time)" +msgstr "ë‚ ì§œ(시간 í¬í•¨)" + +#: contrib/admin/views/doc.py:297 +msgid "E-mail address" +msgstr "ì´ë©”ì¼ ì£¼ì†Œ" + +#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 +msgid "File path" +msgstr "íŒŒì¼ ê²½ë¡œ" + +#: contrib/admin/views/doc.py:300 +msgid "Decimal number" +msgstr "10진수" + +#: contrib/admin/views/doc.py:306 +msgid "Boolean (Either True, False or None)" +msgstr "boolean (ì°¸, ê±°ì§“ ë˜ëŠ” none)" + +#: contrib/admin/views/doc.py:307 +msgid "Relation to parent model" +msgstr "부모(ìƒìœ„) 모ë¸ê³¼ 연계" + +#: contrib/admin/views/doc.py:308 +msgid "Phone number" +msgstr "ì „í™”ë²ˆí˜¸" + +#: contrib/admin/views/doc.py:313 +msgid "Text" +msgstr "í…스트" + +#: contrib/admin/views/doc.py:314 +msgid "Time" +msgstr "시ê°" + +#: contrib/admin/views/doc.py:316 +msgid "U.S. state (two uppercase letters)" +msgstr "미êµì˜ 주 (ë‘ê°œì˜ ëŒ€ë¬¸ìžë¡œ)" + +#: contrib/admin/views/doc.py:317 +msgid "XML text" +msgstr "XML í…스트" + +#: contrib/admin/views/doc.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "%s (ì€)는 url íŒ¨í„´ì˜ ì˜¤ë¸Œì 트가 아닙니다." + +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" +msgstr "현재:" + +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" +msgstr "변경:" + +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" +msgstr "ë‚ ì§œ:" + +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" +msgstr "시ê°:" + +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Documentation" +msgstr "문서" + +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin/auth/user/change_password.html:15 +#: contrib/admin/templates/admin/auth/user/change_password.html:46 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/model_index.html:5 +msgid "Change password" +msgstr "비밀번호 변경" + +#: contrib/admin/templates/admin/object_history.html:5 +#: contrib/admin/templates/admin/change_list.html:6 +#: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/change_form.html:13 +#: contrib/admin/templates/admin/base.html:30 +#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/logged_out.html:4 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Home" +msgstr "홈" + +#: contrib/admin/templates/admin/object_history.html:5 +#: contrib/admin/templates/admin/change_form.html:21 +msgid "History" +msgstr "ížˆìŠ¤í† ë¦¬" + +#: contrib/admin/templates/admin/object_history.html:18 +msgid "Date/time" +msgstr "ë‚ ì§œ/시간" + +#: contrib/admin/templates/admin/object_history.html:19 +msgid "User" +msgstr "사용ìž" + +#: contrib/admin/templates/admin/object_history.html:20 +msgid "Action" +msgstr "ì•¡ì…˜" + +#: contrib/admin/templates/admin/object_history.html:26 +msgid "DATE_WITH_TIME_FULL" +msgstr "ë…„/ì›”/ì¼ ì‹œ:ë¶„:ì´ˆ" + +#: contrib/admin/templates/admin/object_history.html:36 +msgid "" +"This object doesn't have a change history. It probably wasn't added via this " +"admin site." +msgstr "" +"오브ì íŠ¸ì— ë³€ê²½ì‚¬í•ì´ ì—†ìŠµë‹ˆë‹¤.ì´ admin 사ì´íŠ¸ë¥¼ 통해 ì¶”ê°€ëœ ì‚¬í•ì´ ì•„ë‹™ë‹ˆë‹¤." + +#: contrib/admin/templates/admin/change_list.html:12 +#, python-format +msgid "Add %(name)s" +msgstr "%(name)s 추가" + +#: contrib/admin/templates/admin/filter.html:2 +#, python-format +msgid " By %(filter_title)s " +msgstr "%(filter_title)s (으)로" + +#: contrib/admin/templates/admin/500.html:4 +msgid "Server error" +msgstr "서버 오류" + +#: contrib/admin/templates/admin/500.html:6 +msgid "Server error (500)" +msgstr "서버 오류 (500)" + +#: contrib/admin/templates/admin/500.html:9 +msgid "Server Error <em>(500)</em>" +msgstr "서버 오류 <em>(500)</em>" + +#: contrib/admin/templates/admin/500.html:10 +msgid "" +"There's been an error. It's been reported to the site administrators via e-" +"mail and should be fixed shortly. Thanks for your patience." +msgstr "" +"오류가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. 사ì´íЏ 관리ìžì—게 ì´ë©”ì¼ë¡œ ì—러를 ë³´ê³ í–ˆìŠµë‹ˆë‹¤.ì¡°ì†ížˆ " +"ìˆ˜ì •í•˜ë„ë¡ í•˜ê² ìŠµë‹ˆë‹¤. ê³ ë§™ìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "" +"ë°ì´í„°ë² ì´ìФ ì„¤ì •ì— ë¬¸ì œê°€ ë°œìƒí–ˆìŠµë‹ˆë‹¤. 해당 ë°ì´í„°ë² ì´ìФ í…Œì´ë¸”ì´ ìƒì„±ë˜ì—ˆ" +"는지,해당 ìœ ì €ê°€ ë°ì´í„°ë² ì´ìŠ¤ë¥¼ ì½ì–´ ë“¤ì¼ ìˆ˜ 있는지 확ì¸í•˜ì„¸ìš”." + +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" +msgstr "실행" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "1 result" +msgid_plural "%(counter)s results" +msgstr[0] "1ê±´" +msgstr[1] "%(counter)s ê±´" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "%(full_result_count)s total" +msgstr "ëª¨ë‘ %(full_result_count)s ê±´" + +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" +msgstr "ëª¨ë‘ í‘œì‹œ" + +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" +msgstr "Django 사ì´íЏ 관리" + +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" +msgstr "Django 관리" + +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "í•„í„°" + +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 +msgid "Page not found" +msgstr "해당 페ì´ì§€ê°€ 없습니다." + +#: contrib/admin/templates/admin/404.html:10 +msgid "We're sorry, but the requested page could not be found." +msgstr "죄송합니다, ìš”ì²í•˜ì‹ 페ì´ì§€ë¥¼ ì°¾ì„ ìˆ˜ 없습니다." + +#: contrib/admin/templates/admin/index.html:17 +#, python-format +msgid "Models available in the %(name)s application." +msgstr "%(name)s 어플리케ì´ì…˜ìœ¼ë¡œ ì´ìš© 가능한 모ë¸" + +#: contrib/admin/templates/admin/index.html:18 +#, python-format +msgid "%(name)s" +msgstr "%(name)s" + +#: contrib/admin/templates/admin/index.html:28 +#: contrib/admin/templates/admin/change_form.html:15 +msgid "Add" +msgstr "추가" + +#: contrib/admin/templates/admin/index.html:34 +msgid "Change" +msgstr "변경" + +#: contrib/admin/templates/admin/index.html:44 +msgid "You don't have permission to edit anything." +msgstr "ìˆ˜ì •í• ê¶Œí•œì´ ì—†ìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/admin/index.html:52 +msgid "Recent Actions" +msgstr "최근 ì•¡ì…˜" + +#: contrib/admin/templates/admin/index.html:53 +msgid "My Actions" +msgstr "ë‚˜ì˜ ì•¡ì…˜" + +#: contrib/admin/templates/admin/index.html:57 +msgid "None available" +msgstr "ì´ìš©í• 수 없습니다." + +#: contrib/admin/templates/admin/change_form.html:22 +msgid "View on site" +msgstr "사ì´íЏì—서 보기" + +#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/auth/user/change_password.html:24 +msgid "Please correct the error below." +msgid_plural "Please correct the errors below." +msgstr[0] "ì•„ëž˜ì˜ ì˜¤ë¥˜ë¥¼ ìˆ˜ì •í•´ 주세요." +msgstr[1] "ì•„ëž˜ì˜ ì˜¤ë¥˜ë“¤ì„ ìˆ˜ì •í•´ 주세요." + +#: contrib/admin/templates/admin/change_form.html:50 +msgid "Ordering" +msgstr "순서" + +#: contrib/admin/templates/admin/change_form.html:53 +msgid "Order:" +msgstr "순서:" + +#: contrib/admin/templates/admin/base.html:25 +msgid "Welcome," +msgstr "환ì˜í•©ë‹ˆë‹¤," + +#: contrib/admin/templates/admin/delete_confirmation.html:9 +#: contrib/admin/templates/admin/submit_line.html:3 +msgid "Delete" +msgstr "ì‚ì œ" + +#: contrib/admin/templates/admin/delete_confirmation.html:14 +#, python-format +msgid "" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" +msgstr "" +"%(object_name)s \"%(escaped_object)s\" (ì„)를 ì‚ì œí•˜ë©´ì„œê´€ë ¨ 오브ì 트를 ì œê±°" +"í•˜ê³ ìž í–ˆìœ¼ë‚˜, 지금 사용하시는 ê³„ì •ì€ ë‹¤ìŒ íƒ€ìž…ì˜ ì˜¤ë¸Œì 트를 ì œê±°í• ê¶Œí•œì´ ì—†" +"습니다. :" + +#: contrib/admin/templates/admin/delete_confirmation.html:21 +#, python-format +msgid "" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" +msgstr "" +"ì •ë§ë¡œ %(object_name)s \"%(escaped_object)s\" (ì„)를 ì‚ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ?다ìŒì˜ " +"ê´€ë ¨ ì•„ì´í…œë“¤ì´ ëª¨ë‘ ì‚ì œë©ë‹ˆë‹¤. :" + +#: contrib/admin/templates/admin/delete_confirmation.html:26 +msgid "Yes, I'm sure" +msgstr "네, 확실합니다." + +#: contrib/admin/templates/admin/submit_line.html:4 +msgid "Save as new" +msgstr "새로 ì €ìž¥" + +#: contrib/admin/templates/admin/submit_line.html:5 +msgid "Save and add another" +msgstr "ì €ìž¥ ë° ë‹¤ë¥¸ ì´ë¦„으로 추가" + +#: contrib/admin/templates/admin/submit_line.html:6 +msgid "Save and continue editing" +msgstr "ì €ìž¥ ë° íŽ¸ì§‘ 계ì†" + +#: contrib/admin/templates/admin/submit_line.html:7 +msgid "Save" +msgstr "ì €ìž¥" + +#: contrib/admin/templates/admin/auth/user/change_password.html:28 +#, python-format +msgid "Enter a new password for the user <strong>%(username)s</strong>." +msgstr "<strong>%(username)s</strong> 새로운 비밀번호를 ìž…ë ¥í•˜ì„¸ìš”." + +#: contrib/admin/templates/admin/auth/user/change_password.html:34 +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +msgid "Password" +msgstr "비밀번호" + +#: contrib/admin/templates/admin/auth/user/change_password.html:39 +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +msgid "Password (again)" +msgstr "비밀번호 (확ì¸)" + +#: contrib/admin/templates/admin/auth/user/change_password.html:40 +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +msgid "Enter the same password as above, for verification." +msgstr "확ì¸ì„ 위해 위와 ë™ì¼í•œ 비밀번호를 ìž…ë ¥í•˜ì„¸ìš”. " + +#: contrib/admin/templates/admin/auth/user/add_form.html:6 +msgid "" +"First, enter a username and password. Then, you'll be able to edit more user " +"options." +msgstr "" +"사용ìžëª…와 비밀번호를 ìž…ë ¥í•˜ì„¸ìš”.ë” ë§Žì€ ì‚¬ìš©ìž ì˜µì…˜ì„ ì‚¬ìš©í•˜ì‹¤ 수 있습니다." + +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" +msgstr "사용ìžëª…" + +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_change_form.html:6 +#: contrib/admin/templates/registration/password_change_form.html:10 +msgid "Password change" +msgstr "비밀번호 변경" + +#: contrib/admin/templates/registration/password_change_done.html:6 +#: contrib/admin/templates/registration/password_change_done.html:10 +msgid "Password change successful" +msgstr "비밀번호를 변경하였습니다." + +#: contrib/admin/templates/registration/password_change_done.html:12 +msgid "Your password was changed." +msgstr "비밀번호가 변경ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:6 +#: contrib/admin/templates/registration/password_reset_form.html:10 +#: contrib/admin/templates/registration/password_reset_done.html:4 +msgid "Password reset" +msgstr "비밀번호 초기화" + +#: contrib/admin/templates/registration/password_reset_form.html:12 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll reset " +"your password and e-mail the new one to you." +msgstr "" +"비밀번호를 잊으셨나요? ì•„ëž˜ì— ë¹„ë°€ë²ˆí˜¸ë¥¼ ìž…ë ¥í•˜ì‹œë©´ë¹„ë°€ì „í˜¸ë¥¼ 초기화 한 후, " +"새로운 비밀번호를 ë³´ë‚´ë“œë¦¬ê² ìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "E-mail address:" +msgstr "ì´ë©”ì¼ ì£¼ì†Œ:" + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "Reset my password" +msgstr "비밀번호 초기화" + +#: contrib/admin/templates/registration/logged_out.html:8 +msgid "Thanks for spending some quality time with the Web site today." +msgstr "사ì´íŠ¸ë¥¼ ì´ìš©í•´ 주셔서 ê³ ë§™ìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/registration/logged_out.html:10 +msgid "Log in again" +msgstr "다시 로그ì¸í•˜ê¸°" + +#: contrib/admin/templates/registration/password_reset_done.html:6 +#: contrib/admin/templates/registration/password_reset_done.html:10 +msgid "Password reset successful" +msgstr "비밀번호가 초기화 ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_reset_done.html:12 +msgid "" +"We've e-mailed a new password to the e-mail address you submitted. You " +"should be receiving it shortly." +msgstr "새로운 비밀번호를 등ë¡í•˜ì‹ ì´ë©”ì¼ë¡œ ë³´ë‚´ë“œë ¸ìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_change_form.html:12 +msgid "" +"Please enter your old password, for security's sake, and then enter your new " +"password twice so we can verify you typed it in correctly." +msgstr "" +"ë³´ì•ˆìƒ í•„ìš”í•˜ì˜¤ë‹ˆ ê¸°ì¡´ì— ì‚¬ìš©í•˜ì‹œë˜ ë¹„ë°€ë²ˆí˜¸ë¥¼ ìž…ë ¥í•´ 주세요.새로운 비밀번호" +"는 ì •í™•ížˆ ìž…ë ¥í–ˆëŠ”ì§€ 확ì¸í• 수 있ë„ë¡ ë‘ ë²ˆ ìž…ë ¥í•˜ì‹œê¸° ë°”ëžë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_change_form.html:17 +msgid "Old password:" +msgstr "기존 비밀번호:" + +#: contrib/admin/templates/registration/password_change_form.html:19 +msgid "New password:" +msgstr "새로운 비밀번호:" + +#: contrib/admin/templates/registration/password_change_form.html:21 +msgid "Confirm password:" +msgstr "새로운 비밀번호(확ì¸):" + +#: contrib/admin/templates/registration/password_change_form.html:23 +msgid "Change my password" +msgstr "비밀번호 변경" + +#: contrib/admin/templates/registration/password_reset_email.html:2 +msgid "You're receiving this e-mail because you requested a password reset" +msgstr "비밀번호가 초기화 ë˜ì—ˆìŒì„ ì•Œë ¤ë“œë¦½ë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_reset_email.html:3 +#, python-format +msgid "for your user account at %(site_name)s" +msgstr "%(site_name)s ì˜ ì‚¬ìš©ìž ë¹„ë°€ë²ˆí˜¸ê°€ 초기화 ë˜ì—ˆìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_reset_email.html:5 +#, python-format +msgid "Your new password is: %(new_password)s" +msgstr "새로운 비밀번호는 %(new_password)s 입니다." + +#: contrib/admin/templates/registration/password_reset_email.html:7 +msgid "Feel free to change this password by going to this page:" +msgstr "해당 페ì´ì§€ì—서 ì–¸ì œë“ ì§€ 비밀번호 ë³€ê²½ì´ ê°€ëŠ¥í•©ë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_reset_email.html:11 +msgid "Your username, in case you've forgotten:" +msgstr "사용ìžëª…:" + +#: contrib/admin/templates/registration/password_reset_email.html:13 +msgid "Thanks for using our site!" +msgstr "사ì´íŠ¸ë¥¼ ì´ìš©í•´ 주셔서 ê³ ë§™ìŠµë‹ˆë‹¤." + +#: contrib/admin/templates/registration/password_reset_email.html:15 +#, python-format +msgid "The %(site_name)s team" +msgstr "%(site_name)s 팀" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Bookmarklets" +msgstr "ë¶ë§ˆí¬ë¦¿" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:5 +msgid "Documentation bookmarklets" +msgstr "문서 ë¶ë§ˆí¬ë¦¿" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:9 +msgid "" +"\n" +"<p class=\"help\">To install bookmarklets, drag the link to your bookmarks\n" +"toolbar, or right-click the link and add it to your bookmarks. Now you can\n" +"select the bookmarklet from any page in the site. Note that some of these\n" +"bookmarklets require you to be viewing the site from a computer designated\n" +"as \"internal\" (talk to your system administrator if you aren't sure if\n" +"your computer is \"internal\").</p>\n" +msgstr "" +"\n" +"<p class=\"help\"> ë¶ë§ˆí¬ë¦¿ì„ ì„¤ì¹˜í•˜ì‹œë ¤ë©´ ë§í¬ë¥¼ ë¶ë§ˆí¬ 툴바로 드래그 하거" +"나,\n" +"오른쪽 í´ë¦ìœ¼ë¡œ 해당 ë§í¬ë¥¼ ë¶ë§ˆí¬ì— 추가하세요.\n" +"ì´ì œ 사ì´íЏ ë‚´ì˜ ëª¨ë“ íŽ˜ì´ì§€ì—서 ë¶ë§ˆí¬ë¦¿ ì„ íƒì´ 가능합니다.\n" +"ë¶ë§ˆí¬ë¦¿ì— ë”°ë¼ ë‚´ë¶€ ë„¤íŠ¸ì›Œí¬ ìƒì˜ 컴퓨터로부터 ì´ ì‚¬ì´íŠ¸ë¥¼ 참조해야하는 경우" +"ê°€ 있습니다.\n" +"(ë‚´ë¶€ 네트워í¬ê°€ 있는지 불명확한 경우 시스템 관리ìžì—게 확ì¸í•˜ì‹œê¸° ë°”ëžë‹ˆë‹¤.)" +"</p>\n" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:19 +msgid "Documentation for this page" +msgstr "ì´ íŽ˜ì´ì§€ì˜ 문서" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:20 +msgid "" +"Jumps you from any page to the documentation for the view that generates " +"that page." +msgstr "ê° íŽ˜ì´ì§€ë¡œì—서 해당 페ì´ì§€ë¥¼ ìƒì„±í•œ ë·°ì˜ ë¬¸ì„œë¡œ 갑니다." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:22 +msgid "Show object ID" +msgstr "오브ì 트 ì•„ì´ë”” 표시" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:23 +msgid "" +"Shows the content-type and unique ID for pages that represent a single " +"object." +msgstr "ë‹¨ì¼ ì˜¤ë¸Œì 트 페ì´ì§€ì˜ ê³ ìœ ì•„ì´ë””와 컨í…ì¸ íƒ€ìž…ì„ í‘œì‹œí•©ë‹ˆë‹¤." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:25 +msgid "Edit this object (current window)" +msgstr "오브ì 트 편집(현재 ì°½)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:26 +msgid "Jumps to the admin page for pages that represent a single object." +msgstr "ë‹¨ì¼ ì˜¤ë¸Œì 트 페ì´ì§€ì˜ 관리 페ì´ì§€ë¡œ ì´ë™" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:28 +msgid "Edit this object (new window)" +msgstr "오브ì 트 편집(새로운 ì°½)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:29 +msgid "As above, but opens the admin page in a new window." +msgstr "위와 ë™ì¼í•˜ë©°, 새로운 ì°½ì—서 관리 페ì´ì§€ë¥¼ 엽니다." + +#: contrib/localflavor/au/forms.py:18 +#, +msgid "Enter a 4 digit post code." +msgstr "우편번호를 ìž…ë ¥í•˜ì„¸ìš”. (xxxx)" + +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "우편번호를 ìž…ë ¥í•˜ì„¸ìš”. (xxx xxx)" + +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/fi/forms.py:14 +#: contrib/localflavor/de/forms.py:16 +msgid "Enter a zip code in the format XXXXX." +msgstr "우편번호를 ìž…ë ¥í•˜ì„¸ìš”.(xxx xxx)" + +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "우변번호를 ìž…ë ¥í•˜ì„¸ìš”.(xxxxxx ë˜ëŠ” xxx-xxx)" + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "" + +#: contrib/localflavor/it/forms.py:16 +#, +msgid "Enter a valid zip code." +msgstr "올바른 우편번호를 ìž…ë ¥í•˜ì„¸ìš”." + +#: contrib/localflavor/it/forms.py:41 +#, +msgid "Enter a valid Social Security number." +msgstr "올바른 Social Security number를 ìž…ë ¥í•˜ì„¸ìš”." + +#: contrib/localflavor/it/forms.py:68 +#, +msgid "Enter a valid VAT number." +msgstr "올바른 VAT번호를 ìž…ë ¥í•˜ì„¸ìš”." + +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:45 +#, +msgid "Enter a valid Finnish social security number." +msgstr "올바른 핀란드 Social Security number를 ìž…ë ¥í•˜ì„¸ìš”." + +#: contrib/localflavor/br/forms.py:18 +#, +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "우편번호는 XXXXX-XXX 형ì‹ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš”." + +#: contrib/localflavor/br/forms.py:30 +#, fuzzy +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "" +"ì „í™”ë²ˆí˜¸ëŠ” xx-xxxx-xxxx 형ì‹ìœ¼ë¡œ ìž…ë ¥í•˜ì„¸ìš”." + +#: contrib/localflavor/no/forms.py:15 +#, fuzzy +msgid "Enter a zip code in the format XXXX." +msgstr "우편번호를 ìž…ë ¥í•˜ì„¸ìš”.(xxx xxx)" + +#: contrib/localflavor/no/forms.py:36 +#, fuzzy +msgid "Enter a valid Norwegian social security number." +msgstr "10진수를 사용해 주세요." + +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "" + +#: contrib/localflavor/de/de_states.py:7 +#, fuzzy +msgid "Berlin" +msgstr "브ë¼ì§ˆì–´" + +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "" + +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:11 +#, fuzzy +msgid "Hessen" +msgstr "메시지" + +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "" + +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "" + +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "" + +#: contrib/localflavor/de/de_states.py:16 +#, fuzzy +msgid "Saarland" +msgstr "카탈로니아어" + +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "" + +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "" + +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "" + +#: contrib/localflavor/de/forms.py:60 +msgid "" +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." +msgstr "" + +#: contrib/localflavor/us/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "우변번호를 ìž…ë ¥í•˜ì„¸ìš”.(xxxxxx ë˜ëŠ” xxx-xxx)" + +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "" + +#: template/defaultfilters.py:491 +msgid "yes,no,maybe" +msgstr "예, 아니오, 아마ë„" + +#: template/defaultfilters.py:520 +#, python-format +msgid "%(size)d byte" +msgid_plural "%(size)d bytes" +msgstr[0] "" +msgstr[1] "" + +#: template/defaultfilters.py:522 +#, python-format +msgid "%.1f KB" +msgstr "" + +#: template/defaultfilters.py:524 +#, python-format +msgid "%.1f MB" +msgstr "" + +#: template/defaultfilters.py:525 +#, python-format +msgid "%.1f GB" +msgstr "" + +#: oldforms/__init__.py:392 +#, python-format +msgid "Ensure your text is less than %s character." +msgid_plural "Ensure your text is less than %s characters." +msgstr[0] "%s ìž ì´í•˜ë¡œ ìž…ë ¥í•´ 주세요." +msgstr[1] "%s ìž ì´í•˜ë¡œ ìž…ë ¥í•´ 주세요." + +#: oldforms/__init__.py:397 +msgid "Line breaks are not allowed here." +msgstr "ì¤„ë°”ê¿ˆì´ í—ˆìš©ë˜ì§€ 않습니다." + +#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 +#, python-format +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "올바르게 ì„ íƒí•´ 주세요. '%(data)s' (ì´)ê°€ %(choices)s ì— ì—†ìŠµë‹ˆë‹¤." + +#: oldforms/__init__.py:674 +msgid "The submitted file is empty." +msgstr "ìž…ë ¥í•˜ì‹ íŒŒì¼ì€ 빈 파ì¼ìž…니다." + +#: oldforms/__init__.py:730 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "-32,768 ~ 32,767 사ì´ì˜ ì •ìˆ˜ë¥¼ ìž…ë ¥í•˜ì„¸ìš”." + +#: oldforms/__init__.py:740 +msgid "Enter a positive number." +msgstr "양수를 ìž…ë ¥í•˜ì„¸ìš”." + +#: oldforms/__init__.py:750 +msgid "Enter a whole number between 0 and 32,767." +msgstr "0 ~ 32,767 사ì´ì˜ ì •ìˆ˜ë¥¼ ìž…ë ¥í•˜ì„¸ìš”." diff --git a/django/conf/locale/ko/LC_MESSAGES/djangojs.mo b/django/conf/locale/ko/LC_MESSAGES/djangojs.mo Binary files differnew file mode 100644 index 0000000000..7b70530c1a --- /dev/null +++ b/django/conf/locale/ko/LC_MESSAGES/djangojs.mo diff --git a/django/conf/locale/ko/LC_MESSAGES/djangojs.po b/django/conf/locale/ko/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000..d76174c3a3 --- /dev/null +++ b/django/conf/locale/ko/LC_MESSAGES/djangojs.po @@ -0,0 +1,118 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-04-06 11:10+0900\n" +"PO-Revision-Date: 2007-04-06 11:15+0900\n" +"Last-Translator: Hyun Mi Ae <happyhyun@gmail.com>\n" +"Language-Team: Korean\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: contrib/admin/media/js/calendar.js:24 +#: contrib/admin/media/js/dateparse.js:32 +msgid "" +"January February March April May June July August September October November " +"December" +msgstr "1ì›” 2ì›” 3ì›” 4ì›” 5ì›” 6ì›” 7ì›” 8ì›” 9ì›” 10ì›” 11ì›” 12ì›”" + +#: contrib/admin/media/js/calendar.js:25 +msgid "S M T W T F S" +msgstr "ì¼ ì›” í™” 수 목 금 í† " + +#: contrib/admin/media/js/dateparse.js:33 +msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" +msgstr "ì¼ìš”ì¼ ì›”ìš”ì¼ í™”ìš”ì¼ ìˆ˜ìš”ì¼ ëª©ìš”ì¼ ê¸ˆìš”ì¼ í† ìš”ì¼" + +#: contrib/admin/media/js/SelectFilter2.js:33 +#, perl-format +msgid "Available %s" +msgstr "ì´ìš© 가능한 %s" + +#: contrib/admin/media/js/SelectFilter2.js:41 +msgid "Choose all" +msgstr "ëª¨ë‘ ì„ íƒ" + +#: contrib/admin/media/js/SelectFilter2.js:46 +msgid "Add" +msgstr "추가" + +#: contrib/admin/media/js/SelectFilter2.js:48 +msgid "Remove" +msgstr "ì‚ì œ" + +#: contrib/admin/media/js/SelectFilter2.js:53 +#, perl-format +msgid "Chosen %s" +msgstr "ì„ íƒëœ %s" + +#: contrib/admin/media/js/SelectFilter2.js:54 +msgid "Select your choice(s) and click " +msgstr "ì„ íƒí•œ 후 í´ë¦í•˜ì„¸ìš”" + +#: contrib/admin/media/js/SelectFilter2.js:59 +msgid "Clear all" +msgstr "ëª¨ë‘ ì‚ì œ" + +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:34 +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:72 +msgid "Show" +msgstr "보기" + +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:63 +msgid "Hide" +msgstr "ê°ì¶”기" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:47 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 +msgid "Now" +msgstr "현재" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:51 +msgid "Clock" +msgstr "시계" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:78 +msgid "Choose a time" +msgstr "시간 ì„ íƒ" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 +msgid "Midnight" +msgstr "ìžì •" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 +msgid "6 a.m." +msgstr "ì˜¤ì „ 6시" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:84 +msgid "Noon" +msgstr "ì •ì˜¤" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:88 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:183 +msgid "Cancel" +msgstr "취소" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:128 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:177 +msgid "Today" +msgstr "오늘" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:132 +msgid "Calendar" +msgstr "ë‹¬ë ¥" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:175 +msgid "Yesterday" +msgstr "ì–´ì œ" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:179 +msgid "Tomorrow" +msgstr "ë‚´ì¼" diff --git a/django/conf/locale/lv/LC_MESSAGES/django.mo b/django/conf/locale/lv/LC_MESSAGES/django.mo Binary files differindex 21f9e8aecb..e3cd24cfb7 100644 --- a/django/conf/locale/lv/LC_MESSAGES/django.mo +++ b/django/conf/locale/lv/LC_MESSAGES/django.mo diff --git a/django/conf/locale/lv/LC_MESSAGES/django.po b/django/conf/locale/lv/LC_MESSAGES/django.po index 72e2316fcb..bf73a61615 100644 --- a/django/conf/locale/lv/LC_MESSAGES/django.po +++ b/django/conf/locale/lv/LC_MESSAGES/django.po @@ -8,710 +8,742 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-02-15 10:47+1100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <viestards.lists@gmail.com>\n" +"POT-Creation-Date: 2007-05-07 23:28+0300\n" +"PO-Revision-Date: 2007-05-08 00:35+0300\n" +"Last-Translator: Gatis Tomsons <gatis.tomsons@gmail.com>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -#: db/models/manipulators.py:305 +#: oldforms/__init__.py:357 +#: db/models/fields/__init__.py:117 +#: db/models/fields/__init__.py:274 +#: db/models/fields/__init__.py:612 +#: db/models/fields/__init__.py:623 +#: newforms/models.py:178 +#: newforms/fields.py:80 +#: newforms/fields.py:376 +#: newforms/fields.py:452 +#: newforms/fields.py:463 +msgid "This field is required." +msgstr "Å is lauks ir obligÄts." + +#: oldforms/__init__.py:392 #, python-format -msgid "%(object)s with this %(type)s already exists for the given %(field)s." -msgstr "" +msgid "Ensure your text is less than %s character." +msgid_plural "Ensure your text is less than %s characters." +msgstr[0] "" +msgstr[1] "" -#: db/models/manipulators.py:306 contrib/admin/views/main.py:335 -#: contrib/admin/views/main.py:337 contrib/admin/views/main.py:339 -msgid "and" -msgstr "un" +#: oldforms/__init__.py:397 +msgid "Line breaks are not allowed here." +msgstr "PÄrneÅ¡ana jaunÄ rindÄ Å¡eit nav atļauta." -#: db/models/fields/related.py:53 +#: oldforms/__init__.py:498 +#: oldforms/__init__.py:571 +#: oldforms/__init__.py:610 #, python-format -msgid "Please enter a valid %s." -msgstr "LÅ«dzu ievadiet korektu %s" +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "" -#: db/models/fields/related.py:642 -msgid "Separate multiple IDs with commas." -msgstr "Atdaliet vairÄkus ID ar komatiem." +#: oldforms/__init__.py:577 +#: newforms/widgets.py:180 +#: contrib/admin/filterspecs.py:150 +msgid "Unknown" +msgstr "NezinÄms" -#: db/models/fields/related.py:644 -msgid "" -"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +#: oldforms/__init__.py:577 +#: newforms/widgets.py:180 +#: contrib/admin/filterspecs.py:143 +msgid "Yes" +msgstr "JÄ" + +#: oldforms/__init__.py:577 +#: newforms/widgets.py:180 +#: contrib/admin/filterspecs.py:143 +msgid "No" +msgstr "NÄ“" + +#: oldforms/__init__.py:672 +#: core/validators.py:174 +#: core/validators.py:445 +msgid "No file was submitted. Check the encoding type on the form." msgstr "" -#: db/models/fields/related.py:691 +#: oldforms/__init__.py:674 +msgid "The submitted file is empty." +msgstr "JÅ«su norÄdÄ«tais fails ir tukÅ¡s." + +#: oldforms/__init__.py:730 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "Ievadiet veselu skaitli intervÄlÄ no -32,768 lÄ«dz 32,767." + +#: oldforms/__init__.py:740 +msgid "Enter a positive number." +msgstr "Ievadiet pozitÄ«vu skaitli." + +#: oldforms/__init__.py:750 +msgid "Enter a whole number between 0 and 32,767." +msgstr "Ievadiet veselu skaitli intervÄla starp 0 un 32,767." + +#: db/models/manipulators.py:307 #, python-format -msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." -msgid_plural "" -"Please enter valid %(self)s IDs. The values %(value)r are invalid." -msgstr[0] "" -msgstr[1] "" +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "" + +#: db/models/manipulators.py:308 +#: contrib/admin/views/main.py:335 +#: contrib/admin/views/main.py:337 +#: contrib/admin/views/main.py:339 +msgid "and" +msgstr "un" #: db/models/fields/__init__.py:42 #, python-format msgid "%(optname)s with this %(fieldname)s already exists." msgstr "" -#: db/models/fields/__init__.py:116 db/models/fields/__init__.py:273 -#: db/models/fields/__init__.py:605 db/models/fields/__init__.py:616 -#: oldforms/__init__.py:352 newforms/fields.py:78 newforms/fields.py:373 -#: newforms/fields.py:449 newforms/fields.py:460 -msgid "This field is required." -msgstr "Å is lauks ir obligÄts." - -#: db/models/fields/__init__.py:366 +#: db/models/fields/__init__.py:369 msgid "This value must be an integer." msgstr "VÄ“rtÄ«bai ir jÄbÅ«t veselam skaitlim." -#: db/models/fields/__init__.py:401 +#: db/models/fields/__init__.py:404 msgid "This value must be either True or False." msgstr "VÄ“rtÄ«bai jÄbÅ«t True vai False." -#: db/models/fields/__init__.py:422 +#: db/models/fields/__init__.py:425 msgid "This field cannot be null." msgstr "Å is lauks nevar bÅ«t null" -#: db/models/fields/__init__.py:454 core/validators.py:147 +#: db/models/fields/__init__.py:459 +#: core/validators.py:148 msgid "Enter a valid date in YYYY-MM-DD format." msgstr "Ievadiet korektu datumu YYYY-MM-DD formÄtÄ." -#: db/models/fields/__init__.py:521 core/validators.py:156 +#: db/models/fields/__init__.py:528 +#: core/validators.py:157 msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." msgstr "Ievadiet korektu datumu/laiku YYYY-MM-DD HH:MM formÄtÄ." -#: db/models/fields/__init__.py:625 +#: db/models/fields/__init__.py:632 msgid "Enter a valid filename." msgstr "Ievadiet korektu faila vÄrdu." +#: db/models/fields/__init__.py:753 +msgid "This value must be either None, True or False." +msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t None, True vai False." + +#: db/models/fields/related.py:53 +#, python-format +msgid "Please enter a valid %s." +msgstr "LÅ«dzu ievadiet korektu %s" + +#: db/models/fields/related.py:642 +msgid "Separate multiple IDs with commas." +msgstr "Atdaliet vairÄkus ID ar komatiem." + +#: db/models/fields/related.py:644 +msgid "Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "" + +#: db/models/fields/related.py:691 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +msgid_plural "Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr[0] "" +msgstr[1] "" + #: conf/global_settings.py:39 msgid "Arabic" -msgstr "" +msgstr "ArÄbu" #: conf/global_settings.py:40 msgid "Bengali" -msgstr "" +msgstr "BengÄļu" #: conf/global_settings.py:41 -msgid "Czech" +msgid "Catalan" msgstr "" #: conf/global_settings.py:42 -msgid "Welsh" -msgstr "" +msgid "Czech" +msgstr "ÄŒehu" #: conf/global_settings.py:43 -msgid "Danish" -msgstr "" +msgid "Welsh" +msgstr "Velsas" #: conf/global_settings.py:44 -msgid "German" -msgstr "" +msgid "Danish" +msgstr "DÄņu" #: conf/global_settings.py:45 -msgid "Greek" -msgstr "" +msgid "German" +msgstr "VÄcu" #: conf/global_settings.py:46 -msgid "English" -msgstr "" +msgid "Greek" +msgstr "GrieÄ·u" #: conf/global_settings.py:47 -msgid "Spanish" -msgstr "" +msgid "English" +msgstr "Angļu" #: conf/global_settings.py:48 -msgid "Argentinean Spanish" -msgstr "" +msgid "Spanish" +msgstr "Spaņu" #: conf/global_settings.py:49 -msgid "Finnish" -msgstr "" +msgid "Argentinean Spanish" +msgstr "ArgentÄ«nieÅ¡u SpÄņu" #: conf/global_settings.py:50 -msgid "French" -msgstr "" +msgid "Finnish" +msgstr "Somu" #: conf/global_settings.py:51 -msgid "Galician" -msgstr "" +msgid "French" +msgstr "FranÄu" #: conf/global_settings.py:52 -msgid "Hungarian" -msgstr "" +msgid "Galician" +msgstr "GalÄ«cieÅ¡u" #: conf/global_settings.py:53 -msgid "Hebrew" -msgstr "" +msgid "Hungarian" +msgstr "UngÄru" #: conf/global_settings.py:54 -msgid "Icelandic" +msgid "Hebrew" msgstr "" #: conf/global_settings.py:55 -msgid "Italian" -msgstr "" +msgid "Icelandic" +msgstr "IslandieÅ¡u" #: conf/global_settings.py:56 -msgid "Japanese" -msgstr "" +msgid "Italian" +msgstr "ItÄļu" #: conf/global_settings.py:57 -msgid "Dutch" -msgstr "" +msgid "Japanese" +msgstr "JapÄņu" #: conf/global_settings.py:58 -msgid "Norwegian" -msgstr "" +msgid "Korean" +msgstr "KoreieÅ¡u" #: conf/global_settings.py:59 -msgid "Polish" -msgstr "" +msgid "Kannada" +msgstr "KanÄda" #: conf/global_settings.py:60 -msgid "Brazilian" -msgstr "" +msgid "Latvian" +msgstr "LatvieÅ¡u" #: conf/global_settings.py:61 -msgid "Romanian" -msgstr "" +msgid "Macedonian" +msgstr "MaÄ·edonieÅ¡u" #: conf/global_settings.py:62 -msgid "Russian" -msgstr "" +msgid "Dutch" +msgstr "DÄņu" #: conf/global_settings.py:63 -msgid "Slovak" -msgstr "" +msgid "Norwegian" +msgstr "Norvēģu" #: conf/global_settings.py:64 -msgid "Slovenian" -msgstr "" +msgid "Polish" +msgstr "Poļu" #: conf/global_settings.py:65 -msgid "Serbian" -msgstr "" +msgid "Portugese" +msgstr "PortugÄļu" #: conf/global_settings.py:66 -msgid "Swedish" -msgstr "" +msgid "Brazilian" +msgstr "BrazÄ«lieÅ¡u" #: conf/global_settings.py:67 -msgid "Tamil" -msgstr "" +msgid "Romanian" +msgstr "RumÄņu" #: conf/global_settings.py:68 -msgid "Turkish" -msgstr "" +msgid "Russian" +msgstr "Krievu" #: conf/global_settings.py:69 -msgid "Ukrainian" -msgstr "" +msgid "Slovak" +msgstr "SlovÄku" #: conf/global_settings.py:70 -msgid "Simplified Chinese" -msgstr "" +msgid "Slovenian" +msgstr "Slovēņu" #: conf/global_settings.py:71 -msgid "Traditional Chinese" -msgstr "" - -#: utils/timesince.py:12 -msgid "year" -msgid_plural "years" -msgstr[0] "gads" -msgstr[1] "gadi" - -#: utils/timesince.py:13 -msgid "month" -msgid_plural "months" -msgstr[0] "mÄ“nesis" -msgstr[1] "mÄ“neÅ¡i" - -#: utils/timesince.py:14 -msgid "week" -msgid_plural "weeks" -msgstr[0] "nedēļa" -msgstr[1] "nedēļas" - -#: utils/timesince.py:15 -msgid "day" -msgid_plural "days" -msgstr[0] "diena" -msgstr[1] "dienas" - -#: utils/timesince.py:16 -msgid "hour" -msgid_plural "hours" -msgstr[0] "stunda" -msgstr[1] "stundas" - -#: utils/timesince.py:17 -msgid "minute" -msgid_plural "minutes" -msgstr[0] "minÅ«te" -msgstr[1] "minÅ«tes" - -#: utils/dates.py:6 -msgid "Monday" -msgstr "Pirmdiena" - -#: utils/dates.py:6 -msgid "Tuesday" -msgstr "Otrdiena" - -#: utils/dates.py:6 -msgid "Wednesday" -msgstr "TreÅ¡diena" - -#: utils/dates.py:6 -msgid "Thursday" -msgstr "Ceturdiena" - -#: utils/dates.py:6 -msgid "Friday" -msgstr "Piektdiena" +msgid "Serbian" +msgstr "Serbu" -#: utils/dates.py:7 -msgid "Saturday" -msgstr "Sestdiena" +#: conf/global_settings.py:72 +msgid "Swedish" +msgstr "Zviedru" -#: utils/dates.py:7 -msgid "Sunday" -msgstr "SvÄ“tdiena" +#: conf/global_settings.py:73 +msgid "Tamil" +msgstr "TamilieÅ¡u" -#: utils/dates.py:14 -msgid "January" -msgstr "JanvÄris" +#: conf/global_settings.py:74 +msgid "Telugu" +msgstr "Telugu" -#: utils/dates.py:14 -msgid "February" -msgstr "FebruÄris" +#: conf/global_settings.py:75 +msgid "Turkish" +msgstr "Turku" -#: utils/dates.py:14 utils/dates.py:27 -msgid "March" -msgstr "Marts" +#: conf/global_settings.py:76 +msgid "Ukrainian" +msgstr "Ukraiņu" -#: utils/dates.py:14 utils/dates.py:27 -msgid "April" -msgstr "AprÄ«lis" +#: conf/global_settings.py:77 +msgid "Simplified Chinese" +msgstr "VienkÄrÅ¡Ä Ä·Ä«nieÅ¡u" -#: utils/dates.py:14 utils/dates.py:27 -msgid "May" -msgstr "Maijs" +#: conf/global_settings.py:78 +msgid "Traditional Chinese" +msgstr "TradicionÄlÄ Ä·Ä«nieÅ¡u" -#: utils/dates.py:14 utils/dates.py:27 -msgid "June" -msgstr "JÅ«nijs" +#: core/validators.py:64 +msgid "This value must contain only letters, numbers and underscores." +msgstr "Å Ä« vÄ“rtÄ«ba var saturÄ“t tikai burtus, numurus un apakÅ¡svÄ«tras." -#: utils/dates.py:15 utils/dates.py:27 -msgid "July" -msgstr "JÅ«lijs" +#: core/validators.py:68 +msgid "This value must contain only letters, numbers, underscores, dashes or slashes." +msgstr "Å Ä« vÄ“rtÄ«ba var saturÄ“t tikai burtus, numurus un apakÅ¡svÄ«tras, svÄ«tras vai šķērssvÄ«tras." -#: utils/dates.py:15 -msgid "August" -msgstr "Augusts" +#: core/validators.py:72 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "Å Ä« vÄ“rtÄ«ba var saturÄ“t tikai burtus, numurus un apakÅ¡svÄ«tras vai šķērssvÄ«tras." -#: utils/dates.py:15 -msgid "September" -msgstr "Septembris" +#: core/validators.py:76 +msgid "Uppercase letters are not allowed here." +msgstr "AugšējÄ reÄ£istra burti nav atļauti." -#: utils/dates.py:15 -msgid "October" -msgstr "Oktobris" +#: core/validators.py:80 +msgid "Lowercase letters are not allowed here." +msgstr "ApakšējÄ reÄ£istra burti nav atļauti." -#: utils/dates.py:15 -msgid "November" -msgstr "Novembris" +#: core/validators.py:87 +msgid "Enter only digits separated by commas." +msgstr "Ievadiet tikai numurus, kas atdalÄ«ti ar komatiem." -#: utils/dates.py:16 -msgid "December" -msgstr "Decembris" +#: core/validators.py:99 +msgid "Enter valid e-mail addresses separated by commas." +msgstr "Ievadiet korektas e-pasta adreses, kas atdalÄ«tas ar komatiem." -#: utils/dates.py:19 -msgid "jan" -msgstr "" +#: core/validators.py:103 +msgid "Please enter a valid IP address." +msgstr "LÅ«dzu ievadiet korektu IP adresi." -#: utils/dates.py:19 -msgid "feb" -msgstr "" +#: core/validators.py:107 +msgid "Empty values are not allowed here." +msgstr "TukÅ¡as vÄ“rtÄ«bas nav atļautas." -#: utils/dates.py:19 -msgid "mar" -msgstr "" +#: core/validators.py:111 +msgid "Non-numeric characters aren't allowed here." +msgstr "Ne ciparu simboli nav atļauti." -#: utils/dates.py:19 -msgid "apr" -msgstr "" +#: core/validators.py:115 +msgid "This value can't be comprised solely of digits." +msgstr "Å Ä« vÄ“rtÄ«ba nevar saturÄ“t tikai ciparus." -#: utils/dates.py:19 -msgid "may" -msgstr "mai" +#: core/validators.py:120 +#: newforms/fields.py:128 +msgid "Enter a whole number." +msgstr "Ievadiet veselus skaitļus." -#: utils/dates.py:19 -msgid "jun" -msgstr "jÅ«n" +#: core/validators.py:124 +msgid "Only alphabetical characters are allowed here." +msgstr "Atļauti tikai alfabÄ“tiskie simboli." -#: utils/dates.py:20 -msgid "jul" -msgstr "jÅ«l" +#: core/validators.py:139 +msgid "Year must be 1900 or later." +msgstr "Gadam jabÅ«t 1900 vai vÄ“lÄkam." -#: utils/dates.py:20 -msgid "aug" -msgstr "aug" +#: core/validators.py:143 +#, python-format +msgid "Invalid date: %s" +msgstr "Nekorekts datums: %s" -#: utils/dates.py:20 -msgid "sep" -msgstr "sep" +#: core/validators.py:153 +msgid "Enter a valid time in HH:MM format." +msgstr "Ievadiet korektu laiku HH:MM formÄtÄ" -#: utils/dates.py:20 -msgid "oct" -msgstr "okt" +#: core/validators.py:162 +#: newforms/fields.py:271 +msgid "Enter a valid e-mail address." +msgstr "Ievadiet korektu e-pasta adresi." -#: utils/dates.py:20 -msgid "nov" -msgstr "" +#: core/validators.py:178 +msgid "Upload a valid image. The file you uploaded was either not an image or a corrupted image." +msgstr "AugÅ¡upielÄdÄ“jiet korektu attÄ“lu. Fails, ko JÅ«s augÅ¡upielÄdÄ“jÄt nav attÄ“ls vai arÄ« bojÄts attÄ“la fails." -#: utils/dates.py:20 -msgid "dec" -msgstr "" +#: core/validators.py:185 +#, python-format +msgid "The URL %s does not point to a valid image." +msgstr "URL %s nesatur korektu attÄ“lu." -#: utils/dates.py:27 -msgid "Jan." -msgstr "" +#: core/validators.py:189 +#, python-format +msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." +msgstr "Telefona numuriem jÄbÅ«t XXX-XXX-XXXX formÄtÄ. \"%s\" is nekorekts." -#: utils/dates.py:27 -msgid "Feb." -msgstr "" +#: core/validators.py:197 +#, python-format +msgid "The URL %s does not point to a valid QuickTime video." +msgstr "URL %s nenorÄda uz korektu QuickTime video." -#: utils/dates.py:28 -msgid "Aug." -msgstr "" +#: core/validators.py:201 +msgid "A valid URL is required." +msgstr "ReÄls URL obligÄts." -#: utils/dates.py:28 -msgid "Sept." +#: core/validators.py:215 +#, python-format +msgid "" +"Valid HTML is required. Specific errors are:\n" +"%s" msgstr "" +"Korekts HTML ir obligÄts. SpecifiskÄs kļūdas:\n" +"%s" -#: utils/dates.py:28 -msgid "Oct." -msgstr "" +#: core/validators.py:222 +#, python-format +msgid "Badly formed XML: %s" +msgstr "Slikti formÄ“ts XML: %s" -#: utils/dates.py:28 -msgid "Nov." -msgstr "" +#: core/validators.py:239 +#, python-format +msgid "Invalid URL: %s" +msgstr "Nekorekts URL: %s" -#: utils/dates.py:28 -msgid "Dec." -msgstr "" +#: core/validators.py:244 +#: core/validators.py:246 +#, python-format +msgid "The URL %s is a broken link." +msgstr "URL %s ir salauzta saite." -#: utils/translation/trans_real.py:362 -msgid "DATE_FORMAT" -msgstr "" +#: core/validators.py:252 +msgid "Enter a valid U.S. state abbreviation." +msgstr "Ievadiet korektu ASV Å¡tata abriviatÅ«ru." -#: utils/translation/trans_real.py:363 -msgid "DATETIME_FORMAT" -msgstr "" +#: core/validators.py:266 +#, python-format +msgid "Watch your mouth! The word %s is not allowed here." +msgid_plural "Watch your mouth! The words %s are not allowed here." +msgstr[0] "Seko saviem vÄrdiem! VÄrds %s nav atļauts Å¡eit." +msgstr[1] "Seko saviem vÄrdiem! VÄrdi %s nav atļauts Å¡eit." -#: utils/translation/trans_real.py:364 -msgid "TIME_FORMAT" -msgstr "" +#: core/validators.py:273 +#, python-format +msgid "This field must match the '%s' field." +msgstr "Laukam jÄsaskan ar %s lauku." -#: utils/translation/trans_real.py:380 -msgid "YEAR_MONTH_FORMAT" -msgstr "" +#: core/validators.py:292 +msgid "Please enter something for at least one field." +msgstr "LÅ«dzu ievadiet kaut ko vismaz vienÄ laukÄ." -#: utils/translation/trans_real.py:381 -msgid "MONTH_DAY_FORMAT" -msgstr "" +#: core/validators.py:301 +#: core/validators.py:312 +msgid "Please enter both fields or leave them both empty." +msgstr "LÅ«dzu ievadiet abus laukus vai atstÄjiet abus tukÅ¡us." -#: oldforms/__init__.py:387 +#: core/validators.py:320 #, python-format -msgid "Ensure your text is less than %s character." -msgid_plural "Ensure your text is less than %s characters." -msgstr[0] "" -msgstr[1] "" - -#: oldforms/__init__.py:392 -msgid "Line breaks are not allowed here." -msgstr "PÄrneÅ¡ana jaunÄ rindÄ Å¡eit nav atļauta." +msgid "This field must be given if %(field)s is %(value)s" +msgstr "Å is lauks ir jÄaizpilda, ja %(field)s ir vienÄds %(value)s" -#: oldforms/__init__.py:493 oldforms/__init__.py:566 oldforms/__init__.py:605 +#: core/validators.py:333 #, python-format -msgid "Select a valid choice; '%(data)s' is not in %(choices)s." -msgstr "" +msgid "This field must be given if %(field)s is not %(value)s" +msgstr "Å is lauks ir jÄaizpilda, ja %(field)s nav vienÄds %(value)s" -#: oldforms/__init__.py:572 contrib/admin/filterspecs.py:150 -#: newforms/widgets.py:162 -msgid "Unknown" -msgstr "NezinÄms" +#: core/validators.py:352 +msgid "Duplicate values are not allowed." +msgstr "DuplicÄ“tas vÄ“rtÄ«bas nav atļautas." -#: oldforms/__init__.py:572 contrib/admin/filterspecs.py:143 -#: newforms/widgets.py:162 -msgid "Yes" -msgstr "JÄ" +#: core/validators.py:367 +#, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t starp %(lower)s un %(upper)s." -#: oldforms/__init__.py:572 contrib/admin/filterspecs.py:143 -#: newforms/widgets.py:162 -msgid "No" -msgstr "NÄ“" +#: core/validators.py:369 +#, python-format +msgid "This value must be at least %s." +msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t vismaz %s." -#: oldforms/__init__.py:667 core/validators.py:173 core/validators.py:442 -msgid "No file was submitted. Check the encoding type on the form." -msgstr "" +#: core/validators.py:371 +#, python-format +msgid "This value must be no more than %s." +msgstr "Å ai vÄ“rtÄ«ba nedrÄ«kst pÄrsniegt %s." -#: oldforms/__init__.py:669 -msgid "The submitted file is empty." -msgstr "JÅ«su norÄdÄ«tais fails ir tukÅ¡s." +#: core/validators.py:407 +#, python-format +msgid "This value must be a power of %s." +msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t %s pakÄpei." -#: oldforms/__init__.py:725 -msgid "Enter a whole number between -32,768 and 32,767." -msgstr "Ievadiet veselu skaitli intervÄlÄ no -32,768 lÄ«dz 32,767." +#: core/validators.py:418 +msgid "Please enter a valid decimal number." +msgstr "LÅ«dzu ievadiet korektu decimÄlu numuru." -#: oldforms/__init__.py:735 -msgid "Enter a positive number." -msgstr "Ievadiet pozitÄ«vu skaitli." +#: core/validators.py:422 +#, python-format +msgid "Please enter a valid decimal number with at most %s total digit." +msgid_plural "Please enter a valid decimal number with at most %s total digits." +msgstr[0] "LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." +msgstr[1] "LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." -#: oldforms/__init__.py:745 -msgid "Enter a whole number between 0 and 32,767." -msgstr "Ievadiet veselu skaitli intervÄla starp 0 un 32,767." +#: core/validators.py:425 +#, python-format +msgid "Please enter a valid decimal number with a whole part of at most %s digit." +msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." +msgstr[0] "LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." +msgstr[1] "LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." -#: contrib/sessions/models.py:51 -msgid "session key" -msgstr "sesijas atslÄ“ga" +#: core/validators.py:428 +#, python-format +msgid "Please enter a valid decimal number with at most %s decimal place." +msgid_plural "Please enter a valid decimal number with at most %s decimal places." +msgstr[0] "LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu aiz komata %s." +msgstr[1] "LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu aiz komata %s." -#: contrib/sessions/models.py:52 -msgid "session data" -msgstr "sesijas dati" +#: core/validators.py:438 +#, python-format +msgid "Make sure your uploaded file is at least %s bytes big." +msgstr "PÄrliecinieties, ka jÅ«su augÅ¡upielÄdÄ“tais fails ir vismaz %s baiti liels." -#: contrib/sessions/models.py:53 -msgid "expire date" -msgstr "beigu datums" +#: core/validators.py:439 +#, python-format +msgid "Make sure your uploaded file is at most %s bytes big." +msgstr "PÄrliecinieties, ka jÅ«su augÅ¡upielÄdÄ“tais fails ir maksimums %s baiti liels." -#: contrib/sessions/models.py:57 -msgid "session" -msgstr "sesija" +#: core/validators.py:456 +msgid "The format for this field is wrong." +msgstr "Å Ä« faila formÄts ir nekorekts." -#: contrib/sessions/models.py:58 -msgid "sessions" -msgstr "sesijas" +#: core/validators.py:471 +msgid "This field is invalid." +msgstr "Å is lauks ir nekorekts." -#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 -msgid "The two password fields didn't match." -msgstr "" +#: core/validators.py:507 +#, python-format +msgid "Could not retrieve anything from %s." +msgstr "Nevar neko no %s" -#: contrib/auth/forms.py:25 -msgid "A user with that username already exists." -msgstr "" +#: core/validators.py:510 +#, python-format +msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgstr "URL %(url)s atgrieza nekorektu Content-Type headeri '%(contenttype)s'." -#: contrib/auth/forms.py:53 -msgid "" -"Your Web browser doesn't appear to have cookies enabled. Cookies are " -"required for logging in." -msgstr "" -"IzskatÄs, ka JÅ«su pÄrlÅ«ks neatbalsta cookies. Cookies ir obligÄtas, lai " -"pieslÄ“gtos." +#: core/validators.py:543 +#, python-format +msgid "Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with \"%(start)s\".)" +msgstr "LÅ«dzu aiztaisiet neaiztaisÄ«to %(tag)s tagu no rindas nr %(line)s. (Rinda sÄkas ar \"%(start)s\".)" -#: contrib/auth/forms.py:60 contrib/admin/views/decorators.py:10 -msgid "" -"Please enter a correct username and password. Note that both fields are case-" -"sensitive." +#: core/validators.py:547 +#, python-format +msgid "Some text starting on line %(line)s is not allowed in that context. (Line starts with \"%(start)s\".)" msgstr "" -"LÅ«dzu ievadiet lietotÄjvÄrdu un paroli. Atceraties ka abi lauki ir " -"reÄ£istrjÅ«tÄ«gi." -#: contrib/auth/forms.py:62 -msgid "This account is inactive." +#: core/validators.py:552 +#, python-format +msgid "\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%(start)s\".)" msgstr "" -#: contrib/auth/forms.py:85 -msgid "" -"That e-mail address doesn't have an associated user account. Are you sure " -"you've registered?" +#: core/validators.py:557 +#, python-format +msgid "\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%(start)s\".)" msgstr "" -#: contrib/auth/forms.py:117 -msgid "The two 'new password' fields didn't match." +#: core/validators.py:561 +#, python-format +msgid "A tag on line %(line)s is missing one or more required attributes. (Line starts with \"%(start)s\".)" msgstr "" -#: contrib/auth/forms.py:124 -msgid "Your old password was entered incorrectly. Please enter it again." +#: core/validators.py:566 +#, python-format +msgid "The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line starts with \"%(start)s\".)" msgstr "" -#: contrib/auth/views.py:39 -#, fuzzy -msgid "Logged out" -msgstr "Izlogoties" +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "%(verbose_name)s tika veiksmÄ«gi izveidots." -#: contrib/auth/models.py:38 contrib/auth/models.py:57 -msgid "name" -msgstr "nosaukums" +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "%(verbose_name)s tika veiksmÄ«gi dzÄ“sts." -#: contrib/auth/models.py:40 -msgid "codename" -msgstr "kods" +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "%(verbose_name)s tika dzÄ“sts." -#: contrib/auth/models.py:42 -msgid "permission" -msgstr "tiesÄ«ba" +#: newforms/models.py:165 +#: newforms/fields.py:364 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "IzvÄ“laties pareizu izvÄ“li. JÅ«su izvÄ“lÄ“tais objekts neietilpst pieejamo sarakstÄ." -#: contrib/auth/models.py:43 contrib/auth/models.py:58 -msgid "permissions" -msgstr "tiesÄ«bas" +#: newforms/models.py:182 +#: newforms/fields.py:380 +#: newforms/fields.py:456 +msgid "Enter a list of values." +msgstr "Ievadiet sarakstu ar vÄ“rtÄ«bÄm." -#: contrib/auth/models.py:60 -msgid "group" -msgstr "grupa" +#: newforms/models.py:188 +#: newforms/fields.py:389 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "IzvÄ“lieties pareizu izvÄ“li. %s nav pieejamo izvēļu sarakstÄ." -#: contrib/auth/models.py:61 contrib/auth/models.py:100 -msgid "groups" -msgstr "grupas" +#: newforms/fields.py:103 +#: newforms/fields.py:256 +#, python-format +msgid "Ensure this value has at most %d characters." +msgstr "VÄ“rtÄ«bai jasatur ne vairÄk, kÄ %d rakstzÄ«mju." -#: contrib/auth/models.py:90 -msgid "username" -msgstr "lietotÄja vÄrds" +#: newforms/fields.py:105 +#: newforms/fields.py:258 +#, python-format +msgid "Ensure this value has at least %d characters." +msgstr "VÄ“rtÄ«bai jasatur vismaz %d rakstzÄ«mju." -#: contrib/auth/models.py:90 -msgid "" -"Required. 30 characters or fewer. Alphanumeric characters only (letters, " -"digits and underscores)." -msgstr "" +#: newforms/fields.py:130 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "Å ai vÄ“rtÄ«bai jabÅ«t mazÄkai vai vienÄdai ar %s." -#: contrib/auth/models.py:91 -msgid "first name" -msgstr "vÄrds" +#: newforms/fields.py:132 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "VÄ“rtÄ«bai jabÅ«t lielÄkai vai vienÄdai ar %s." -#: contrib/auth/models.py:92 -msgid "last name" -msgstr "uzvÄrds" +#: newforms/fields.py:165 +msgid "Enter a valid date." +msgstr "Ievadiet korektu datumu." -#: contrib/auth/models.py:93 -msgid "e-mail address" -msgstr "e-pasta adrese" +#: newforms/fields.py:192 +msgid "Enter a valid time." +msgstr "Ievadiet korektu laiku." -#: contrib/auth/models.py:94 -msgid "password" -msgstr "parole" +#: newforms/fields.py:228 +msgid "Enter a valid date/time." +msgstr "Ievadiet korektu datumu/laiku." -#: contrib/auth/models.py:94 -msgid "" -"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " -"password form</a>." -msgstr "" +#: newforms/fields.py:242 +msgid "Enter a valid value." +msgstr "Ievadiet korektu vÄ“rtÄ«bu." -#: contrib/auth/models.py:95 -msgid "staff status" -msgstr "personÄla statuss" +#: newforms/fields.py:289 +#: newforms/fields.py:311 +msgid "Enter a valid URL." +msgstr "Ievadiet korektu adresi." -#: contrib/auth/models.py:95 -msgid "Designates whether the user can log into this admin site." -msgstr "" -"AtzÄ«mÄ“jiet, ja vÄ“laties, lai lietotÄjs var pieslÄ“gties administrÄcijas lapÄ." +#: newforms/fields.py:313 +msgid "This URL appears to be a broken link." +msgstr "Å Ä« adrese ir bojÄta." -#: contrib/auth/models.py:96 -msgid "active" -msgstr "aktÄ«vs" +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "th" -#: contrib/auth/models.py:96 +#: contrib/humanize/templatetags/humanize.py:17 #, fuzzy -msgid "" -"Designates whether this user can log into the Django admin. Unselect this " -"instead of deleting accounts." -msgstr "" -"AtzÄ«mÄ“jiet, ja vÄ“laties, lai lietotÄjs var pieslÄ“gties administrÄcijas lapÄ." - -#: contrib/auth/models.py:97 -msgid "superuser status" -msgstr "superlietotÄja statuss" - -#: contrib/auth/models.py:97 -msgid "" -"Designates that this user has all permissions without explicitly assigning " -"them." -msgstr "" +msgid "st" +msgstr "saits" -#: contrib/auth/models.py:98 -msgid "last login" -msgstr "pÄ“dÄ“joreiz pieslÄ“dzies" +#: contrib/humanize/templatetags/humanize.py:17 +#, fuzzy +msgid "nd" +msgstr "un" -#: contrib/auth/models.py:99 -msgid "date joined" -msgstr "datums, kad pievienojies" +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "rd" -#: contrib/auth/models.py:101 -msgid "" -"In addition to the permissions manually assigned, this user will also get " -"all permissions granted to each group he/she is in." -msgstr "" -"Papildus manuÄli piešķirtajÄm atļaujÄm, Å¡is lietotÄjs papildus iegÅ«s visas " -"atļaujas, kas piešķirtas grupÄm, kurÄs lietotÄjs atrodas." +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "" +msgstr[1] "" -#: contrib/auth/models.py:102 -msgid "user permissions" -msgstr "lietotÄja atļaujas" +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "" +msgstr[1] "" -#: contrib/auth/models.py:105 -msgid "user" -msgstr "lietotÄjs" +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "" +msgstr[1] "" -#: contrib/auth/models.py:106 -msgid "users" -msgstr "lietotÄji" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "viens" -#: contrib/auth/models.py:111 -msgid "Personal info" -msgstr "PersonÄ«gÄ informÄcija" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "divi" -#: contrib/auth/models.py:112 -msgid "Permissions" -msgstr "Atļaujas" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "trÄ«s" -#: contrib/auth/models.py:113 -msgid "Important dates" -msgstr "SvarÄ«gi datumi" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "four" +msgstr "Äetri" -#: contrib/auth/models.py:114 -msgid "Groups" -msgstr "Grupas" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "pieci" -#: contrib/auth/models.py:258 -msgid "message" -msgstr "ziņojums" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "seÅ¡i" -#: contrib/contenttypes/models.py:26 -msgid "python model class name" -msgstr "python modeļa klases nosaukums" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "septiņi" -#: contrib/contenttypes/models.py:29 -msgid "content type" -msgstr "" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "astoņi" -#: contrib/contenttypes/models.py:30 -msgid "content types" -msgstr "satura tips" +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "deviņi" #: contrib/redirects/models.py:7 msgid "redirect from" msgstr "novirzÄ«t(redirect) no" #: contrib/redirects/models.py:8 -msgid "" -"This should be an absolute path, excluding the domain name. Example: '/" -"events/search/'." -msgstr "" -"Tam jÄbÅ«t absolÅ«tajam ceļam, ieskaitot domÄ“na vÄrdu. PiemÄ“ram: '/events/" -"search/'." +msgid "This should be an absolute path, excluding the domain name. Example: '/events/search/'." +msgstr "Tam jÄbÅ«t absolÅ«tajam ceļam, ieskaitot domÄ“na vÄrdu. PiemÄ“ram: '/events/search/'." #: contrib/redirects/models.py:9 msgid "redirect to" msgstr "novirzÄ«t(redirect) uz" #: contrib/redirects/models.py:10 -msgid "" -"This can be either an absolute path (as above) or a full URL starting with " -"'http://'." -msgstr "" -"Tas ir vai nu absolÅ«tais ceļš (kÄ pirms tam) vai pilnais URL, kas sÄkas ar " -"'http://'." +msgid "This can be either an absolute path (as above) or a full URL starting with 'http://'." +msgstr "Tas ir vai nu absolÅ«tais ceļš (kÄ pirms tam) vai pilnais URL, kas sÄkas ar 'http://'." #: contrib/redirects/models.py:13 msgid "redirect" @@ -721,61 +753,8 @@ msgstr "novirzÄ«t" msgid "redirects" msgstr "novirzÄ«jumi" -#: contrib/flatpages/models.py:7 contrib/admin/views/doc.py:315 -msgid "URL" -msgstr "" - -#: contrib/flatpages/models.py:8 -msgid "" -"Example: '/about/contact/'. Make sure to have leading and trailing slashes." -msgstr "" -"PiemÄ“ram: '/about/contact/'. PÄrliecinieties, ka esat ievietojuÅ¡i sÄkuma un " -"beigu slÄ«psvÄ«tras." - -#: contrib/flatpages/models.py:9 -msgid "title" -msgstr "virsraksts" - -#: contrib/flatpages/models.py:10 -msgid "content" -msgstr "saturs" - -#: contrib/flatpages/models.py:11 -msgid "enable comments" -msgstr "ieslÄ“gt komentÄrus" - -#: contrib/flatpages/models.py:12 -msgid "template name" -msgstr "Å¡ablona nosaukums" - -#: contrib/flatpages/models.py:13 -#, fuzzy -msgid "" -"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " -"will use 'flatpages/default.html'." -msgstr "" -"PiemÄ“ram: 'flatpages/contact_page'. Ja tas nav norÄdÄ«ts, sistÄ“ma lietos " -"'flatpages/default'." - -#: contrib/flatpages/models.py:14 -msgid "registration required" -msgstr "reÄ£istrÄcija obligÄta" - -#: contrib/flatpages/models.py:14 -msgid "If this is checked, only logged-in users will be able to view the page." -msgstr "" -"Ja tas ir atzÄ«mÄ“ts, tikai lietotÄji, kas ir pieslÄ“guÅ¡ies sistÄ“mÄs redzÄ“s Å¡o " -"lapu." - -#: contrib/flatpages/models.py:18 -msgid "flat page" -msgstr "vienkÄrÅ¡a lapa" - -#: contrib/flatpages/models.py:19 -msgid "flat pages" -msgstr "vienkÄrÅ¡as lapas" - -#: contrib/comments/models.py:67 contrib/comments/models.py:166 +#: contrib/comments/models.py:67 +#: contrib/comments/models.py:166 msgid "object ID" msgstr "objekta ID" @@ -783,7 +762,8 @@ msgstr "objekta ID" msgid "headline" msgstr "virsraksts" -#: contrib/comments/models.py:69 contrib/comments/models.py:90 +#: contrib/comments/models.py:69 +#: contrib/comments/models.py:90 #: contrib/comments/models.py:167 msgid "comment" msgstr "komentÄrs" @@ -824,15 +804,18 @@ msgstr "reitings #8" msgid "is valid rating" msgstr "korekts reitings" -#: contrib/comments/models.py:83 contrib/comments/models.py:169 +#: contrib/comments/models.py:83 +#: contrib/comments/models.py:169 msgid "date/time submitted" msgstr "ievietoÅ¡anas datums/laiks" -#: contrib/comments/models.py:84 contrib/comments/models.py:170 +#: contrib/comments/models.py:84 +#: contrib/comments/models.py:170 msgid "is public" msgstr "publisks" -#: contrib/comments/models.py:85 contrib/admin/views/doc.py:304 +#: contrib/comments/models.py:85 +#: contrib/admin/views/doc.py:304 msgid "IP address" msgstr "IP adrese" @@ -841,18 +824,15 @@ msgid "is removed" msgstr "idzÄ“sts" #: contrib/comments/models.py:86 -msgid "" -"Check this box if the comment is inappropriate. A \"This comment has been " -"removed\" message will be displayed instead." -msgstr "" -"AtÄ·eksÄ“jiet, ja komentÄrs ir neatbilstoÅ¡s. Paziņojums A \"Å is komentÄrs ir " -"izdzÄ“sts\" tiks parÄdÄ«ts tai vietÄ." +msgid "Check this box if the comment is inappropriate. A \"This comment has been removed\" message will be displayed instead." +msgstr "AtÄ·eksÄ“jiet, ja komentÄrs ir neatbilstoÅ¡s. Paziņojums A \"Å is komentÄrs ir izdzÄ“sts\" tiks parÄdÄ«ts tai vietÄ." #: contrib/comments/models.py:91 msgid "comments" msgstr "komentÄri" -#: contrib/comments/models.py:131 contrib/comments/models.py:207 +#: contrib/comments/models.py:131 +#: contrib/comments/models.py:207 msgid "Content object" msgstr "Satura objekts" @@ -957,75 +937,6 @@ msgstr "moderÄcijas dzēšanas" msgid "Moderator deletion by %r" msgstr "ModerÄcijas dzēšana, veicis %r" -#: contrib/comments/templates/comments/form.html:6 -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/login.html:17 -msgid "Username:" -msgstr "LietotÄja vÄrds:" - -#: contrib/comments/templates/comments/form.html:6 -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 -#: contrib/admin/templates/admin_doc/view_index.html:5 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 -#: contrib/admin/templates/admin_doc/model_detail.html:3 -#: contrib/admin/templates/admin_doc/model_index.html:5 -#: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/auth/user/change_password.html:9 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Log out" -msgstr "Izlogoties" - -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/login.html:20 -msgid "Password:" -msgstr "Parole:" - -#: contrib/comments/templates/comments/form.html:8 -msgid "Forgotten your password?" -msgstr "Esat aizmirsis savu paroli?" - -#: contrib/comments/templates/comments/form.html:12 -msgid "Ratings" -msgstr "Reitings" - -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Required" -msgstr "PieprasÄ«ts" - -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Optional" -msgstr "NeobligÄts" - -#: contrib/comments/templates/comments/form.html:23 -msgid "Post a photo" -msgstr "Ievietojiet fotogrÄfiju" - -#: contrib/comments/templates/comments/form.html:28 -#: contrib/comments/templates/comments/freeform.html:5 -msgid "Comment:" -msgstr "KomentÄrs:" - -#: contrib/comments/templates/comments/form.html:35 -#: contrib/comments/templates/comments/freeform.html:10 -msgid "Preview comment" -msgstr "PirmsskatÄ«t komentÄru" - -#: contrib/comments/templates/comments/freeform.html:4 -msgid "Your name:" -msgstr "JÅ«su vÄrds:" - #: contrib/comments/views/karma.py:19 msgid "Anonymous users cannot vote" msgstr "AnonÄ«mie lietotÄji nedrÄ«kst balsot" @@ -1039,30 +950,25 @@ msgid "No voting for yourself" msgstr "NedrÄ«kst balsot par sevi" #: contrib/comments/views/comments.py:27 -msgid "" -"This rating is required because you've entered at least one other rating." +msgid "This rating is required because you've entered at least one other rating." msgstr "Å is reiting ir obligÄts jo JÅ«s ievietojÄt vismaz vienu citu reitingu." #: contrib/comments/views/comments.py:111 #, python-format msgid "" -"This comment was posted by a user who has posted fewer than %(count)s " -"comment:\n" +"This comment was posted by a user who has posted fewer than %(count)s comment:\n" "\n" "%(text)s" msgid_plural "" -"This comment was posted by a user who has posted fewer than %(count)s " -"comments:\n" +"This comment was posted by a user who has posted fewer than %(count)s comments:\n" "\n" "%(text)s" msgstr[0] "" -"Å o komentÄru ir ievietojis lietotÄjs, kas ievietojis mazÄk kÄ %(count)s " -"komentÄru:\n" +"Å o komentÄru ir ievietojis lietotÄjs, kas ievietojis mazÄk kÄ %(count)s komentÄru:\n" "\n" "%(text)s" msgstr[1] "" -"Å o komentÄru ir ievietojis lietotÄjs, kas ievietojis mazÄk kÄ %(count)s " -"komentÄrus:\n" +"Å o komentÄru ir ievietojis lietotÄjs, kas ievietojis mazÄk kÄ %(count)s komentÄrus:\n" "\n" "%(text)s" @@ -1094,17 +1000,83 @@ msgstr "KÄds ir iejaucies komentÄru formÄ (drošības traucÄ“jums)" #: contrib/comments/views/comments.py:206 #: contrib/comments/views/comments.py:292 -msgid "" -"The comment form had an invalid 'target' parameter -- the object ID was " -"invalid" -msgstr "" -"KomentÄru forma ir nekorekts 'target' parametrs -- objekta ID bija nepareizs" +msgid "The comment form had an invalid 'target' parameter -- the object ID was invalid" +msgstr "KomentÄru forma ir nekorekts 'target' parametrs -- objekta ID bija nepareizs" #: contrib/comments/views/comments.py:257 #: contrib/comments/views/comments.py:321 msgid "The comment form didn't provide either 'preview' or 'post'" msgstr "KomentÄru forma nenodroÅ¡inÄja 'preview' vai 'post'" +#: contrib/comments/templates/comments/form.html:6 +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:17 +msgid "Username:" +msgstr "LietotÄja vÄrds:" + +#: contrib/comments/templates/comments/form.html:6 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +msgid "Log out" +msgstr "Izlogoties" + +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:20 +msgid "Password:" +msgstr "Parole:" + +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "Esat aizmirsis savu paroli?" + +#: contrib/comments/templates/comments/form.html:12 +msgid "Ratings" +msgstr "Reitings" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Required" +msgstr "PieprasÄ«ts" + +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Optional" +msgstr "NeobligÄts" + +#: contrib/comments/templates/comments/form.html:23 +msgid "Post a photo" +msgstr "Ievietojiet fotogrÄfiju" + +#: contrib/comments/templates/comments/form.html:28 +#: contrib/comments/templates/comments/freeform.html:5 +msgid "Comment:" +msgstr "KomentÄrs:" + +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 +msgid "Preview comment" +msgstr "PirmsskatÄ«t komentÄru" + +#: contrib/comments/templates/comments/freeform.html:4 +msgid "Your name:" +msgstr "JÅ«su vÄrds:" + #: contrib/sites/models.py:10 msgid "domain name" msgstr "domÄ“na vÄrds" @@ -1128,8 +1100,10 @@ msgid "" "<ul>\n" msgstr "" -#: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 -#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 +#: contrib/admin/filterspecs.py:70 +#: contrib/admin/filterspecs.py:88 +#: contrib/admin/filterspecs.py:143 +#: contrib/admin/filterspecs.py:169 msgid "All" msgstr "Visi" @@ -1181,193 +1155,370 @@ msgstr "žurnÄla ieraksts" msgid "log entries" msgstr "žurnÄla ieraksti" -#: contrib/admin/templatetags/admin_list.py:238 +#: contrib/admin/templatetags/admin_list.py:247 msgid "All dates" msgstr "Visi datumi" -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/admin/500.html:4 -#: contrib/admin/templates/admin/invalid_setup.html:4 -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/delete_confirmation.html:6 -#: contrib/admin/templates/admin/change_list.html:6 -#: contrib/admin/templates/admin/change_form.html:13 -#: contrib/admin/templates/admin/base.html:30 -#: contrib/admin/templates/admin/auth/user/change_password.html:12 -#: contrib/admin/templates/registration/logged_out.html:4 -#: contrib/admin/templates/registration/password_reset_done.html:4 -#: contrib/admin/templates/registration/password_change_form.html:4 -#: contrib/admin/templates/registration/password_change_done.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:4 -msgid "Home" -msgstr "SÄkums" +#: contrib/admin/views/auth.py:19 +#: contrib/admin/views/main.py:257 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "%(name)s \"%(obj)s\" pievienots sekmÄ«gi." -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/auth/user/change_password.html:9 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Documentation" -msgstr "DokumentÄcija" +#: contrib/admin/views/auth.py:24 +#: contrib/admin/views/main.py:261 +#: contrib/admin/views/main.py:347 +msgid "You may edit it again below." +msgstr "JÅ«s varat labot to atkal zemÄk." -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -msgid "Bookmarklets" -msgstr "GrÄmatzÄ«mes" +#: contrib/admin/views/auth.py:30 +msgid "Add user" +msgstr "Pievienot lietotÄju" -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 -#: contrib/admin/templates/admin_doc/view_index.html:5 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 -#: contrib/admin/templates/admin_doc/model_detail.html:3 -#: contrib/admin/templates/admin_doc/model_index.html:5 -#: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/auth/user/change_password.html:9 -#: contrib/admin/templates/admin/auth/user/change_password.html:15 -#: contrib/admin/templates/admin/auth/user/change_password.html:46 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Change password" -msgstr "Paroles maiņa" +#: contrib/admin/views/auth.py:57 +msgid "Password changed successfully." +msgstr "Paroles maiņa notikusi veiksmÄ«gi." -#: contrib/admin/templates/admin_doc/bookmarklets.html:5 -msgid "Documentation bookmarklets" -msgstr "DokumentÄcijas grÄmatzÄ«mes" +#: contrib/admin/views/auth.py:64 +#, python-format +msgid "Change password: %s" +msgstr "Paroles maiņa: %s" -#: contrib/admin/templates/admin_doc/bookmarklets.html:9 -msgid "" -"\n" -"<p class=\"help\">To install bookmarklets, drag the link to your bookmarks\n" -"toolbar, or right-click the link and add it to your bookmarks. Now you can\n" -"select the bookmarklet from any page in the site. Note that some of these\n" -"bookmarklets require you to be viewing the site from a computer designated\n" -"as \"internal\" (talk to your system administrator if you aren't sure if\n" -"your computer is \"internal\").</p>\n" -msgstr "" +#: contrib/admin/views/main.py:223 +msgid "Site administration" +msgstr "Saita administrÄcija" -#: contrib/admin/templates/admin_doc/bookmarklets.html:19 -msgid "Documentation for this page" -msgstr "DokumentÄcija Å¡ai lapai" +#: contrib/admin/views/main.py:271 +#: contrib/admin/views/main.py:356 +#, python-format +msgid "You may add another %s below." +msgstr "JÅ«s varat pievienot vÄ“l vienu %s zemÄk." -#: contrib/admin/templates/admin_doc/bookmarklets.html:20 -msgid "" -"Jumps you from any page to the documentation for the view that generates " -"that page." -msgstr "" -"PÄrvieto jÅ«s no jebkuras lapas dokumentÄcijÄ uz skatu, kas Ä£enerÄ“ Å¡o lapu." +#: contrib/admin/views/main.py:289 +#, python-format +msgid "Add %s" +msgstr "Pievienot %s" -#: contrib/admin/templates/admin_doc/bookmarklets.html:22 -msgid "Show object ID" -msgstr "ParÄdÄ«t objekta ID" +#: contrib/admin/views/main.py:335 +#, python-format +msgid "Added %s." +msgstr "Pievienots %s." -#: contrib/admin/templates/admin_doc/bookmarklets.html:23 -msgid "" -"Shows the content-type and unique ID for pages that represent a single " -"object." -msgstr "" -"ParÄda content-type un unikÄlo ID lapÄm, kas atspoguļo vientuļu objektu." +#: contrib/admin/views/main.py:337 +#, python-format +msgid "Changed %s." +msgstr "IzmainÄ«ts %s." -#: contrib/admin/templates/admin_doc/bookmarklets.html:25 -msgid "Edit this object (current window)" -msgstr "Labot Å¡o objektu (patreizÄ“jÄ logÄ)" +#: contrib/admin/views/main.py:339 +#, python-format +msgid "Deleted %s." +msgstr "IzdzÄ“sts %s" -#: contrib/admin/templates/admin_doc/bookmarklets.html:26 -msgid "Jumps to the admin page for pages that represent a single object." +#: contrib/admin/views/main.py:342 +msgid "No fields changed." +msgstr "Neviens lauks nav izmainÄ«ts" + +#: contrib/admin/views/main.py:345 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "%(name)s \"%(obj)s\" nomainÄ«ts sekmÄ«gi." + +#: contrib/admin/views/main.py:353 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "%(name)s \"%(obj)s\" pievienots sekmÄ«gi. JÅ«s to varat regiģēt zemÄk." + +#: contrib/admin/views/main.py:391 +#, python-format +msgid "Change %s" +msgstr "IzmainÄ«t %s" + +#: contrib/admin/views/main.py:476 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" msgstr "" -"PÄriet uz admininstrÄcijas lapu tÄm lapÄm, kas atspoguļo vientuļu objektu." -#: contrib/admin/templates/admin_doc/bookmarklets.html:28 -msgid "Edit this object (new window)" -msgstr "Labot Å¡o lapu (jaunÄ logÄ)" +#: contrib/admin/views/main.py:481 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" +msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:29 -msgid "As above, but opens the admin page in a new window." -msgstr "TÄpat kÄ iepriekÅ¡, tikai atver administrÄcijas lapu jaunÄ logÄ." +#: contrib/admin/views/main.py:514 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "%(name)s \"%(obj)s\" sekmÄ«gi izdzÄ“sts." -#: contrib/admin/templates/admin/submit_line.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:9 -msgid "Delete" -msgstr "DzÄ“st" +#: contrib/admin/views/main.py:517 +msgid "Are you sure?" +msgstr "Vai esat pÄrliecinÄts?" -#: contrib/admin/templates/admin/submit_line.html:4 -msgid "Save as new" -msgstr "SaglabÄt kÄ jaunu" +#: contrib/admin/views/main.py:539 +#, python-format +msgid "Change history: %s" +msgstr "IzmainÄ«t vÄ“sturi: %s" -#: contrib/admin/templates/admin/submit_line.html:5 -msgid "Save and add another" -msgstr "SaglabÄt un pievienot vÄ“l vienu" +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s" +msgstr "IzvÄ“lÄ“ties %s" -#: contrib/admin/templates/admin/submit_line.html:6 -msgid "Save and continue editing" -msgstr "SaglabÄt un turpinÄt laboÅ¡anu" +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s to change" +msgstr "IzvÄ“lÄ“ties %s lai izmainÄ«tu" -#: contrib/admin/templates/admin/submit_line.html:7 -msgid "Save" -msgstr "SaglabÄt" +#: contrib/admin/views/main.py:768 +msgid "Database error" +msgstr "DatubÄzes kļūda" -#: contrib/admin/templates/admin/500.html:4 -msgid "Server error" -msgstr "Servera kļūda" +#: contrib/admin/views/decorators.py:10 +#: contrib/auth/forms.py:60 +msgid "Please enter a correct username and password. Note that both fields are case-sensitive." +msgstr "LÅ«dzu ievadiet lietotÄjvÄrdu un paroli. Atceraties ka abi lauki ir reÄ£istrjÅ«tÄ«gi." -#: contrib/admin/templates/admin/500.html:6 -msgid "Server error (500)" -msgstr "Servera kļūda (500)" +#: contrib/admin/views/decorators.py:24 +#: contrib/admin/templates/admin/login.html:25 +msgid "Log in" +msgstr "PieslÄ“dzieties" -#: contrib/admin/templates/admin/500.html:9 -msgid "Server Error <em>(500)</em>" -msgstr "Servera kļūda <em>(500)</em>" +#: contrib/admin/views/decorators.py:62 +msgid "Please log in again, because your session has expired. Don't worry: Your submission has been saved." +msgstr "LÅ«dzu pieslÄ“dzieties vÄ“lreiz, jo jÅ«su sesija ir novecojusi. Neuztraucieties: JÅ«su ievadÄ«tie dati ir saglabÄti." -#: contrib/admin/templates/admin/500.html:10 -msgid "" -"There's been an error. It's been reported to the site administrators via e-" -"mail and should be fixed shortly. Thanks for your patience." +#: contrib/admin/views/decorators.py:69 +msgid "Looks like your browser isn't configured to accept cookies. Please enable cookies, reload this page, and try again." +msgstr "IzskatÄs, ka JÅ«su pÄrlÅ«ks neatbalsta sÄ«kdatnes (cookies). LÅ«dzu ieslÄ“dziet sÄ«kdatņu atbalstu, pÄrlÄdÄ“jiet lapu un mēģiniet vÄ“lreiz." + +#: contrib/admin/views/decorators.py:83 +msgid "Usernames cannot contain the '@' character." +msgstr "LietotÄjvÄrdi nevar saturÄ“t simbolu '@'." + +#: contrib/admin/views/decorators.py:85 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." +msgstr "JÅ«su e-pasta adrese nav jÅ«su lietotÄjvÄrds. Lietojiet '%s' tÄ vietÄ." + +#: contrib/admin/views/doc.py:46 +#: contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 +msgid "tag:" msgstr "" -"Ir notikusi kļūda. Tas ir paziņots saita administratoriem ar e-pasta " -"starpniecÄ«bu un visdrÄ«zÄkajÄ laikÄ tiks izlabots. Paldies par sapratni." -#: contrib/admin/templates/admin/filter.html:2 -#, fuzzy, python-format -msgid " By %(filter_title)s " -msgstr "PÄ“c %(title)s " +#: contrib/admin/views/doc.py:77 +#: contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 +msgid "filter:" +msgstr "filtrs:" -#: contrib/admin/templates/admin/filters.html:4 -msgid "Filter" +#: contrib/admin/views/doc.py:135 +#: contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 +msgid "view:" +msgstr "skats:" + +#: contrib/admin/views/doc.py:164 +#, python-format +msgid "App %r not found" +msgstr "AplikÄcija %r netika atrasta" + +#: contrib/admin/views/doc.py:171 +#, python-format +msgid "Model %(name)r not found in app %(label)r" msgstr "" -#: contrib/admin/templates/admin/invalid_setup.html:8 -msgid "" -"Something's wrong with your database installation. Make sure the appropriate " -"database tables have been created, and make sure the database is readable by " -"the appropriate user." +#: contrib/admin/views/doc.py:183 +#, python-format +msgid "the related `%(label)s.%(type)s` object" msgstr "" -#: contrib/admin/templates/admin/search_form.html:8 -msgid "Go" -msgstr "Aiziet!" +#: contrib/admin/views/doc.py:183 +#: contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 +#: contrib/admin/views/doc.py:224 +msgid "model:" +msgstr "modelis:" -#: contrib/admin/templates/admin/search_form.html:10 +#: contrib/admin/views/doc.py:214 #, python-format -msgid "1 result" -msgid_plural "%(counter)s results" -msgstr[0] "" -msgstr[1] "" +msgid "related `%(label)s.%(name)s` objects" +msgstr "saistÄ«tie `%(label)s.%(name)s` objekti" -#: contrib/admin/templates/admin/search_form.html:10 +#: contrib/admin/views/doc.py:219 #, python-format -msgid "%(full_result_count)s total" +msgid "all %s" +msgstr "visi %s" + +#: contrib/admin/views/doc.py:224 +#, python-format +msgid "number of %s" +msgstr "" + +#: contrib/admin/views/doc.py:229 +#, python-format +msgid "Fields on %s objects" +msgstr "" + +#: contrib/admin/views/doc.py:291 +#: contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 +#: contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 +#: contrib/admin/views/doc.py:312 +msgid "Integer" +msgstr "Vesels skaitlis" + +#: contrib/admin/views/doc.py:292 +msgid "Boolean (Either True or False)" +msgstr "Boolean (Pareizs vai Nepareizs)" + +#: contrib/admin/views/doc.py:293 +#: contrib/admin/views/doc.py:311 +#, python-format +msgid "String (up to %(maxlength)s)" +msgstr "Virkne (lÄ«dz pat %(maxlength)s)" + +#: contrib/admin/views/doc.py:294 +msgid "Comma-separated integers" +msgstr "Ar komatu atdalÄ«ti veselie skaitļi" + +#: contrib/admin/views/doc.py:295 +msgid "Date (without time)" +msgstr "Datums (bez laika)" + +#: contrib/admin/views/doc.py:296 +msgid "Date (with time)" +msgstr "Datums (ar laiku)" + +#: contrib/admin/views/doc.py:297 +msgid "E-mail address" +msgstr "E-pasta adrese" + +#: contrib/admin/views/doc.py:298 +#: contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 +msgid "File path" +msgstr "Faila ceļš" + +#: contrib/admin/views/doc.py:300 +msgid "Decimal number" +msgstr "DecimÄls skaitlis" + +#: contrib/admin/views/doc.py:306 +msgid "Boolean (Either True, False or None)" +msgstr "LoÄ£iskais (Pareizs vai Nepareizs)" + +#: contrib/admin/views/doc.py:307 +msgid "Relation to parent model" +msgstr "RelÄcija uz vecÄka modeli" + +#: contrib/admin/views/doc.py:308 +msgid "Phone number" +msgstr "Telefona numurs" + +#: contrib/admin/views/doc.py:313 +msgid "Text" +msgstr "Teksts" + +#: contrib/admin/views/doc.py:314 +msgid "Time" +msgstr "Laiks" + +#: contrib/admin/views/doc.py:315 +#: contrib/flatpages/models.py:7 +msgid "URL" +msgstr "URL" + +#: contrib/admin/views/doc.py:316 +msgid "U.S. state (two uppercase letters)" +msgstr "ASV Å¡tats (divi augšējÄ reÄ£istra burti)" + +#: contrib/admin/views/doc.py:317 +msgid "XML text" +msgstr "XML teksts" + +#: contrib/admin/views/doc.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" msgstr "" +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" +msgstr "Patreiz:" + +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" +msgstr "NomainÄ«t:" + +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" +msgstr "Datums:" + +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" +msgstr "Laiks:" + +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Documentation" +msgstr "DokumentÄcija" + +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin/auth/user/change_password.html:15 +#: contrib/admin/templates/admin/auth/user/change_password.html:46 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +msgid "Change password" +msgstr "Paroles maiņa" + +#: contrib/admin/templates/admin/change_list.html:6 +#: contrib/admin/templates/admin/object_history.html:5 +#: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/change_form.html:13 +#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/base.html:30 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/logged_out.html:4 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Home" +msgstr "SÄkums" + +#: contrib/admin/templates/admin/change_list.html:12 +#, python-format +msgid "Add %(name)s" +msgstr "Pievienot %(name)s" + +#: contrib/admin/templates/admin/filter.html:2 +#, python-format +msgid " By %(filter_title)s " +msgstr " PÄ“c %(filter_title)s " + #: contrib/admin/templates/admin/object_history.html:5 #: contrib/admin/templates/admin/change_form.html:21 msgid "History" @@ -1390,86 +1541,56 @@ msgid "DATE_WITH_TIME_FULL" msgstr "j. N Y, H:i" #: contrib/admin/templates/admin/object_history.html:36 -msgid "" -"This object doesn't have a change history. It probably wasn't added via this " -"admin site." -msgstr "" -"Å im objektam nav izmaiņu vÄ“sture. Tas visdrÄ«zÄk nav pievienots izmantojot " -"administrÄcijas saitu." +msgid "This object doesn't have a change history. It probably wasn't added via this admin site." +msgstr "Å im objektam nav izmaiņu vÄ“sture. Tas visdrÄ«zÄk nav pievienots izmantojot administrÄcijas saitu." -#: contrib/admin/templates/admin/delete_confirmation.html:14 -#, fuzzy, python-format -msgid "" -"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " -"related objects, but your account doesn't have permission to delete the " -"following types of objects:" -msgstr "" -"Izdzēšot objektu %(object_name)s '%(object)s' tiks dzÄ“sti visi saistÄ«tie " -"objekti , bet Jums nav tiesÄ«bu dzÄ“st sekojoÅ¡us objektu tipus:" +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" +msgstr "Aiziet!" -#: contrib/admin/templates/admin/delete_confirmation.html:21 -#, fuzzy, python-format -msgid "" -"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " -"All of the following related items will be deleted:" -msgstr "" -"Vai esat pÄrliecinÄts, ka vÄ“laties dzÄ“st %(object_name)s \"%(object)s\"? " -"Tiks dzÄ“sti sekojoÅ¡i objekti:" +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "1 result" +msgid_plural "%(counter)s results" +msgstr[0] "" +msgstr[1] "" -#: contrib/admin/templates/admin/delete_confirmation.html:26 -msgid "Yes, I'm sure" -msgstr "JÄ, es esmu pÄrliecinÄts" +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "%(full_result_count)s total" +msgstr "" #: contrib/admin/templates/admin/pagination.html:10 msgid "Show all" -msgstr "" +msgstr "RÄdÄ«t visu" -#: contrib/admin/templates/admin/change_list.html:12 -#, python-format -msgid "Add %(name)s" -msgstr "Pievienot %(name)s" - -#: contrib/admin/templates/admin/change_form.html:15 -#: contrib/admin/templates/admin/index.html:28 -msgid "Add" -msgstr "Pievienot" - -#: contrib/admin/templates/admin/change_form.html:22 -msgid "View on site" -msgstr "ApskatÄ«t saitÄ" - -#: contrib/admin/templates/admin/change_form.html:32 -#: contrib/admin/templates/admin/auth/user/change_password.html:24 -msgid "Please correct the error below." -msgid_plural "Please correct the errors below." -msgstr[0] "LÅ«dzu izlabojiet kļūdu zemÄk" -msgstr[1] "LÅ«dzu izlabojiet kļūdas zemÄk" +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" +msgstr "Django saita administrÄcija" -#: contrib/admin/templates/admin/change_form.html:50 -msgid "Ordering" -msgstr "SakÄrtoÅ¡ana" +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" +msgstr "Django administrēšana" -#: contrib/admin/templates/admin/change_form.html:53 -msgid "Order:" -msgstr "SakÄrtojums:" +#: contrib/admin/templates/admin/500.html:4 +msgid "Server error" +msgstr "Servera kļūda" -#: contrib/admin/templates/admin/base.html:25 -msgid "Welcome," -msgstr "SveicinÄti," +#: contrib/admin/templates/admin/500.html:6 +msgid "Server error (500)" +msgstr "Servera kļūda (500)" -#: contrib/admin/templates/admin/404.html:4 -#: contrib/admin/templates/admin/404.html:8 -msgid "Page not found" -msgstr "Lapa nav atrasta" +#: contrib/admin/templates/admin/500.html:9 +msgid "Server Error <em>(500)</em>" +msgstr "Servera kļūda <em>(500)</em>" -#: contrib/admin/templates/admin/404.html:10 -msgid "We're sorry, but the requested page could not be found." -msgstr "MÄ“s atvainojamies, bet pieprasÄ«tÄ lapa nevar tikt atrasta." +#: contrib/admin/templates/admin/500.html:10 +msgid "There's been an error. It's been reported to the site administrators via e-mail and should be fixed shortly. Thanks for your patience." +msgstr "Ir notikusi kļūda. Tas ir paziņots saita administratoriem ar e-pasta starpniecÄ«bu un visdrÄ«zÄkajÄ laikÄ tiks izlabots. Paldies par sapratni." -#: contrib/admin/templates/admin/login.html:25 -#: contrib/admin/views/decorators.py:24 -msgid "Log in" -msgstr "PieslÄ“dzieties" +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "Something's wrong with your database installation. Make sure the appropriate database tables have been created, and make sure the database is readable by the appropriate user." +msgstr "Kaut kas nav kÄrtÄ«bÄ ar JÅ«su datubÄzes instalÄciju. PÄrliecinieties vai attiecÄ«gÄs tabulas ir izveidotas un attiecÄ«gajam lietotÄjam ir tiesÄ«bas lasÄ«t datubÄzi." #: contrib/admin/templates/admin/index.html:17 #, python-format @@ -1477,9 +1598,14 @@ msgid "Models available in the %(name)s application." msgstr "Modeļi, kas pieejami %(name)s aplikÄcijÄ." #: contrib/admin/templates/admin/index.html:18 -#, fuzzy, python-format +#, python-format msgid "%(name)s" -msgstr "Pievienot %(name)s" +msgstr "%(name)s" + +#: contrib/admin/templates/admin/index.html:28 +#: contrib/admin/templates/admin/change_form.html:15 +msgid "Add" +msgstr "Pievienot" #: contrib/admin/templates/admin/index.html:34 msgid "Change" @@ -1501,62 +1627,139 @@ msgstr "Manas darbÄ«bas" msgid "None available" msgstr "Nav pieejams" -#: contrib/admin/templates/admin/base_site.html:4 -msgid "Django site admin" -msgstr "Django saita administrÄcija" +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 +msgid "Page not found" +msgstr "Lapa nav atrasta" -#: contrib/admin/templates/admin/base_site.html:7 -msgid "Django administration" -msgstr "Django administrēšana" +#: contrib/admin/templates/admin/404.html:10 +msgid "We're sorry, but the requested page could not be found." +msgstr "MÄ“s atvainojamies, bet pieprasÄ«tÄ lapa nevar tikt atrasta." -#: contrib/admin/templates/admin/auth/user/add_form.html:6 -msgid "" -"First, enter a username and password. Then, you'll be able to edit more user " -"options." -msgstr "" +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "Filtrs" -#: contrib/admin/templates/admin/auth/user/add_form.html:12 -#, fuzzy -msgid "Username" -msgstr "LietotÄja vÄrds:" +#: contrib/admin/templates/admin/change_form.html:22 +msgid "View on site" +msgstr "ApskatÄ«t saitÄ" + +#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/auth/user/change_password.html:24 +msgid "Please correct the error below." +msgid_plural "Please correct the errors below." +msgstr[0] "LÅ«dzu izlabojiet kļūdu zemÄk" +msgstr[1] "LÅ«dzu izlabojiet kļūdas zemÄk" + +#: contrib/admin/templates/admin/change_form.html:50 +msgid "Ordering" +msgstr "SakÄrtoÅ¡ana" + +#: contrib/admin/templates/admin/change_form.html:53 +msgid "Order:" +msgstr "SakÄrtojums:" + +#: contrib/admin/templates/admin/delete_confirmation.html:9 +#: contrib/admin/templates/admin/submit_line.html:3 +msgid "Delete" +msgstr "DzÄ“st" + +#: contrib/admin/templates/admin/delete_confirmation.html:14 +#, python-format +msgid "Deleting the %(object_name)s '%(escaped_object)s' would result in deleting related objects, but your account doesn't have permission to delete the following types of objects:" +msgstr "Izdzēšot objektu %(object_name)s '%(escaped_object)s' tiks dzÄ“sti visi saistÄ«tie objekti , bet Jums nav tiesÄ«bu dzÄ“st sekojoÅ¡us objektu tipus:" + +#: contrib/admin/templates/admin/delete_confirmation.html:21 +#, python-format +msgid "Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? All of the following related items will be deleted:" +msgstr "Vai esat pÄrliecinÄts, ka vÄ“laties dzÄ“st %(object_name)s \"%(escaped_object)s\"? Tiks dzÄ“sti asrÄ« sekojoÅ¡i saistÄ«tie objekti:" + +#: contrib/admin/templates/admin/delete_confirmation.html:26 +msgid "Yes, I'm sure" +msgstr "JÄ, es esmu pÄrliecinÄts" + +#: contrib/admin/templates/admin/base.html:25 +msgid "Welcome," +msgstr "SveicinÄti," + +#: contrib/admin/templates/admin/submit_line.html:4 +msgid "Save as new" +msgstr "SaglabÄt kÄ jaunu" + +#: contrib/admin/templates/admin/submit_line.html:5 +msgid "Save and add another" +msgstr "SaglabÄt un pievienot vÄ“l vienu" + +#: contrib/admin/templates/admin/submit_line.html:6 +msgid "Save and continue editing" +msgstr "SaglabÄt un turpinÄt laboÅ¡anu" + +#: contrib/admin/templates/admin/submit_line.html:7 +msgid "Save" +msgstr "SaglabÄt" + +#: contrib/admin/templates/admin/auth/user/change_password.html:28 +#, python-format +msgid "Enter a new password for the user <strong>%(username)s</strong>." +msgstr "Ievadiet jaunu paroli lietotÄjam <strong>%(username)s</strong>." -#: contrib/admin/templates/admin/auth/user/add_form.html:18 #: contrib/admin/templates/admin/auth/user/change_password.html:34 -#, fuzzy +#: contrib/admin/templates/admin/auth/user/add_form.html:18 msgid "Password" -msgstr "Parole:" +msgstr "Parole" -#: contrib/admin/templates/admin/auth/user/add_form.html:23 #: contrib/admin/templates/admin/auth/user/change_password.html:39 -#, fuzzy +#: contrib/admin/templates/admin/auth/user/add_form.html:23 msgid "Password (again)" -msgstr "Paroles maiņa" +msgstr "Parole (vÄ“lreiz)" -#: contrib/admin/templates/admin/auth/user/add_form.html:24 #: contrib/admin/templates/admin/auth/user/change_password.html:40 +#: contrib/admin/templates/admin/auth/user/add_form.html:24 msgid "Enter the same password as above, for verification." -msgstr "" +msgstr "Ievadot tÄdu paÅ¡u paroli, kÄ augstÄk, pÄrbaudei." -#: contrib/admin/templates/admin/auth/user/change_password.html:28 -#, python-format -msgid "Enter a new password for the user <strong>%(username)s</strong>." +#: contrib/admin/templates/admin/auth/user/add_form.html:6 +msgid "First, enter a username and password. Then, you'll be able to edit more user options." msgstr "" -#: contrib/admin/templates/widget/file.html:2 -msgid "Currently:" -msgstr "Patreiz:" +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" +msgstr "LietotÄja vÄrds" -#: contrib/admin/templates/widget/file.html:3 -msgid "Change:" -msgstr "NomainÄ«t:" +#: contrib/admin/templates/registration/password_change_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_change_form.html:6 +#: contrib/admin/templates/registration/password_change_form.html:10 +msgid "Password change" +msgstr "Paroles maiņa" -#: contrib/admin/templates/widget/date_time.html:3 -msgid "Date:" -msgstr "Datums:" +#: contrib/admin/templates/registration/password_change_done.html:6 +#: contrib/admin/templates/registration/password_change_done.html:10 +msgid "Password change successful" +msgstr "Paroles nomaiņa sekmÄ«ga" -#: contrib/admin/templates/widget/date_time.html:4 -msgid "Time:" -msgstr "Laiks:" +#: contrib/admin/templates/registration/password_change_done.html:12 +msgid "Your password was changed." +msgstr "JÅ«su parole ir nomainÄ«ta." + +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:6 +#: contrib/admin/templates/registration/password_reset_form.html:10 +#: contrib/admin/templates/registration/password_reset_done.html:4 +msgid "Password reset" +msgstr "Paroles pÄrstatīšana(reset)" + +#: contrib/admin/templates/registration/password_reset_form.html:12 +msgid "Forgotten your password? Enter your e-mail address below, and we'll reset your password and e-mail the new one to you." +msgstr "Esat aizmirsuÅ¡i savu paroli? Ievadiet e-pasta adresi zemÄk un mÄ“s pÄrstatÄ«sim JÅ«su paroli un aizsÅ«tÄ«sim jaunu pa e-pastu." + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "E-mail address:" +msgstr "E-pasta adrese:" + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "Reset my password" +msgstr "Paroles pÄrstatīšana" #: contrib/admin/templates/registration/logged_out.html:8 msgid "Thanks for spending some quality time with the Web site today." @@ -1566,10 +1769,38 @@ msgstr "Paldies par pavadÄ«to laiku mÄja lapÄ." msgid "Log in again" msgstr "PieslÄ“gties vÄ“lreiz" +#: contrib/admin/templates/registration/password_reset_done.html:6 +#: contrib/admin/templates/registration/password_reset_done.html:10 +msgid "Password reset successful" +msgstr "Paroles pÄrstatīšana sekmÄ«ga" + +#: contrib/admin/templates/registration/password_reset_done.html:12 +msgid "We've e-mailed a new password to the e-mail address you submitted. You should be receiving it shortly." +msgstr "MÄ“s aizsÅ«tÄ«jÄm pa e-pastu jaunu paroli, ko JÅ«s esat apstiprinÄjis. JÅ«s to drÄ«zumÄ saņemsiet." + +#: contrib/admin/templates/registration/password_change_form.html:12 +msgid "Please enter your old password, for security's sake, and then enter your new password twice so we can verify you typed it in correctly." +msgstr "Drošības nolÅ«kos ievadiet veco paroli un pÄ“c tam ievadiet JÅ«su jauno paroli divreiz lai mÄ“s varÄ“tu pÄrbaudÄ«t, vai tÄ ir uzrakstÄ«ta pareizi." + +#: contrib/admin/templates/registration/password_change_form.html:17 +msgid "Old password:" +msgstr "VecÄ parole:" + +#: contrib/admin/templates/registration/password_change_form.html:19 +msgid "New password:" +msgstr "JaunÄ parole:" + +#: contrib/admin/templates/registration/password_change_form.html:21 +msgid "Confirm password:" +msgstr "ApstiprinÄt paroli:" + +#: contrib/admin/templates/registration/password_change_form.html:23 +msgid "Change my password" +msgstr "NomainÄ«t manu paroli" + #: contrib/admin/templates/registration/password_reset_email.html:2 msgid "You're receiving this e-mail because you requested a password reset" -msgstr "" -"JÅ«s esat saņēmuÅ¡i Å¡o e-pastu sakarÄ ar JÅ«su pieprasÄ«to paroles pÄrstatīšanu" +msgstr "JÅ«s esat saņēmuÅ¡i Å¡o e-pastu sakarÄ ar JÅ«su pieprasÄ«to paroles pÄrstatīšanu" #: contrib/admin/templates/registration/password_reset_email.html:3 #, python-format @@ -1598,729 +1829,1037 @@ msgstr "Paldies par mÅ«su saita lietoÅ¡anu!" msgid "The %(site_name)s team" msgstr "%(site_name)s komanda" -#: contrib/admin/templates/registration/password_reset_done.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:6 -#: contrib/admin/templates/registration/password_reset_form.html:10 -msgid "Password reset" -msgstr "Paroles pÄrstatīšana(reset)" +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Bookmarklets" +msgstr "GrÄmatzÄ«mes" -#: contrib/admin/templates/registration/password_reset_done.html:6 -#: contrib/admin/templates/registration/password_reset_done.html:10 -msgid "Password reset successful" -msgstr "Paroles pÄrstatīšana sekmÄ«ga" +#: contrib/admin/templates/admin_doc/bookmarklets.html:5 +msgid "Documentation bookmarklets" +msgstr "DokumentÄcijas grÄmatzÄ«mes" -#: contrib/admin/templates/registration/password_reset_done.html:12 +#: contrib/admin/templates/admin_doc/bookmarklets.html:9 msgid "" -"We've e-mailed a new password to the e-mail address you submitted. You " -"should be receiving it shortly." +"\n" +"<p class=\"help\">To install bookmarklets, drag the link to your bookmarks\n" +"toolbar, or right-click the link and add it to your bookmarks. Now you can\n" +"select the bookmarklet from any page in the site. Note that some of these\n" +"bookmarklets require you to be viewing the site from a computer designated\n" +"as \"internal\" (talk to your system administrator if you aren't sure if\n" +"your computer is \"internal\").</p>\n" msgstr "" -"MÄ“s aizsÅ«tÄ«jÄm pa e-pastu jaunu paroli, ko JÅ«s esat apstiprinÄjis. JÅ«s to " -"drÄ«zumÄ saņemsiet." -#: contrib/admin/templates/registration/password_change_form.html:4 -#: contrib/admin/templates/registration/password_change_form.html:6 -#: contrib/admin/templates/registration/password_change_form.html:10 -#: contrib/admin/templates/registration/password_change_done.html:4 -msgid "Password change" -msgstr "Paroles maiņa" +#: contrib/admin/templates/admin_doc/bookmarklets.html:19 +msgid "Documentation for this page" +msgstr "DokumentÄcija Å¡ai lapai" -#: contrib/admin/templates/registration/password_change_form.html:12 -msgid "" -"Please enter your old password, for security's sake, and then enter your new " -"password twice so we can verify you typed it in correctly." +#: contrib/admin/templates/admin_doc/bookmarklets.html:20 +msgid "Jumps you from any page to the documentation for the view that generates that page." +msgstr "PÄrvieto jÅ«s no jebkuras lapas dokumentÄcijÄ uz skatu, kas Ä£enerÄ“ Å¡o lapu." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:22 +msgid "Show object ID" +msgstr "ParÄdÄ«t objekta ID" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:23 +msgid "Shows the content-type and unique ID for pages that represent a single object." +msgstr "ParÄda content-type un unikÄlo ID lapÄm, kas atspoguļo vientuļu objektu." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:25 +msgid "Edit this object (current window)" +msgstr "Labot Å¡o objektu (patreizÄ“jÄ logÄ)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:26 +msgid "Jumps to the admin page for pages that represent a single object." +msgstr "PÄriet uz admininstrÄcijas lapu tÄm lapÄm, kas atspoguļo vientuļu objektu." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:28 +msgid "Edit this object (new window)" +msgstr "Labot Å¡o lapu (jaunÄ logÄ)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:29 +msgid "As above, but opens the admin page in a new window." +msgstr "TÄpat kÄ iepriekÅ¡, tikai atver administrÄcijas lapu jaunÄ logÄ." + +#: contrib/contenttypes/models.py:36 +msgid "python model class name" +msgstr "python modeļa klases nosaukums" + +#: contrib/contenttypes/models.py:39 +msgid "content type" +msgstr "satura tips" + +#: contrib/contenttypes/models.py:40 +msgid "content types" +msgstr "satura tips" + +#: contrib/auth/views.py:40 +msgid "Logged out" +msgstr "Izlogojies" + +#: contrib/auth/models.py:44 +#: contrib/auth/models.py:64 +msgid "name" +msgstr "nosaukums" + +#: contrib/auth/models.py:46 +msgid "codename" +msgstr "kods" + +#: contrib/auth/models.py:49 +msgid "permission" +msgstr "tiesÄ«ba" + +#: contrib/auth/models.py:50 +#: contrib/auth/models.py:65 +msgid "permissions" +msgstr "tiesÄ«bas" + +#: contrib/auth/models.py:68 +msgid "group" +msgstr "grupa" + +#: contrib/auth/models.py:69 +#: contrib/auth/models.py:109 +msgid "groups" +msgstr "grupas" + +#: contrib/auth/models.py:99 +msgid "username" +msgstr "lietotÄja vÄrds" + +#: contrib/auth/models.py:99 +msgid "Required. 30 characters or fewer. Alphanumeric characters only (letters, digits and underscores)." msgstr "" -"Drošības nolÅ«kos ievadiet veco paroli un pÄ“c tam ievadiet JÅ«su jauno paroli " -"divreiz lai mÄ“s varÄ“tu pÄrbaudÄ«t, vai tÄ ir uzrakstÄ«ta pareizi." -#: contrib/admin/templates/registration/password_change_form.html:17 -msgid "Old password:" -msgstr "VecÄ parole:" +#: contrib/auth/models.py:100 +msgid "first name" +msgstr "vÄrds" -#: contrib/admin/templates/registration/password_change_form.html:19 -msgid "New password:" -msgstr "JaunÄ parole:" +#: contrib/auth/models.py:101 +msgid "last name" +msgstr "uzvÄrds" -#: contrib/admin/templates/registration/password_change_form.html:21 -msgid "Confirm password:" -msgstr "ApstiprinÄt paroli:" +#: contrib/auth/models.py:102 +msgid "e-mail address" +msgstr "e-pasta adrese" -#: contrib/admin/templates/registration/password_change_form.html:23 -msgid "Change my password" -msgstr "NomainÄ«t manu paroli" +#: contrib/auth/models.py:103 +msgid "password" +msgstr "parole" -#: contrib/admin/templates/registration/password_change_done.html:6 -#: contrib/admin/templates/registration/password_change_done.html:10 -msgid "Password change successful" -msgstr "Paroles nomaiņa sekmÄ«ga" +#: contrib/auth/models.py:103 +msgid "Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change password form</a>." +msgstr "" -#: contrib/admin/templates/registration/password_change_done.html:12 -msgid "Your password was changed." -msgstr "JÅ«su parole ir nomainÄ«ta." +#: contrib/auth/models.py:104 +msgid "staff status" +msgstr "personÄla statuss" -#: contrib/admin/templates/registration/password_reset_form.html:12 -msgid "" -"Forgotten your password? Enter your e-mail address below, and we'll reset " -"your password and e-mail the new one to you." +#: contrib/auth/models.py:104 +msgid "Designates whether the user can log into this admin site." +msgstr "AtzÄ«mÄ“jiet, ja vÄ“laties, lai lietotÄjs var pieslÄ“gties administrÄcijas lapÄ." + +#: contrib/auth/models.py:105 +msgid "active" +msgstr "aktÄ«vs" + +#: contrib/auth/models.py:105 +msgid "Designates whether this user can log into the Django admin. Unselect this instead of deleting accounts." +msgstr "Nosaka, ka lietotÄjs var pieslÄ“gties Django administrÄcijas lapai. Ieteicams atcelt Å¡o izvÄ“li nevis dzÄ“st lietotÄjus." + +#: contrib/auth/models.py:106 +msgid "superuser status" +msgstr "superlietotÄja statuss" + +#: contrib/auth/models.py:106 +msgid "Designates that this user has all permissions without explicitly assigning them." msgstr "" -"Esat aizmirsuÅ¡i savu paroli? Ievadiet e-pasta adresi zemÄk un mÄ“s " -"pÄrstatÄ«sim JÅ«su paroli un aizsÅ«tÄ«sim jaunu pa e-pastu." -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "E-mail address:" -msgstr "E-pasta adrese:" +#: contrib/auth/models.py:107 +msgid "last login" +msgstr "pÄ“dÄ“joreiz pieslÄ“dzies" -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "Reset my password" -msgstr "Paroles pÄrstatīšana" +#: contrib/auth/models.py:108 +msgid "date joined" +msgstr "datums, kad pievienojies" -#: contrib/admin/views/main.py:223 -msgid "Site administration" -msgstr "Saita administrÄcija" +#: contrib/auth/models.py:110 +msgid "In addition to the permissions manually assigned, this user will also get all permissions granted to each group he/she is in." +msgstr "Papildus manuÄli piešķirtajÄm atļaujÄm, Å¡is lietotÄjs papildus iegÅ«s visas atļaujas, kas piešķirtas grupÄm, kurÄs lietotÄjs atrodas." -#: contrib/admin/views/main.py:257 contrib/admin/views/auth.py:19 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." -msgstr "%(name)s \"%(obj)s\" pievienots sekmÄ«gi." +#: contrib/auth/models.py:111 +msgid "user permissions" +msgstr "lietotÄja atļaujas" -#: contrib/admin/views/main.py:261 contrib/admin/views/main.py:347 -#: contrib/admin/views/auth.py:24 -msgid "You may edit it again below." -msgstr "JÅ«s varat labot to atkal zemÄk." +#: contrib/auth/models.py:115 +msgid "user" +msgstr "lietotÄjs" -#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 -#, python-format -msgid "You may add another %s below." -msgstr "JÅ«s varat pievienot vÄ“l vienu %s zemÄk." +#: contrib/auth/models.py:116 +msgid "users" +msgstr "lietotÄji" -#: contrib/admin/views/main.py:289 -#, python-format -msgid "Add %s" -msgstr "Pievienot %s" +#: contrib/auth/models.py:122 +msgid "Personal info" +msgstr "PersonÄ«gÄ informÄcija" -#: contrib/admin/views/main.py:335 -#, python-format -msgid "Added %s." -msgstr "Pievienots %s." +#: contrib/auth/models.py:123 +msgid "Permissions" +msgstr "Atļaujas" -#: contrib/admin/views/main.py:337 -#, python-format -msgid "Changed %s." -msgstr "IzmainÄ«ts %s." +#: contrib/auth/models.py:124 +msgid "Important dates" +msgstr "SvarÄ«gi datumi" -#: contrib/admin/views/main.py:339 -#, python-format -msgid "Deleted %s." -msgstr "IzdzÄ“sts %s" +#: contrib/auth/models.py:125 +msgid "Groups" +msgstr "Grupas" -#: contrib/admin/views/main.py:342 -msgid "No fields changed." -msgstr "Neviens lauks nav izmainÄ«ts" +#: contrib/auth/models.py:269 +msgid "message" +msgstr "ziņojums" -#: contrib/admin/views/main.py:345 -#, python-format -msgid "The %(name)s \"%(obj)s\" was changed successfully." -msgstr "%(name)s \"%(obj)s\" nomainÄ«ts sekmÄ«gi." +#: contrib/auth/models.py:282 +msgid "AnonymousUser" +msgstr "AnonÄ«ms lietotÄjs" -#: contrib/admin/views/main.py:353 -#, python-format -msgid "" -"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." -msgstr "%(name)s \"%(obj)s\" pievienots sekmÄ«gi. JÅ«s to varat regiģēt zemÄk." +#: contrib/auth/forms.py:17 +#: contrib/auth/forms.py:138 +msgid "The two password fields didn't match." +msgstr "" -#: contrib/admin/views/main.py:391 -#, python-format -msgid "Change %s" -msgstr "IzmainÄ«t %s" +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." +msgstr "LietotÄjs ar Å¡Ädu lietotÄja vÄrdu jau eksistÄ“." -#: contrib/admin/views/main.py:473 -#, python-format -msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +#: contrib/auth/forms.py:53 +msgid "Your Web browser doesn't appear to have cookies enabled. Cookies are required for logging in." +msgstr "IzskatÄs, ka JÅ«su pÄrlÅ«ks neatbalsta cookies. Cookies ir obligÄtas, lai pieslÄ“gtos." + +#: contrib/auth/forms.py:62 +msgid "This account is inactive." +msgstr "Å is konts ir neaktÄ«vs." + +#: contrib/auth/forms.py:85 +msgid "That e-mail address doesn't have an associated user account. Are you sure you've registered?" msgstr "" -#: contrib/admin/views/main.py:478 -#, python-format -msgid "One or more %(fieldname)s in %(name)s:" +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." +msgstr "Abi \"JaunÄ parole\" lauki nesakrÄ«t." + +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." +msgstr "JÅ«su iepriekšējÄ parole tika ievadÄ«ta nekorekti. LÅ«dzu ievadiet to atkÄrtoti." + +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "Ievadiet pasta indeksu. Atstarpe ir nepiecieÅ¡ama starp abÄm pasta indeksa daļÄm." + +#: contrib/localflavor/br/forms.py:18 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "Ievadiet pasta indeksu XXXXX-XXX formÄtÄ." + +#: contrib/localflavor/br/forms.py:30 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "Telefona numuriem jÄbÅ«t XXX-XXXX-XXXX formÄtÄ." + +#: contrib/localflavor/br/forms.py:72 +msgid "This field requires only numbers." +msgstr "Å is lauks drÄ«kst saturÄ“t tikai skaitļus." + +#: contrib/localflavor/br/forms.py:74 +msgid "This field requires at most 11 digits or 14 characters." +msgstr "Å Ä« lauka vÄ“rtÄ«bai jabÅ«t vismaz 11 cipariem vai 14 simboliem." + +#: contrib/localflavor/br/forms.py:84 +msgid "Invalid CPF number." msgstr "" -#: contrib/admin/views/main.py:511 -#, python-format -msgid "The %(name)s \"%(obj)s\" was deleted successfully." -msgstr "%(name)s \"%(obj)s\" sekmÄ«gi izdzÄ“sts." +#: contrib/localflavor/br/forms.py:106 +msgid "This field requires at least 14 digits" +msgstr "Å im laukam jasastÄv vismaz no 14 cipariem." -#: contrib/admin/views/main.py:514 -msgid "Are you sure?" -msgstr "Vai esat pÄrliecinÄts?" +#: contrib/localflavor/br/forms.py:116 +msgid "Invalid CNPJ number." +msgstr "" -#: contrib/admin/views/main.py:536 -#, python-format -msgid "Change history: %s" -msgstr "IzmainÄ«t vÄ“sturi: %s" +#: contrib/localflavor/au/forms.py:18 +msgid "Enter a 4 digit post code." +msgstr "Ievadiet pasta indeksu, kurÅ¡ sastÄv no 4 cipariem." -#: contrib/admin/views/main.py:570 -#, python-format -msgid "Select %s" -msgstr "IzvÄ“lÄ“ties %s" +#: contrib/localflavor/fr/forms.py:17 +#: contrib/localflavor/de/forms.py:16 +#: contrib/localflavor/fi/forms.py:14 +msgid "Enter a zip code in the format XXXXX." +msgstr "Ievadiet pasta indeksu formÄtÄ XXXXX." -#: contrib/admin/views/main.py:570 -#, python-format -msgid "Select %s to change" -msgstr "IzvÄ“lÄ“ties %s lai izmainÄ«tu" +#: contrib/localflavor/us/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "" -#: contrib/admin/views/main.py:758 -msgid "Database error" +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." msgstr "" -#: contrib/admin/views/decorators.py:62 -msgid "" -"Please log in again, because your session has expired. Don't worry: Your " -"submission has been saved." +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" msgstr "" -"LÅ«dzu pieslÄ“dzieties vÄ“lreiz, jo jÅ«su sesija ir novecojusi. Neuztraucieties: " -"JÅ«su ievadÄ«tie dati ir saglabÄti." -#: contrib/admin/views/decorators.py:69 -msgid "" -"Looks like your browser isn't configured to accept cookies. Please enable " -"cookies, reload this page, and try again." +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" msgstr "" -"IzskatÄs, ka JÅ«su pÄrlÅ«ks neatbalsta sÄ«kdatnes (cookies). LÅ«dzu ieslÄ“dziet " -"sÄ«kdatņu atbalstu, pÄrlÄdÄ“jiet lapu un mēģiniet vÄ“lreiz." -#: contrib/admin/views/decorators.py:83 -msgid "Usernames cannot contain the '@' character." -msgstr "LietotÄjvÄrdi nevar saturÄ“t simbolu '@'." +#: contrib/localflavor/de/de_states.py:7 +msgid "Berlin" +msgstr "" -#: contrib/admin/views/decorators.py:85 -#, python-format -msgid "Your e-mail address is not your username. Try '%s' instead." -msgstr "JÅ«su e-pasta adrese nav jÅ«su lietotÄjvÄrds. Lietojiet '%s' tÄ vietÄ." +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "" -#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 -#: contrib/admin/views/doc.py:50 -msgid "tag:" +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" msgstr "" -#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 -#: contrib/admin/views/doc.py:81 -msgid "filter:" +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "Hamburga" + +#: contrib/localflavor/de/de_states.py:11 +#, fuzzy +msgid "Hessen" +msgstr "sesija" + +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" msgstr "" -#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 -#: contrib/admin/views/doc.py:139 -msgid "view:" +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" msgstr "" -#: contrib/admin/views/doc.py:164 -#, fuzzy, python-format -msgid "App %r not found" -msgstr "Lapa nav atrasta" +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "" -#: contrib/admin/views/doc.py:171 -#, python-format -msgid "Model %r not found in app %r" +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" msgstr "" -#: contrib/admin/views/doc.py:183 -#, python-format -msgid "the related `%s.%s` object" +#: contrib/localflavor/de/de_states.py:16 +msgid "Saarland" msgstr "" -#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 -#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 -msgid "model:" +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" msgstr "" -#: contrib/admin/views/doc.py:214 -#, python-format -msgid "related `%s.%s` objects" +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" msgstr "" -#: contrib/admin/views/doc.py:219 -#, python-format -msgid "all %s" +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" msgstr "" -#: contrib/admin/views/doc.py:224 -#, python-format -msgid "number of %s" +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" msgstr "" -#: contrib/admin/views/doc.py:229 -#, python-format -msgid "Fields on %s objects" +#: contrib/localflavor/de/forms.py:60 +msgid "Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X format." +msgstr "Ievadiet korektu vÄcieÅ¡u identifikÄcijas nummuru XXXXXXXXXXX-XXXXXXX-XXXXXXX-X formÄtÄ." + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" msgstr "" -#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 -#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 -#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 -msgid "Integer" -msgstr "Vesels skaitlis" +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "" -#: contrib/admin/views/doc.py:292 -msgid "Boolean (Either True or False)" -msgstr "Boolean (Pareizs vai Nepareizs)" +#: contrib/localflavor/jp/jp_prefectures.py:6 +#, fuzzy +msgid "Iwate" +msgstr "Datums:" -#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 -#, python-format -msgid "String (up to %(maxlength)s)" -msgstr "Virkne (lÄ«dz pat %(maxlength)s)" +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" -#: contrib/admin/views/doc.py:294 -msgid "Comma-separated integers" -msgstr "Ar komatu atdalÄ«ti veselie skaitļi" +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" -#: contrib/admin/views/doc.py:295 -msgid "Date (without time)" -msgstr "Datums (bez laika)" +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" -#: contrib/admin/views/doc.py:296 -msgid "Date (with time)" -msgstr "Datums (ar laiku)" +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" -#: contrib/admin/views/doc.py:297 -msgid "E-mail address" -msgstr "E-pasta adrese" +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" -#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 -#: contrib/admin/views/doc.py:302 -msgid "File path" -msgstr "Faila ceļš" +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" -#: contrib/admin/views/doc.py:300 -msgid "Decimal number" -msgstr "DecimÄls skaitlis" +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" -#: contrib/admin/views/doc.py:306 -msgid "Boolean (Either True, False or None)" -msgstr "LoÄ£iskais (Pareizs vai Nepareizs)" +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" -#: contrib/admin/views/doc.py:307 -msgid "Relation to parent model" -msgstr "RelÄcija uz vecÄka modeli" +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" -#: contrib/admin/views/doc.py:308 -msgid "Phone number" -msgstr "Telefona numurs" +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "Tokija" -#: contrib/admin/views/doc.py:313 -msgid "Text" -msgstr "Teksts" +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "" -#: contrib/admin/views/doc.py:314 -msgid "Time" -msgstr "Laiks" +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" -#: contrib/admin/views/doc.py:316 -msgid "U.S. state (two uppercase letters)" -msgstr "ASV Å¡tats (divi augšējÄ reÄ£istra burti)" +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" -#: contrib/admin/views/doc.py:317 -msgid "XML text" -msgstr "XML teksts" +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" -#: contrib/admin/views/doc.py:343 -#, python-format -msgid "%s does not appear to be a urlpattern object" +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" msgstr "" -#: contrib/admin/views/auth.py:30 -#, fuzzy -msgid "Add user" -msgstr "Pievienot %s" +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" -#: contrib/admin/views/auth.py:57 -#, fuzzy -msgid "Password changed successfully." -msgstr "Paroles nomaiņa sekmÄ«ga" +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" -#: contrib/admin/views/auth.py:64 -#, fuzzy, python-format -msgid "Change password: %s" -msgstr "Paroles maiņa" +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" -#: newforms/fields.py:101 newforms/fields.py:254 -#, python-format -msgid "Ensure this value has at most %d characters." +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" msgstr "" -#: newforms/fields.py:103 newforms/fields.py:256 -#, python-format -msgid "Ensure this value has at least %d characters." +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" msgstr "" -#: newforms/fields.py:126 core/validators.py:120 -msgid "Enter a whole number." -msgstr "Ievadiet veselus skaitļus." +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" -#: newforms/fields.py:128 -#, fuzzy, python-format -msgid "Ensure this value is less than or equal to %s." -msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t %s pakÄpei." +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" -#: newforms/fields.py:130 -#, python-format -msgid "Ensure this value is greater than or equal to %s." +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" msgstr "" -#: newforms/fields.py:163 -#, fuzzy -msgid "Enter a valid date." -msgstr "Ievadiet korektu faila vÄrdu." +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "" -#: newforms/fields.py:190 -#, fuzzy -msgid "Enter a valid time." -msgstr "Ievadiet korektu faila vÄrdu." +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" -#: newforms/fields.py:226 -#, fuzzy -msgid "Enter a valid date/time." -msgstr "Ievadiet korektu faila vÄrdu." +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" -#: newforms/fields.py:240 -#, fuzzy -msgid "Enter a valid value." -msgstr "Ievadiet korektu faila vÄrdu." +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" -#: newforms/fields.py:269 core/validators.py:161 -msgid "Enter a valid e-mail address." -msgstr "Ievadiet korektu e-pasta adresi." +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" -#: newforms/fields.py:287 newforms/fields.py:309 +#: contrib/localflavor/jp/jp_prefectures.py:35 #, fuzzy -msgid "Enter a valid URL." -msgstr "Ievadiet korektu faila vÄrdu." +msgid "Shimane" +msgstr "IzmainÄ«t" -#: newforms/fields.py:311 -#, fuzzy -msgid "This URL appears to be a broken link." -msgstr "URL %s ir salauzta saite." +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" -#: newforms/fields.py:359 -msgid "Select a valid choice. That choice is not one of the available choices." +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" msgstr "" -#: newforms/fields.py:377 newforms/fields.py:453 +#: contrib/localflavor/jp/jp_prefectures.py:41 #, fuzzy -msgid "Enter a list of values." -msgstr "Ievadiet korektu faila vÄrdu." +msgid "Ehime" +msgstr "Laiks" -#: newforms/fields.py:386 -#, python-format -msgid "Select a valid choice. %s is not one of the available choices." +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" msgstr "" -#: template/defaultfilters.py:436 -msgid "yes,no,maybe" -msgstr "jÄ,nÄ“,varbÅ«t" +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" -#: views/generic/create_update.py:43 -#, fuzzy, python-format -msgid "The %(verbose_name)s was created successfully." -msgstr "%(name)s \"%(obj)s\" nomainÄ«ts sekmÄ«gi." +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" -#: views/generic/create_update.py:117 -#, fuzzy, python-format -msgid "The %(verbose_name)s was updated successfully." -msgstr "%(name)s \"%(obj)s\" sekmÄ«gi izdzÄ“sts." +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "" -#: views/generic/create_update.py:184 -#, fuzzy, python-format -msgid "The %(verbose_name)s was deleted." -msgstr "%(site_name)s komanda" +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" -#: core/validators.py:64 -msgid "This value must contain only letters, numbers and underscores." -msgstr "Å Ä« vÄ“rtÄ«ba var saturÄ“t tikai burtus, numurus un apakÅ¡svÄ«tras." +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" -#: core/validators.py:68 -msgid "" -"This value must contain only letters, numbers, underscores, dashes or " -"slashes." +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" msgstr "" -"Å Ä« vÄ“rtÄ«ba var saturÄ“t tikai burtus, numurus un apakÅ¡svÄ«tras, svÄ«tras vai " -"šķērssvÄ«tras." -#: core/validators.py:72 +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "Okinava" + +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "Ievadiet pasta indeksu XXXXXXX vai XXX-XXXX formÄtÄ." + +#: contrib/localflavor/ch/ch_states.py:5 +msgid "Aargau" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:6 +msgid "Appenzell Innerrhoden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:7 +msgid "Appenzell Ausserrhoden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:8 +msgid "Basel-Stadt" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:9 +msgid "Basel-Land" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:10 #, fuzzy -msgid "This value must contain only letters, numbers, underscores or hyphens." +msgid "Berne" +msgstr "lietotÄja vÄrds" + +#: contrib/localflavor/ch/ch_states.py:11 +msgid "Fribourg" msgstr "" -"Å Ä« vÄ“rtÄ«ba var saturÄ“t tikai burtus, numurus un apakÅ¡svÄ«tras, svÄ«tras vai " -"šķērssvÄ«tras." -#: core/validators.py:76 -msgid "Uppercase letters are not allowed here." -msgstr "AugšējÄ reÄ£istra burti nav atļauti." +#: contrib/localflavor/ch/ch_states.py:12 +msgid "Geneva" +msgstr "" -#: core/validators.py:80 -msgid "Lowercase letters are not allowed here." -msgstr "ApakšējÄ reÄ£istra burti nav atļauti." +#: contrib/localflavor/ch/ch_states.py:13 +#, fuzzy +msgid "Glarus" +msgstr "Grupas" -#: core/validators.py:87 -msgid "Enter only digits separated by commas." -msgstr "Ievadiet tikai numurus, kas atdalÄ«ti ar komatiem." +#: contrib/localflavor/ch/ch_states.py:14 +msgid "Graubuenden" +msgstr "" -#: core/validators.py:99 -msgid "Enter valid e-mail addresses separated by commas." -msgstr "Ievadiet korektas e-pasta adreses, kas atdalÄ«tas ar komatiem." +#: contrib/localflavor/ch/ch_states.py:15 +msgid "Jura" +msgstr "" -#: core/validators.py:103 -msgid "Please enter a valid IP address." -msgstr "LÅ«dzu ievadiet korektu IP adresi." +#: contrib/localflavor/ch/ch_states.py:16 +#, fuzzy +msgid "Lucerne" +msgstr "lietotÄja vÄrds" -#: core/validators.py:107 -msgid "Empty values are not allowed here." -msgstr "TukÅ¡as vÄ“rtÄ«bas nav atļautas." +#: contrib/localflavor/ch/ch_states.py:17 +msgid "Neuchatel" +msgstr "" -#: core/validators.py:111 -msgid "Non-numeric characters aren't allowed here." -msgstr "Ne ciparu simboli nav atļauti." +#: contrib/localflavor/ch/ch_states.py:18 +msgid "Nidwalden" +msgstr "" -#: core/validators.py:115 -msgid "This value can't be comprised solely of digits." -msgstr "Å Ä« vÄ“rtÄ«ba nevar saturÄ“t tikai ciparus." +#: contrib/localflavor/ch/ch_states.py:19 +msgid "Obwalden" +msgstr "" -#: core/validators.py:124 -msgid "Only alphabetical characters are allowed here." -msgstr "Atļauti tikai alfabÄ“tiskie simboli." +#: contrib/localflavor/ch/ch_states.py:20 +msgid "Schaffhausen" +msgstr "" -#: core/validators.py:139 -msgid "Year must be 1900 or later." +#: contrib/localflavor/ch/ch_states.py:21 +msgid "Schwyz" msgstr "" -#: core/validators.py:143 -#, fuzzy, python-format -msgid "Invalid date: %s." -msgstr "Nekorekts URL: %s" +#: contrib/localflavor/ch/ch_states.py:22 +msgid "Solothurn" +msgstr "" -#: core/validators.py:152 -msgid "Enter a valid time in HH:MM format." -msgstr "Ievadiet korektu laiku HH:MM formÄtÄ" +#: contrib/localflavor/ch/ch_states.py:23 +msgid "St. Gallen" +msgstr "" -#: core/validators.py:177 -msgid "" -"Upload a valid image. The file you uploaded was either not an image or a " -"corrupted image." +#: contrib/localflavor/ch/ch_states.py:24 +#, fuzzy +msgid "Thurgau" +msgstr "Ceturdiena" + +#: contrib/localflavor/ch/ch_states.py:25 +msgid "Ticino" msgstr "" -"AugÅ¡upielÄdÄ“jiet korektu attÄ“lu. Fails, ko JÅ«s augÅ¡upielÄdÄ“jÄt nav attÄ“ls " -"vai arÄ« bojÄts attÄ“la fails." -#: core/validators.py:184 -#, python-format -msgid "The URL %s does not point to a valid image." -msgstr "URL %s nesatur korektu attÄ“lu." +#: contrib/localflavor/ch/ch_states.py:26 +msgid "Uri" +msgstr "" -#: core/validators.py:188 -#, python-format -msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." -msgstr "Telefona numuriem jÄbÅ«t XXX-XXX-XXXX formÄtÄ. \"%s\" is nekorekts." +#: contrib/localflavor/ch/ch_states.py:27 +msgid "Valais" +msgstr "" -#: core/validators.py:196 -#, python-format -msgid "The URL %s does not point to a valid QuickTime video." -msgstr "URL %s nenorÄda uz korektu QuickTime video." +#: contrib/localflavor/ch/ch_states.py:28 +msgid "Vaud" +msgstr "" -#: core/validators.py:200 -msgid "A valid URL is required." -msgstr "ReÄls URL obligÄts." +#: contrib/localflavor/ch/ch_states.py:29 +#, fuzzy +msgid "Zug" +msgstr "aug" -#: core/validators.py:214 -#, python-format -msgid "" -"Valid HTML is required. Specific errors are:\n" -"%s" +#: contrib/localflavor/ch/ch_states.py:30 +msgid "Zurich" msgstr "" -"Korekts HTML ir obligÄts. SpecifiskÄs kļūdas:\n" -"%s" -#: core/validators.py:221 -#, python-format -msgid "Badly formed XML: %s" -msgstr "Slikti formÄ“ts XML: %s" +#: contrib/localflavor/ch/forms.py:18 +#: contrib/localflavor/no/forms.py:15 +msgid "Enter a zip code in the format XXXX." +msgstr "Ievadiet pasta indeksu formÄtÄ XXXX." -#: core/validators.py:238 -#, python-format -msgid "Invalid URL: %s" -msgstr "Nekorekts URL: %s" +#: contrib/localflavor/ch/forms.py:90 +msgid "Enter a valid Swiss identity or passport card number in X1234567<0 or 1234567890 format." +msgstr "LÅ«dzu ievadiet korektu Å¡veicieÅ¡u identifikÄcijas vai pases nummuru X1234567<0 vai 1234567890 formÄtÄ." -#: core/validators.py:243 core/validators.py:245 -#, python-format -msgid "The URL %s is a broken link." -msgstr "URL %s ir salauzta saite." +#: contrib/localflavor/is_/forms.py:16 +msgid "Enter a valid Icelandic identification number. The format is XXXXXX-XXXX." +msgstr "LÅ«dzu ievadiet korektu islandieÅ¡u identifikÄcijas nummuru XXXXXX-XXXX formÄtÄ." -#: core/validators.py:251 -msgid "Enter a valid U.S. state abbreviation." -msgstr "Ievadiet korektu ASV Å¡tata abriviatÅ«ru." +#: contrib/localflavor/is_/forms.py:30 +msgid "The Icelandic identification number is not valid." +msgstr "IslandieÅ¡u identifikÄcijas nummurs nav korekts." -#: core/validators.py:265 -#, python-format -msgid "Watch your mouth! The word %s is not allowed here." -msgid_plural "Watch your mouth! The words %s are not allowed here." -msgstr[0] "Seko saviem vÄrdiem! VÄrds %s nav atļauts Å¡eit." -msgstr[1] "Seko saviem vÄrdiem! VÄrdi %s nav atļauts Å¡eit." +#: contrib/localflavor/it/forms.py:16 +msgid "Enter a valid zip code." +msgstr "Ievadiet korektu pasta indeksu." -#: core/validators.py:272 -#, python-format -msgid "This field must match the '%s' field." -msgstr "Laukam jÄsaskan ar %s lauku." +#: contrib/localflavor/it/forms.py:41 +msgid "Enter a valid Social Security number." +msgstr "Ievadiet korektu sociÄlÄs drošības nummuru." -#: core/validators.py:291 -msgid "Please enter something for at least one field." -msgstr "LÅ«dzu ievadiet kaut ko vismaz vienÄ laukÄ." +#: contrib/localflavor/it/forms.py:68 +msgid "Enter a valid VAT number." +msgstr "Ievadiet korektu VAT nummuru." -#: core/validators.py:300 core/validators.py:311 -msgid "Please enter both fields or leave them both empty." -msgstr "LÅ«dzu ievadiet abus laukus vai atstÄjiet abus tukÅ¡us." +#: contrib/localflavor/no/forms.py:36 +msgid "Enter a valid Norwegian social security number." +msgstr "LÅ«dzu ievadiet korektu norvēģu sociÄlÄs drošības nummuru." -#: core/validators.py:318 -#, python-format -msgid "This field must be given if %(field)s is %(value)s" -msgstr "Å is lauks ir jÄaizpilda, ja %(field)s ir vienÄds %(value)s" +#: contrib/localflavor/cl/forms.py:21 +msgid "Enter valid a Chilean RUT. The format is XX.XXX.XXX-X." +msgstr "Ievadiet korektu ÄÄ«lieÅ¡u RUT XX.XXX.XXX-X formÄtÄ." -#: core/validators.py:330 -#, python-format -msgid "This field must be given if %(field)s is not %(value)s" -msgstr "Å is lauks ir jÄaizpilda, ja %(field)s nav vienÄds %(value)s" +#: contrib/localflavor/cl/forms.py:26 +msgid "Enter valid a Chilean RUT" +msgstr "Ievadiet korektu ÄÄ«lieÅ¡u RUT" -#: core/validators.py:349 -msgid "Duplicate values are not allowed." -msgstr "DuplicÄ“tas vÄ“rtÄ«bas nav atļautas." +#: contrib/localflavor/fi/forms.py:40 +#: contrib/localflavor/fi/forms.py:45 +msgid "Enter a valid Finnish social security number." +msgstr "Ievadiet korektu somu sociÄlÄs drošības nummuru." -#: core/validators.py:364 -#, fuzzy, python-format -msgid "This value must be between %s and %s." -msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t %s pakÄpei." +#: contrib/sessions/models.py:68 +msgid "session key" +msgstr "sesijas atslÄ“ga" -#: core/validators.py:366 -#, fuzzy, python-format -msgid "This value must be at least %s." -msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t %s pakÄpei." +#: contrib/sessions/models.py:69 +msgid "session data" +msgstr "sesijas dati" -#: core/validators.py:368 -#, fuzzy, python-format -msgid "This value must be no more than %s." -msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t %s pakÄpei." +#: contrib/sessions/models.py:70 +msgid "expire date" +msgstr "beigu datums" -#: core/validators.py:404 -#, python-format -msgid "This value must be a power of %s." -msgstr "Å ai vÄ“rtÄ«bai jÄbÅ«t %s pakÄpei." +#: contrib/sessions/models.py:74 +msgid "session" +msgstr "sesija" -#: core/validators.py:415 -msgid "Please enter a valid decimal number." -msgstr "LÅ«dzu ievadiet korektu decimÄlu numuru." +#: contrib/sessions/models.py:75 +msgid "sessions" +msgstr "sesijas" -#: core/validators.py:419 -#, python-format -msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "" -"Please enter a valid decimal number with at most %s total digits." -msgstr[0] "" -"LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." -msgstr[1] "" -"LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." +#: contrib/flatpages/models.py:8 +msgid "Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "PiemÄ“ram: '/about/contact/'. PÄrliecinieties, ka esat ievietojuÅ¡i sÄkuma un beigu slÄ«psvÄ«tras." -#: core/validators.py:422 -#, fuzzy, python-format -msgid "" -"Please enter a valid decimal number with a whole part of at most %s digit." -msgid_plural "" -"Please enter a valid decimal number with a whole part of at most %s digits." -msgstr[0] "" -"LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." -msgstr[1] "" -"LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu %s." +#: contrib/flatpages/models.py:9 +msgid "title" +msgstr "virsraksts" -#: core/validators.py:425 -#, python-format -msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "" -"Please enter a valid decimal number with at most %s decimal places." -msgstr[0] "" -"LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu aiz komata " -"%s." -msgstr[1] "" -"LÅ«dzu ievadiet korektu decimÄlu numuru ar maksimÄlu ciparu skaitu aiz komata " -"%s." +#: contrib/flatpages/models.py:10 +msgid "content" +msgstr "saturs" -#: core/validators.py:435 -#, python-format -msgid "Make sure your uploaded file is at least %s bytes big." -msgstr "" -"PÄrliecinieties, ka jÅ«su augÅ¡upielÄdÄ“tais fails ir vismaz %s baiti liels." +#: contrib/flatpages/models.py:11 +msgid "enable comments" +msgstr "ieslÄ“gt komentÄrus" -#: core/validators.py:436 -#, python-format -msgid "Make sure your uploaded file is at most %s bytes big." -msgstr "" -"PÄrliecinieties, ka jÅ«su augÅ¡upielÄdÄ“tais fails ir maksimums %s baiti liels." +#: contrib/flatpages/models.py:12 +msgid "template name" +msgstr "Å¡ablona nosaukums" -#: core/validators.py:453 -msgid "The format for this field is wrong." -msgstr "Å Ä« faila formÄts ir nekorekts." +#: contrib/flatpages/models.py:13 +msgid "Example: 'flatpages/contact_page.html'. If this isn't provided, the system will use 'flatpages/default.html'." +msgstr "PiemÄ“ram: 'flatpages/contact_page.html'. Ja tas nav norÄdÄ«ts, sistÄ“ma lietos 'flatpages/default.html'." -#: core/validators.py:468 -msgid "This field is invalid." -msgstr "Å is lauks ir nekorekts." +#: contrib/flatpages/models.py:14 +msgid "registration required" +msgstr "reÄ£istrÄcija obligÄta" -#: core/validators.py:504 -#, python-format -msgid "Could not retrieve anything from %s." -msgstr "Nevar neko no %s" +#: contrib/flatpages/models.py:14 +msgid "If this is checked, only logged-in users will be able to view the page." +msgstr "Ja tas ir atzÄ«mÄ“ts, tikai lietotÄji, kas ir pieslÄ“guÅ¡ies sistÄ“mÄs redzÄ“s Å¡o lapu." -#: core/validators.py:507 -#, python-format -msgid "" -"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." -msgstr "URL %(url)s atgrieza nekorektu Content-Type headeri '%(contenttype)s'." +#: contrib/flatpages/models.py:18 +msgid "flat page" +msgstr "vienkÄrÅ¡a lapa" + +#: contrib/flatpages/models.py:19 +msgid "flat pages" +msgstr "vienkÄrÅ¡as lapas" + +#: utils/dates.py:6 +msgid "Monday" +msgstr "Pirmdiena" + +#: utils/dates.py:6 +msgid "Tuesday" +msgstr "Otrdiena" + +#: utils/dates.py:6 +msgid "Wednesday" +msgstr "TreÅ¡diena" + +#: utils/dates.py:6 +msgid "Thursday" +msgstr "Ceturdiena" + +#: utils/dates.py:6 +msgid "Friday" +msgstr "Piektdiena" + +#: utils/dates.py:7 +msgid "Saturday" +msgstr "Sestdiena" + +#: utils/dates.py:7 +msgid "Sunday" +msgstr "SvÄ“tdiena" + +#: utils/dates.py:14 +msgid "January" +msgstr "JanvÄris" + +#: utils/dates.py:14 +msgid "February" +msgstr "FebruÄris" + +#: utils/dates.py:14 +#: utils/dates.py:27 +msgid "March" +msgstr "Marts" + +#: utils/dates.py:14 +#: utils/dates.py:27 +msgid "April" +msgstr "AprÄ«lis" + +#: utils/dates.py:14 +#: utils/dates.py:27 +msgid "May" +msgstr "Maijs" + +#: utils/dates.py:14 +#: utils/dates.py:27 +msgid "June" +msgstr "JÅ«nijs" + +#: utils/dates.py:15 +#: utils/dates.py:27 +msgid "July" +msgstr "JÅ«lijs" + +#: utils/dates.py:15 +msgid "August" +msgstr "Augusts" + +#: utils/dates.py:15 +msgid "September" +msgstr "Septembris" + +#: utils/dates.py:15 +msgid "October" +msgstr "Oktobris" + +#: utils/dates.py:15 +msgid "November" +msgstr "Novembris" + +#: utils/dates.py:16 +msgid "December" +msgstr "Decembris" + +#: utils/dates.py:19 +msgid "jan" +msgstr "jan" + +#: utils/dates.py:19 +msgid "feb" +msgstr "feb" + +#: utils/dates.py:19 +msgid "mar" +msgstr "mar" + +#: utils/dates.py:19 +msgid "apr" +msgstr "apr" + +#: utils/dates.py:19 +msgid "may" +msgstr "mai" + +#: utils/dates.py:19 +msgid "jun" +msgstr "jÅ«n" + +#: utils/dates.py:20 +msgid "jul" +msgstr "jÅ«l" + +#: utils/dates.py:20 +msgid "aug" +msgstr "aug" + +#: utils/dates.py:20 +msgid "sep" +msgstr "sep" + +#: utils/dates.py:20 +msgid "oct" +msgstr "okt" + +#: utils/dates.py:20 +msgid "nov" +msgstr "nov" + +#: utils/dates.py:20 +msgid "dec" +msgstr "dec" + +#: utils/dates.py:27 +msgid "Jan." +msgstr "Jan." + +#: utils/dates.py:27 +msgid "Feb." +msgstr "Feb." + +#: utils/dates.py:28 +msgid "Aug." +msgstr "Aug." + +#: utils/dates.py:28 +msgid "Sept." +msgstr "Sept." + +#: utils/dates.py:28 +msgid "Oct." +msgstr "Okt." + +#: utils/dates.py:28 +msgid "Nov." +msgstr "Nov." + +#: utils/dates.py:28 +msgid "Dec." +msgstr "Dec." + +#: utils/timesince.py:12 +msgid "year" +msgid_plural "years" +msgstr[0] "gads" +msgstr[1] "gadi" -#: core/validators.py:540 +#: utils/timesince.py:13 +msgid "month" +msgid_plural "months" +msgstr[0] "mÄ“nesis" +msgstr[1] "mÄ“neÅ¡i" + +#: utils/timesince.py:14 +msgid "week" +msgid_plural "weeks" +msgstr[0] "nedēļa" +msgstr[1] "nedēļas" + +#: utils/timesince.py:15 +msgid "day" +msgid_plural "days" +msgstr[0] "diena" +msgstr[1] "dienas" + +#: utils/timesince.py:16 +msgid "hour" +msgid_plural "hours" +msgstr[0] "stunda" +msgstr[1] "stundas" + +#: utils/timesince.py:17 +msgid "minute" +msgid_plural "minutes" +msgstr[0] "minÅ«te" +msgstr[1] "minÅ«tes" + +#: utils/timesince.py:40 #, python-format -msgid "" -"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " -"\"%(start)s\".)" -msgstr "" -"LÅ«dzu aiztaisiet neaiztaisÄ«to %(tag)s tagu no rindas nr %(line)s. (Rinda " -"sÄkas ar \"%(start)s\".)" +msgid "%d milliseconds" +msgstr "%d millisekundes" -#: core/validators.py:544 +#: utils/timesince.py:41 #, python-format -msgid "" -"Some text starting on line %(line)s is not allowed in that context. (Line " -"starts with \"%(start)s\".)" -msgstr "" +msgid "%(number)d %(type)s" +msgstr "%(number)d %(type)s" -#: core/validators.py:549 +#: utils/timesince.py:47 #, python-format -msgid "" -"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" -"(start)s\".)" -msgstr "" +msgid ", %(number)d %(type)s" +msgstr ", %(number)d %(type)s" + +#: utils/dateformat.py:40 +#, fuzzy +msgid "p.m." +msgstr "p.m." + +#: utils/dateformat.py:41 +#, fuzzy +msgid "a.m." +msgstr "a.m." + +#: utils/dateformat.py:46 +#, fuzzy +msgid "PM" +msgstr "PM" + +#: utils/dateformat.py:47 +#, fuzzy +msgid "AM" +msgstr "AM" + +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "pusnakts" + +#: utils/dateformat.py:97 +msgid "noon" +msgstr "dienas vidus" + +#: utils/translation/trans_real.py:358 +msgid "DATE_FORMAT" +msgstr "DATE_FORMAT" + +#: utils/translation/trans_real.py:359 +msgid "DATETIME_FORMAT" +msgstr "DATETIME_FORMAT" -#: core/validators.py:554 +#: utils/translation/trans_real.py:360 +msgid "TIME_FORMAT" +msgstr "TIME_FORMAT" + +#: utils/translation/trans_real.py:376 +msgid "YEAR_MONTH_FORMAT" +msgstr "YEAR_MONTH_FORMAT" + +#: utils/translation/trans_real.py:377 +msgid "MONTH_DAY_FORMAT" +msgstr "MONTH_DAY_FORMAT" + +#: template/defaultfilters.py:491 +msgid "yes,no,maybe" +msgstr "jÄ,nÄ“,varbÅ«t" + +#: template/defaultfilters.py:520 #, python-format -msgid "" -"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" -"(start)s\".)" -msgstr "" +msgid "%(size)d byte" +msgid_plural "%(size)d bytes" +msgstr[0] "" +msgstr[1] "" -#: core/validators.py:558 +#: template/defaultfilters.py:522 #, python-format -msgid "" -"A tag on line %(line)s is missing one or more required attributes. (Line " -"starts with \"%(start)s\".)" -msgstr "" +msgid "%.1f KB" +msgstr "%.1f KB" -#: core/validators.py:563 +#: template/defaultfilters.py:524 #, python-format -msgid "" -"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " -"starts with \"%(start)s\".)" -msgstr "" +msgid "%.1f MB" +msgstr "%.1f MB" -#~ msgid "Use '[algo]$[salt]$[hexdigest]'" -#~ msgstr "Lietojiet '[algo]$[salt]$[hexdigest]'" +#: template/defaultfilters.py:525 +#, python-format +msgid "%.1f GB" +msgstr "%.1f GB" -#~ msgid "Have you <a href=\"/password_reset/\">forgotten your password</a>?" -#~ msgstr "Vai esat <a href=\"/password_reset/\">aizmirsis paroli</a>?" diff --git a/django/conf/locale/lv/LC_MESSAGES/djangojs.mo b/django/conf/locale/lv/LC_MESSAGES/djangojs.mo Binary files differindex b81550aedb..1835996a67 100644 --- a/django/conf/locale/lv/LC_MESSAGES/djangojs.mo +++ b/django/conf/locale/lv/LC_MESSAGES/djangojs.mo diff --git a/django/conf/locale/lv/LC_MESSAGES/djangojs.po b/django/conf/locale/lv/LC_MESSAGES/djangojs.po index 534cffd8d0..4c904ab068 100644 --- a/django/conf/locale/lv/LC_MESSAGES/djangojs.po +++ b/django/conf/locale/lv/LC_MESSAGES/djangojs.po @@ -10,7 +10,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2007-02-15 10:46+1100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Last-Translator: Gatis Tomsons <gatis.tomsons@gmail.com>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -19,64 +19,65 @@ msgstr "" #: contrib/admin/media/js/SelectFilter2.js:33 #, perl-format msgid "Available %s" -msgstr "" +msgstr "Pieejams %s" #: contrib/admin/media/js/SelectFilter2.js:41 msgid "Choose all" -msgstr "" +msgstr "IzvÄ“lÄ“ties visu" #: contrib/admin/media/js/SelectFilter2.js:46 msgid "Add" -msgstr "" +msgstr "Pievienot" #: contrib/admin/media/js/SelectFilter2.js:48 msgid "Remove" -msgstr "" +msgstr "Izņemt" #: contrib/admin/media/js/SelectFilter2.js:53 #, perl-format msgid "Chosen %s" -msgstr "" +msgstr "IzvÄ“lies %s" #: contrib/admin/media/js/SelectFilter2.js:54 msgid "Select your choice(s) and click " -msgstr "" +msgstr "IzvÄ“lies un klikšķini" #: contrib/admin/media/js/SelectFilter2.js:59 msgid "Clear all" -msgstr "" +msgstr "AttÄ«rÄ«t visu" #: contrib/admin/media/js/dateparse.js:32 #: contrib/admin/media/js/calendar.js:24 msgid "" "January February March April May June July August September October November " "December" -msgstr "" +msgstr "JanvÄris FebruÄris Marts AprÄ«lis Maijs JÅ«nijs JÅ«lijs Augusts Septembris Oktobris Novembris" +"Decembris" #: contrib/admin/media/js/dateparse.js:33 msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" -msgstr "" +msgstr "SvÄ“tdiena Pirmdiena Otrdiena TreÅ¡diena Ceturtdiena Piektdiena Sestdiena" #: contrib/admin/media/js/calendar.js:25 msgid "S M T W T F S" -msgstr "" +msgstr "S M T W T F S" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:47 #: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 msgid "Now" -msgstr "" +msgstr "Tagad" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:51 msgid "Clock" -msgstr "" +msgstr "Pulkstens" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:78 msgid "Choose a time" -msgstr "" +msgstr "IzvÄ“lieties laiku" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 msgid "Midnight" -msgstr "" +msgstr "Pusnakts" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 msgid "6 a.m." @@ -84,35 +85,35 @@ msgstr "" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:84 msgid "Noon" -msgstr "" +msgstr "Pusdienas laiks" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:88 #: contrib/admin/media/js/admin/DateTimeShortcuts.js:183 msgid "Cancel" -msgstr "" +msgstr "Atcelt" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:128 #: contrib/admin/media/js/admin/DateTimeShortcuts.js:177 msgid "Today" -msgstr "" +msgstr "Å odien" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:132 msgid "Calendar" -msgstr "" +msgstr "KalendÄrs" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:175 msgid "Yesterday" -msgstr "" +msgstr "Vakar" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:179 msgid "Tomorrow" -msgstr "" +msgstr "RÄ«t" #: contrib/admin/media/js/admin/CollapsedFieldsets.js:34 #: contrib/admin/media/js/admin/CollapsedFieldsets.js:72 msgid "Show" -msgstr "" +msgstr "ParÄdÄ«t" #: contrib/admin/media/js/admin/CollapsedFieldsets.js:63 msgid "Hide" -msgstr "" +msgstr "SlÄ“pt" diff --git a/django/conf/locale/mk/LC_MESSAGES/django.mo b/django/conf/locale/mk/LC_MESSAGES/django.mo Binary files differindex 5ab5aa6cbb..e67d94fae1 100644 --- a/django/conf/locale/mk/LC_MESSAGES/django.mo +++ b/django/conf/locale/mk/LC_MESSAGES/django.mo diff --git a/django/conf/locale/mk/LC_MESSAGES/django.po b/django/conf/locale/mk/LC_MESSAGES/django.po index f23d8ed58a..b0a9c92c08 100644 --- a/django/conf/locale/mk/LC_MESSAGES/django.po +++ b/django/conf/locale/mk/LC_MESSAGES/django.po @@ -1,26 +1,26 @@ -# translation of mk_django.po to Macedonian +# translation of django.po to Macedonian # # Georgi Stanojevski <glisha@gmail.com>, 2006, 2007. msgid "" msgstr "" -"Project-Id-Version: mk_django\n" +"Project-Id-Version: django\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-02-15 10:53+1100\n" -"PO-Revision-Date: 2007-02-24 13:53+0100\n" +"POT-Creation-Date: 2007-04-07 19:51+0200\n" +"PO-Revision-Date: 2007-04-07 20:29+0200\n" "Last-Translator: Georgi Stanojevski <glisha@gmail.com>\n" "Language-Team: Macedonian <ossm-members@hedona.on.net.mk>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" -"Plural-Forms: nplurals=2; plural=n != 1;" +"Plural-Forms: nplurals=2; plural=n != 1;\n" -#: db/models/manipulators.py:305 +#: db/models/manipulators.py:307 #, python-format msgid "%(object)s with this %(type)s already exists for the given %(field)s." msgstr "%(object)s од овој тип %(type)s веќе поÑтои за даденото %(field)s." -#: db/models/manipulators.py:306 contrib/admin/views/main.py:335 +#: db/models/manipulators.py:308 contrib/admin/views/main.py:335 #: contrib/admin/views/main.py:337 contrib/admin/views/main.py:339 msgid "and" msgstr "и" @@ -42,45 +42,53 @@ msgstr "Држете го „Control“ или „Command“ на Мекинто #, python-format msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." msgid_plural "Please enter valid %(self)s IDs. The values %(value)r are invalid." -msgstr[0] "Ве молам внеÑете правилен %(self)s идентификацион број. Оваа вредноÑÑ‚ %(value)r е неправилна." -msgstr[1] "Ве молам внеÑете правилен %(self)s идентификацион број. ВредноÑтите %(value)r Ñе неправилни." +msgstr[0] "" +"Ве молам внеÑете правилен %(self)s идентификацион број. Оваа вредноÑÑ‚ %" +"(value)r е неправилна." +msgstr[1] "" +"Ве молам внеÑете правилен %(self)s идентификацион број. ВредноÑтите %(value)" +"r Ñе неправилни." #: db/models/fields/__init__.py:42 #, python-format msgid "%(optname)s with this %(fieldname)s already exists." msgstr "%(optname)s Ñо ова %(fieldname)s веќе поÑтои." -#: db/models/fields/__init__.py:116 db/models/fields/__init__.py:273 -#: db/models/fields/__init__.py:605 db/models/fields/__init__.py:616 -#: oldforms/__init__.py:352 newforms/fields.py:78 newforms/fields.py:373 -#: newforms/fields.py:449 newforms/fields.py:460 +#: db/models/fields/__init__.py:117 db/models/fields/__init__.py:274 +#: db/models/fields/__init__.py:610 db/models/fields/__init__.py:621 +#: oldforms/__init__.py:357 newforms/fields.py:80 newforms/fields.py:376 +#: newforms/fields.py:452 newforms/fields.py:463 newforms/models.py:178 msgid "This field is required." msgstr "Ова поле е задолжително." -#: db/models/fields/__init__.py:366 +#: db/models/fields/__init__.py:367 msgid "This value must be an integer." msgstr "Оваа вредноÑÑ‚ мора да биде цел број." -#: db/models/fields/__init__.py:401 +#: db/models/fields/__init__.py:402 msgid "This value must be either True or False." msgstr "Оваа вредноÑÑ‚ мора да биде или точно или неточно." -#: db/models/fields/__init__.py:422 +#: db/models/fields/__init__.py:423 msgid "This field cannot be null." msgstr "Оваа вредноÑÑ‚ неможе да биде null." -#: db/models/fields/__init__.py:454 core/validators.py:147 +#: db/models/fields/__init__.py:457 core/validators.py:148 msgid "Enter a valid date in YYYY-MM-DD format." msgstr "ВнеÑете правилен датум во форматот ГГГГ-ММ-ДД." -#: db/models/fields/__init__.py:521 core/validators.py:156 +#: db/models/fields/__init__.py:526 core/validators.py:157 msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." msgstr "ВнеÑете правилен датум/време во форматот ГГГГ-ММ-ДД ЧЧ:ММ." -#: db/models/fields/__init__.py:625 +#: db/models/fields/__init__.py:630 msgid "Enter a valid filename." msgstr "ВнеÑите правилно име на датотека." +#: db/models/fields/__init__.py:751 +msgid "This value must be either None, True or False." +msgstr "Оваа вредноÑÑ‚ мора да биде празна, точно или неточно." + #: conf/global_settings.py:39 msgid "Arabic" msgstr "ÐрапÑки" @@ -90,415 +98,449 @@ msgid "Bengali" msgstr "БенгалÑки" #: conf/global_settings.py:41 +msgid "Catalan" +msgstr "КаталанÑки" + +#: conf/global_settings.py:42 msgid "Czech" msgstr "Чешки" -#: conf/global_settings.py:42 +#: conf/global_settings.py:43 msgid "Welsh" msgstr "Велшки" -#: conf/global_settings.py:43 +#: conf/global_settings.py:44 msgid "Danish" msgstr "ДанÑки" -#: conf/global_settings.py:44 +#: conf/global_settings.py:45 msgid "German" msgstr "ГерманÑки" -#: conf/global_settings.py:45 +#: conf/global_settings.py:46 msgid "Greek" msgstr "Грчки" -#: conf/global_settings.py:46 +#: conf/global_settings.py:47 msgid "English" msgstr "ÐнглиÑки" -#: conf/global_settings.py:47 +#: conf/global_settings.py:48 msgid "Spanish" msgstr "ШпанÑки" -#: conf/global_settings.py:48 +#: conf/global_settings.py:49 msgid "Argentinean Spanish" msgstr "ÐргентиÑко шпанÑки" -#: conf/global_settings.py:49 +#: conf/global_settings.py:50 msgid "Finnish" msgstr "ФинÑки" -#: conf/global_settings.py:50 +#: conf/global_settings.py:51 msgid "French" msgstr "ФранцуÑки" -#: conf/global_settings.py:51 +#: conf/global_settings.py:52 msgid "Galician" msgstr "ГалÑки" -#: conf/global_settings.py:52 +#: conf/global_settings.py:53 msgid "Hungarian" msgstr "УнгарÑки" -#: conf/global_settings.py:53 +#: conf/global_settings.py:54 msgid "Hebrew" msgstr "ЕврејÑки" -#: conf/global_settings.py:54 +#: conf/global_settings.py:55 msgid "Icelandic" msgstr "ИÑландÑки" -#: conf/global_settings.py:55 +#: conf/global_settings.py:56 msgid "Italian" msgstr "ИталијанÑки" -#: conf/global_settings.py:56 +#: conf/global_settings.py:57 msgid "Japanese" msgstr "ЈапонÑки" -#: conf/global_settings.py:57 +#: conf/global_settings.py:58 +msgid "Kannada" +msgstr "Канада" + +#: conf/global_settings.py:59 msgid "Latvian" msgstr "ЛатвиÑки" -#: conf/global_settings.py:58 +#: conf/global_settings.py:60 msgid "Macedonian" msgstr "МакедонÑки" -#: conf/global_settings.py:59 +#: conf/global_settings.py:61 msgid "Dutch" msgstr "ХоландÑки" -#: conf/global_settings.py:60 +#: conf/global_settings.py:62 msgid "Norwegian" msgstr "Ðорвешки" -#: conf/global_settings.py:61 +#: conf/global_settings.py:63 msgid "Polish" msgstr "ПолÑки" -#: conf/global_settings.py:62 +#: conf/global_settings.py:64 +msgid "Portugese" +msgstr "ПортугалкÑки" + +#: conf/global_settings.py:65 msgid "Brazilian" msgstr "БразилÑки" -#: conf/global_settings.py:63 +#: conf/global_settings.py:66 msgid "Romanian" msgstr "РоманÑки" -#: conf/global_settings.py:64 +#: conf/global_settings.py:67 msgid "Russian" msgstr "РуÑки" -#: conf/global_settings.py:65 +#: conf/global_settings.py:68 msgid "Slovak" msgstr "Словачки" -#: conf/global_settings.py:66 +#: conf/global_settings.py:69 msgid "Slovenian" msgstr "Словенечки" -#: conf/global_settings.py:67 +#: conf/global_settings.py:70 msgid "Serbian" msgstr "СрпÑки" -#: conf/global_settings.py:68 +#: conf/global_settings.py:71 msgid "Swedish" msgstr "ШведÑки" -#: conf/global_settings.py:69 +#: conf/global_settings.py:72 msgid "Tamil" msgstr "Тамил" -#: conf/global_settings.py:70 +#: conf/global_settings.py:73 +msgid "Telugu" +msgstr "Телугу" + +#: conf/global_settings.py:74 msgid "Turkish" msgstr "ТурÑки" -#: conf/global_settings.py:71 +#: conf/global_settings.py:75 msgid "Ukrainian" msgstr "УкраинÑки" -#: conf/global_settings.py:72 +#: conf/global_settings.py:76 msgid "Simplified Chinese" msgstr "УпроÑтен кинеÑки" -#: conf/global_settings.py:73 +#: conf/global_settings.py:77 msgid "Traditional Chinese" msgstr "Традиционален кинеÑки" -#: utils/timesince.py:12 -msgid "year" -msgid_plural "years" -msgstr[0] "година" -msgstr[1] "години" - -#: utils/timesince.py:13 -msgid "month" -msgid_plural "months" -msgstr[0] "меÑец" -msgstr[1] "меÑеци" - -#: utils/timesince.py:14 -msgid "week" -msgid_plural "weeks" -msgstr[0] "Ñедмица" -msgstr[1] "Ñедмици" - -#: utils/timesince.py:15 -msgid "day" -msgid_plural "days" -msgstr[0] "ден" -msgstr[1] "денови" - -#: utils/timesince.py:16 -msgid "hour" -msgid_plural "hours" -msgstr[0] "чаÑ" -msgstr[1] "чаÑови" - -#: utils/timesince.py:17 -msgid "minute" -msgid_plural "minutes" -msgstr[0] "минута" -msgstr[1] "минути" - -#: utils/dates.py:6 -msgid "Monday" -msgstr "понеделник" - -#: utils/dates.py:6 -msgid "Tuesday" -msgstr "вторник" - -#: utils/dates.py:6 -msgid "Wednesday" -msgstr "Ñреда" - -#: utils/dates.py:6 -msgid "Thursday" -msgstr "четврток" +#: core/validators.py:64 +msgid "This value must contain only letters, numbers and underscores." +msgstr "Оваа вредноÑÑ‚ Ñмее да има Ñамо букви, бројки или долни црти." -#: utils/dates.py:6 -msgid "Friday" -msgstr "петок" +#: core/validators.py:68 +msgid "" +"This value must contain only letters, numbers, underscores, dashes or " +"slashes." +msgstr "Оваа вредноÑÑ‚ Ñмее да има Ñамо букви, бројки, долни црти, црти или коÑи црти." -#: utils/dates.py:7 -msgid "Saturday" -msgstr "Ñабота" +#: core/validators.py:72 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "Оваа вредноÑÑ‚ Ñмее да Ñодржи Ñамо букви, бројки, долни црти или црти." -#: utils/dates.py:7 -msgid "Sunday" -msgstr "недела" +#: core/validators.py:76 +msgid "Uppercase letters are not allowed here." +msgstr "Големи букви не Ñе дозволени." -#: utils/dates.py:14 -msgid "January" -msgstr "јануари" +#: core/validators.py:80 +msgid "Lowercase letters are not allowed here." +msgstr "Мали букви не Ñе дозволени." -#: utils/dates.py:14 -msgid "February" -msgstr "февруари" +#: core/validators.py:87 +msgid "Enter only digits separated by commas." +msgstr "ВнеÑете Ñамо цифри одделени Ñо запирки." -#: utils/dates.py:14 utils/dates.py:27 -msgid "March" -msgstr "март" +#: core/validators.py:99 +msgid "Enter valid e-mail addresses separated by commas." +msgstr "ВнеÑете валидни адреÑи за е-пошта одделени Ñо запирки." -#: utils/dates.py:14 utils/dates.py:27 -msgid "April" -msgstr "април" +#: core/validators.py:103 +msgid "Please enter a valid IP address." +msgstr "Ве молам внеÑете валидна ИП адреÑа." -#: utils/dates.py:14 utils/dates.py:27 -msgid "May" -msgstr "мај" +#: core/validators.py:107 +msgid "Empty values are not allowed here." +msgstr "Празни вредноÑти не Ñе дозволени." -#: utils/dates.py:14 utils/dates.py:27 -msgid "June" -msgstr "јуни" +#: core/validators.py:111 +msgid "Non-numeric characters aren't allowed here." +msgstr "Ðенумерички знаци не Ñе дозволени тука." -#: utils/dates.py:15 utils/dates.py:27 -msgid "July" -msgstr "јули" +#: core/validators.py:115 +msgid "This value can't be comprised solely of digits." +msgstr "Оваа вредноÑÑ‚ не Ñмее да биде Ñамо од цифри." -#: utils/dates.py:15 -msgid "August" -msgstr "авгуÑÑ‚" +#: core/validators.py:120 newforms/fields.py:128 +msgid "Enter a whole number." +msgstr "ВнеÑи цел број." -#: utils/dates.py:15 -msgid "September" -msgstr "Ñептември" +#: core/validators.py:124 +msgid "Only alphabetical characters are allowed here." +msgstr "Дозволени Ñе Ñамо букви." -#: utils/dates.py:15 -msgid "October" -msgstr "октомври" +#: core/validators.py:139 +msgid "Year must be 1900 or later." +msgstr "Годината мора да биде 1900 или покаÑно." -#: utils/dates.py:15 -msgid "November" -msgstr "ноември" +#: core/validators.py:143 +#, python-format +msgid "Invalid date: %s" +msgstr "Ðеправилен датум: %s" -#: utils/dates.py:16 -msgid "December" -msgstr "декември" +#: core/validators.py:153 +msgid "Enter a valid time in HH:MM format." +msgstr "ВнеÑете правилно време во форматот HH:MM." -#: utils/dates.py:19 -msgid "jan" -msgstr "јан" +#: core/validators.py:162 newforms/fields.py:271 +msgid "Enter a valid e-mail address." +msgstr "ВнеÑeте правилна адреÑа за е-пошта." -#: utils/dates.py:19 -msgid "feb" -msgstr "фев" +#: core/validators.py:174 core/validators.py:445 oldforms/__init__.py:672 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "Ðе беше пратена датотека. Проверете го типот на енкодирање на формата." -#: utils/dates.py:19 -msgid "mar" -msgstr "мар" +#: core/validators.py:178 +msgid "" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." +msgstr "" +"Качете валидна фотографија. Датотеката која ја качивте или не беше " +"фотографија или беше раÑипана датотеката." -#: utils/dates.py:19 -msgid "apr" -msgstr "апр" +#: core/validators.py:185 +#, python-format +msgid "The URL %s does not point to a valid image." +msgstr "ÐдреÑата %s не покажува кон валидна фотографија." -#: utils/dates.py:19 -msgid "may" -msgstr "мај" +#: core/validators.py:189 +#, python-format +msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." +msgstr "" +"ТелефонÑките броеви мора да бидат во XXX-XXX-XXXX форматот. „%s“ не е " +"валиден." -#: utils/dates.py:19 -msgid "jun" -msgstr "јун" +#: core/validators.py:197 +#, python-format +msgid "The URL %s does not point to a valid QuickTime video." +msgstr "ÐдреÑата „%s“ не покажува кон QuickTime видео." -#: utils/dates.py:20 -msgid "jul" -msgstr "јул" +#: core/validators.py:201 +msgid "A valid URL is required." +msgstr "Задолжителна е правилна адреÑа." -#: utils/dates.py:20 -msgid "aug" -msgstr "авг" +#: core/validators.py:215 +#, python-format +msgid "" +"Valid HTML is required. Specific errors are:\n" +"%s" +msgstr "" +"Задолжителен е правилен HTML. Грешките Ñе:\n" +"%s" -#: utils/dates.py:20 -msgid "sep" -msgstr "Ñеп" +#: core/validators.py:222 +#, python-format +msgid "Badly formed XML: %s" +msgstr "Ðеправилно формиран XML: %s" -#: utils/dates.py:20 -msgid "oct" -msgstr "окт" +#: core/validators.py:239 +#, python-format +msgid "Invalid URL: %s" +msgstr "Ðеправилна адреÑа: %s" -#: utils/dates.py:20 -msgid "nov" -msgstr "ное" +#: core/validators.py:244 core/validators.py:246 +#, python-format +msgid "The URL %s is a broken link." +msgstr "ÐдреÑата %s е Ñкршена врÑка." -#: utils/dates.py:20 -msgid "dec" -msgstr "дек" +#: core/validators.py:252 +msgid "Enter a valid U.S. state abbreviation." +msgstr "ВнеÑете правилна Ñкратеница за држава во СÐД." -#: utils/dates.py:27 -msgid "Jan." -msgstr "јан." +#: core/validators.py:266 +#, python-format +msgid "Watch your mouth! The word %s is not allowed here." +msgid_plural "Watch your mouth! The words %s are not allowed here." +msgstr[0] "Внимавајте на јазикот. Тука не е дозволен зборот %s." +msgstr[1] "Внимавајте на јазикот. Тука не Ñе дозволени зборовите %s." -#: utils/dates.py:27 -msgid "Feb." -msgstr "фев." +#: core/validators.py:273 +#, python-format +msgid "This field must match the '%s' field." +msgstr "Ова поле мора да ÑоодејÑтвува Ñо полето „%s“." -#: utils/dates.py:28 -msgid "Aug." -msgstr "авг." +#: core/validators.py:292 +msgid "Please enter something for at least one field." +msgstr "Ве молам внеÑете нешто во барем едно поле." -#: utils/dates.py:28 -msgid "Sept." -msgstr "Ñеп." +#: core/validators.py:301 core/validators.py:312 +msgid "Please enter both fields or leave them both empty." +msgstr "Ве молам внеÑете во двете полиња или оÑтавете ги двете празни." -#: utils/dates.py:28 -msgid "Oct." -msgstr "окт." +#: core/validators.py:320 +#, python-format +msgid "This field must be given if %(field)s is %(value)s" +msgstr "Ова поле мора да биде зададено ако %(field)s е %(value)s" -#: utils/dates.py:28 -msgid "Nov." -msgstr "ное." +#: core/validators.py:333 +#, python-format +msgid "This field must be given if %(field)s is not %(value)s" +msgstr "Ова поле мора да биде зададено ако %(field)s не е %(value)s" -#: utils/dates.py:28 -msgid "Dec." -msgstr "дек." +#: core/validators.py:352 +msgid "Duplicate values are not allowed." +msgstr "Дупликат вредноÑти не Ñе дозволени." -#: utils/translation/trans_real.py:362 -msgid "DATE_FORMAT" -msgstr "N j, Y" +#: core/validators.py:367 +#, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "Оваа вредноÑта мора да биде помеѓу %(lower)s и %(upper)s." -#: utils/translation/trans_real.py:363 -msgid "DATETIME_FORMAT" -msgstr "N j, Y, P" +#: core/validators.py:369 +#, python-format +msgid "This value must be at least %s." +msgstr "Оваа вредноÑта мора да биде најмалку %s." -#: utils/translation/trans_real.py:364 -msgid "TIME_FORMAT" -msgstr "P" +#: core/validators.py:371 +#, python-format +msgid "This value must be no more than %s." +msgstr "Оваа вредноÑÑ‚ не Ñмее да биде поголема од %s." -#: utils/translation/trans_real.py:380 -msgid "YEAR_MONTH_FORMAT" -msgstr "F Y" +#: core/validators.py:407 +#, python-format +msgid "This value must be a power of %s." +msgstr "Оваа вредноÑта мора да биде Ñтепен од %s." -#: utils/translation/trans_real.py:381 -msgid "MONTH_DAY_FORMAT" -msgstr "F j" +#: core/validators.py:418 +msgid "Please enter a valid decimal number." +msgstr "Ве молам внеÑете правилен децимален број." -#: oldforms/__init__.py:387 +#: core/validators.py:422 #, python-format -msgid "Ensure your text is less than %s character." -msgid_plural "Ensure your text is less than %s characters." -msgstr[0] "ОÑигурајте Ñе дека вашиот текÑÑ‚ има помалку од %s знак." -msgstr[1] "ОÑигурајте Ñе дека вашиот текÑÑ‚ има помалку од %s знаци." - -#: oldforms/__init__.py:392 -msgid "Line breaks are not allowed here." -msgstr "Тука не Ñе дозволени прекини на линија." +msgid "Please enter a valid decimal number with at most %s total digit." +msgid_plural "Please enter a valid decimal number with at most %s total digits." +msgstr[0] "Ве молам внеÑете правилен децимален број Ñо најмногу %s цифрa." +msgstr[1] "Ве молам внеÑете правилен децимален број Ñо најмногу %s вкупно цифри." -#: oldforms/__init__.py:493 oldforms/__init__.py:566 oldforms/__init__.py:605 +#: core/validators.py:425 #, python-format -msgid "Select a valid choice; '%(data)s' is not in %(choices)s." -msgstr "Изберете правилно, %(data)s' не е во %(choices)s." +msgid "Please enter a valid decimal number with a whole part of at most %s digit." +msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." +msgstr[0] "" +"Ве молам внеÑете правилен децимален број кој во целиот број има најмногу %s " +"цифра." +msgstr[1] "" +"Ве молам внеÑете правилен децимален број кој во целиот број има најмногу %s " +"цифри." -#: oldforms/__init__.py:572 contrib/admin/filterspecs.py:150 -#: newforms/widgets.py:162 -msgid "Unknown" -msgstr "Ðепознато" +#: core/validators.py:428 +#, python-format +msgid "Please enter a valid decimal number with at most %s decimal place." +msgid_plural "Please enter a valid decimal number with at most %s decimal places." +msgstr[0] "Ве молам внеÑете правилен децимален број кој има најмногу %s децимална цифра." +msgstr[1] "Ве молам внеÑете правилен децимален број кој има најмногу %s децимални цифри." -#: oldforms/__init__.py:572 contrib/admin/filterspecs.py:143 -#: newforms/widgets.py:162 -msgid "Yes" -msgstr "Да" +#: core/validators.py:438 +#, python-format +msgid "Make sure your uploaded file is at least %s bytes big." +msgstr "Потврдете дека качената датотека има најмалку %s бајти." -#: oldforms/__init__.py:572 contrib/admin/filterspecs.py:143 -#: newforms/widgets.py:162 -msgid "No" -msgstr "Ðе" +#: core/validators.py:439 +#, python-format +msgid "Make sure your uploaded file is at most %s bytes big." +msgstr "Потврдете дека качената датотека има најмногу %s бајти." -#: oldforms/__init__.py:667 core/validators.py:173 core/validators.py:442 -msgid "No file was submitted. Check the encoding type on the form." -msgstr "Ðе беше пратена датотека. Проверете го типот на енкодирање на формата." +#: core/validators.py:456 +msgid "The format for this field is wrong." +msgstr "Форматот за ова поле е грешен." -#: oldforms/__init__.py:669 -msgid "The submitted file is empty." -msgstr "Пратената датотека е празна." +#: core/validators.py:471 +msgid "This field is invalid." +msgstr "Ова поле не е правилно." -#: oldforms/__init__.py:725 -msgid "Enter a whole number between -32,768 and 32,767." -msgstr "ВнеÑете цел број помеѓу -32,768 и 32,767." +#: core/validators.py:507 +#, python-format +msgid "Could not retrieve anything from %s." +msgstr "Ðеможев да извадам ништо од %s." -#: oldforms/__init__.py:735 -msgid "Enter a positive number." -msgstr "ВнеÑете позитивен број." +#: core/validators.py:510 +#, python-format +msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgstr "ÐдреÑата %(url)s врати неправилно заглавје Content-Type „%(contenttype)s“." -#: oldforms/__init__.py:745 -msgid "Enter a whole number between 0 and 32,767." -msgstr "ВнеÑете цел број помеѓу 0 и 32,767." +#: core/validators.py:543 +#, python-format +msgid "" +"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " +"\"%(start)s\".)" +msgstr "" +"Ве молам затворете го отворениот %(tag)s таг од линијата %(line)s. (линијата " +"почнува Ñо „%(start)s“.)" -#: contrib/sessions/models.py:51 -msgid "session key" -msgstr "клуч на ÑеÑијата" +#: core/validators.py:547 +#, python-format +msgid "" +"Some text starting on line %(line)s is not allowed in that context. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Ðекој текÑÑ‚ кој почнува на линијата %(line)s не е дозволен во тој контекÑÑ‚. " +"(Линијата започнува Ñо „%(start)s“.)" -#: contrib/sessions/models.py:52 -msgid "session data" -msgstr "податоци од ÑеÑијата" +#: core/validators.py:552 +#, python-format +msgid "" +"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"„%(attr)s“ на линија %(line)s е неправилен атрибут. (линијата започнува Ñо „%" +"(start)s“.)" -#: contrib/sessions/models.py:53 -msgid "expire date" -msgstr "датум на иÑтекување" +#: core/validators.py:557 +#, python-format +msgid "" +"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"„<%(tag)s>“ на линија %(line)s е неправилен таг. (линијата започнува Ñо „%" +"(start)s“.)" -#: contrib/sessions/models.py:57 -msgid "session" -msgstr "ÑеÑија" +#: core/validators.py:561 +#, python-format +msgid "" +"A tag on line %(line)s is missing one or more required attributes. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Ðа таг од линијата %(line)s му недоÑтаÑува еден или повеќе од потребните " +"атрибути (линијата започнува Ñо „%(start)s“)." -#: contrib/sessions/models.py:58 -msgid "sessions" -msgstr "ÑеÑии" +#: core/validators.py:566 +#, python-format +msgid "" +"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Ðтрибутот „%(attr)s“ на линијата %(line)s има неправилна вредноÑÑ‚ (линијата " +"започнува Ñо „%(start)s“)." #: contrib/auth/forms.py:17 contrib/auth/forms.py:138 msgid "The two password fields didn't match." @@ -512,7 +554,9 @@ msgstr "Веќе поÑтои кориÑник Ñо тоа кориÑничко msgid "" "Your Web browser doesn't appear to have cookies enabled. Cookies are " "required for logging in." -msgstr "Ðе изгледа дека вашиот прелиÑтувач има овозможено колачиња. Колачињата Ñе потребни за да Ñе најавите." +msgstr "" +"Ðе изгледа дека вашиот прелиÑтувач има овозможено колачиња. Колачињата Ñе " +"потребни за да Ñе најавите." #: contrib/auth/forms.py:60 contrib/admin/views/decorators.py:10 msgid "" @@ -530,7 +574,9 @@ msgstr "Оваа Ñметка е неактивна." msgid "" "That e-mail address doesn't have an associated user account. Are you sure " "you've registered?" -msgstr "Ðема региÑтрирано кориÑник Ñо оваа адреÑа за е-пошта. Сигурни ли Ñте дека Ñте региÑтрирани?" +msgstr "" +"Ðема региÑтрирано кориÑник Ñо оваа адреÑа за е-пошта. Сигурни ли Ñте дека " +"Ñте региÑтрирани?" #: contrib/auth/forms.py:117 msgid "The two 'new password' fields didn't match." @@ -540,11 +586,7 @@ msgstr "Двете нови лозинки не Ñе Ñовпаѓаат." msgid "Your old password was entered incorrectly. Please enter it again." msgstr "Ðе ја внеÑовте точно вашата Ñтара лозинка. Ве молам внеÑете ја повторно." -#: contrib/auth/views.py:39 -msgid "Logged out" -msgstr "Одјавен" - -#: contrib/auth/models.py:38 contrib/auth/models.py:57 +#: contrib/auth/models.py:38 contrib/auth/models.py:58 msgid "name" msgstr "име" @@ -552,27 +594,27 @@ msgstr "име" msgid "codename" msgstr "кодно име" -#: contrib/auth/models.py:42 +#: contrib/auth/models.py:43 msgid "permission" msgstr "привилегија" -#: contrib/auth/models.py:43 contrib/auth/models.py:58 +#: contrib/auth/models.py:44 contrib/auth/models.py:59 msgid "permissions" msgstr "привилегии" -#: contrib/auth/models.py:60 +#: contrib/auth/models.py:62 msgid "group" msgstr "група" -#: contrib/auth/models.py:61 contrib/auth/models.py:100 +#: contrib/auth/models.py:63 contrib/auth/models.py:103 msgid "groups" msgstr "групи" -#: contrib/auth/models.py:90 +#: contrib/auth/models.py:93 msgid "username" msgstr "кориÑничко име" -#: contrib/auth/models.py:90 +#: contrib/auth/models.py:93 msgid "" "Required. 30 characters or fewer. Alphanumeric characters only (letters, " "digits and underscores)." @@ -580,41 +622,43 @@ msgstr "" "Дозволени Ñе најмногу 30 знаци. Дозволени Ñе Ñамо алфанумерички знаци " "(букви, цифри и долна црта)." -#: contrib/auth/models.py:91 +#: contrib/auth/models.py:94 msgid "first name" msgstr "име" -#: contrib/auth/models.py:92 +#: contrib/auth/models.py:95 msgid "last name" msgstr "презиме" -#: contrib/auth/models.py:93 +#: contrib/auth/models.py:96 msgid "e-mail address" msgstr "е-пошта" -#: contrib/auth/models.py:94 +#: contrib/auth/models.py:97 msgid "password" msgstr "лозинка" -#: contrib/auth/models.py:94 +#: contrib/auth/models.py:97 msgid "" "Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " "password form</a>." -msgstr "КориÑтете '[algo]$[salt]$[hexdigest]' или кориÑтете ја <a href=\"password/\">формата за промена на лозинката</a>." +msgstr "" +"КориÑтете '[algo]$[salt]$[hexdigest]' или кориÑтете ја <a href=\"password/" +"\">формата за промена на лозинката</a>." -#: contrib/auth/models.py:95 +#: contrib/auth/models.py:98 msgid "staff status" msgstr "ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° админиÑтраторите" -#: contrib/auth/models.py:95 +#: contrib/auth/models.py:98 msgid "Designates whether the user can log into this admin site." msgstr "Означува дали кориÑникот може да Ñе логира во Ñајтот за админиÑтрација." -#: contrib/auth/models.py:96 +#: contrib/auth/models.py:99 msgid "active" msgstr "активен" -#: contrib/auth/models.py:96 +#: contrib/auth/models.py:99 msgid "" "Designates whether this user can log into the Django admin. Unselect this " "instead of deleting accounts." @@ -622,11 +666,11 @@ msgstr "" "Означува дали кориÑникот може да Ñе логира. Одштиклирајте го ова намеÑто да " "бришете кориÑници." -#: contrib/auth/models.py:97 +#: contrib/auth/models.py:100 msgid "superuser status" msgstr "ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° ÑуперкориÑник" -#: contrib/auth/models.py:97 +#: contrib/auth/models.py:100 msgid "" "Designates that this user has all permissions without explicitly assigning " "them." @@ -634,15 +678,15 @@ msgstr "" "Означува дека овој кориÑник ги има Ñите привилегии без екÑплицитно да Ñе " "доделуваат Ñите." -#: contrib/auth/models.py:98 +#: contrib/auth/models.py:101 msgid "last login" msgstr "поÑледна најава" -#: contrib/auth/models.py:99 +#: contrib/auth/models.py:102 msgid "date joined" msgstr "датум на зачленување" -#: contrib/auth/models.py:101 +#: contrib/auth/models.py:104 msgid "" "In addition to the permissions manually assigned, this user will also get " "all permissions granted to each group he/she is in." @@ -650,86 +694,1019 @@ msgstr "" "Како дополнување на рачно доделени привилегии, овој кориÑник ќе ги добие " "автоматÑки и Ñите привилегии за Ñекоја група во која тој/таа членува." -#: contrib/auth/models.py:102 +#: contrib/auth/models.py:105 msgid "user permissions" msgstr "кориÑнички привилегии" -#: contrib/auth/models.py:105 +#: contrib/auth/models.py:109 msgid "user" msgstr "кориÑник" -#: contrib/auth/models.py:106 +#: contrib/auth/models.py:110 msgid "users" msgstr "кориÑници" -#: contrib/auth/models.py:111 +#: contrib/auth/models.py:116 msgid "Personal info" msgstr "Лични информации" -#: contrib/auth/models.py:112 +#: contrib/auth/models.py:117 msgid "Permissions" msgstr "Привилегии" -#: contrib/auth/models.py:113 +#: contrib/auth/models.py:118 msgid "Important dates" msgstr "Важни датуми" -#: contrib/auth/models.py:114 +#: contrib/auth/models.py:119 msgid "Groups" msgstr "Групи" -#: contrib/auth/models.py:258 +#: contrib/auth/models.py:263 msgid "message" msgstr "порака" -#: contrib/contenttypes/models.py:26 -msgid "python model class name" -msgstr "има на клаÑата на питон моделите" +#: contrib/auth/views.py:39 +msgid "Logged out" +msgstr "Одјавен" -#: contrib/contenttypes/models.py:29 -msgid "content type" -msgstr "content type" +#: contrib/admin/models.py:16 +msgid "action time" +msgstr "време на акција" -#: contrib/contenttypes/models.py:30 -msgid "content types" -msgstr "content types" +#: contrib/admin/models.py:19 +msgid "object id" +msgstr "идентификационен број на објект" -#: contrib/redirects/models.py:7 -msgid "redirect from" -msgstr "пренаÑочено од" +#: contrib/admin/models.py:20 +msgid "object repr" +msgstr "object repr" -#: contrib/redirects/models.py:8 +#: contrib/admin/models.py:21 +msgid "action flag" +msgstr "знакче за акција" + +#: contrib/admin/models.py:22 +msgid "change message" +msgstr "измени ја пораката" + +#: contrib/admin/models.py:25 +msgid "log entry" +msgstr "Ñтавка во запиÑникот" + +#: contrib/admin/models.py:26 +msgid "log entries" +msgstr "Ñтавки во запиÑникот" + +#: contrib/admin/filterspecs.py:40 +#, python-format msgid "" -"This should be an absolute path, excluding the domain name. Example: '/" -"events/search/'." +"<h3>By %s:</h3>\n" +"<ul>\n" msgstr "" -"Ова треба да биде апÑолутна патека без името на домејнот. Ðа пр. „/nastani/" -"prebaraj/“." +"<h3>Од %s:</h3>\n" +"<ul>\n" -#: contrib/redirects/models.py:9 -msgid "redirect to" -msgstr "пренаÑочи кон" +#: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 +#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 +msgid "All" +msgstr "Сите" -#: contrib/redirects/models.py:10 +#: contrib/admin/filterspecs.py:109 +msgid "Any date" +msgstr "Било кој датум" + +#: contrib/admin/filterspecs.py:110 +msgid "Today" +msgstr "ДенеÑка" + +#: contrib/admin/filterspecs.py:113 +msgid "Past 7 days" +msgstr "ПоÑледните 7 дена" + +#: contrib/admin/filterspecs.py:115 +msgid "This month" +msgstr "Овој меÑец" + +#: contrib/admin/filterspecs.py:117 +msgid "This year" +msgstr "Оваа година" + +#: contrib/admin/filterspecs.py:143 oldforms/__init__.py:577 +#: newforms/widgets.py:174 +msgid "Yes" +msgstr "Да" + +#: contrib/admin/filterspecs.py:143 oldforms/__init__.py:577 +#: newforms/widgets.py:174 +msgid "No" +msgstr "Ðе" + +#: contrib/admin/filterspecs.py:150 oldforms/__init__.py:577 +#: newforms/widgets.py:174 +msgid "Unknown" +msgstr "Ðепознато" + +#: contrib/admin/views/decorators.py:24 +#: contrib/admin/templates/admin/login.html:25 +msgid "Log in" +msgstr "Ðајава" + +#: contrib/admin/views/decorators.py:62 msgid "" -"This can be either an absolute path (as above) or a full URL starting with " -"'http://'." +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." msgstr "" -"Ова може да биде или апÑолутна патека (како погоре) или цела адреÑа " -"почувајќи Ñо „http://“." +"Ве молам најавете Ñе повторно бидејќи вашата ÑеÑија е иÑтечена. Ðе Ñе " +"грижете. Вашите внеÑови беа зачувани." -#: contrib/redirects/models.py:13 -msgid "redirect" -msgstr "пренаÑочување" +#: contrib/admin/views/decorators.py:69 +msgid "" +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." +msgstr "" +"Изгледа дека вашиот прелиÑтувач не е конфигуриран да прифаќа колачиња. Ве " +"молам овозможете ги колачињата, превчитајте ја Ñтрата и пробајте повторно." -#: contrib/redirects/models.py:14 -msgid "redirects" -msgstr "пренаÑочувања" +#: contrib/admin/views/decorators.py:83 +msgid "Usernames cannot contain the '@' character." +msgstr "КориÑничките имиња неможе да го Ñодржат „@“ знакот." -#: contrib/flatpages/models.py:7 contrib/admin/views/doc.py:315 +#: contrib/admin/views/decorators.py:85 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." +msgstr "Вашата е-пошта не е вашето кориÑничко име. Пробајте Ñо „%s“." + +#: contrib/admin/views/main.py:223 +msgid "Site administration" +msgstr "ÐдминиÑтрација на Ñајт" + +#: contrib/admin/views/main.py:257 contrib/admin/views/auth.py:19 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "%(name)s \"%(obj)s\" беше уÑпешно додаден." + +#: contrib/admin/views/main.py:261 contrib/admin/views/main.py:347 +#: contrib/admin/views/auth.py:24 +msgid "You may edit it again below." +msgstr "Подолу можете повторно да го уредите." + +#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 +#, python-format +msgid "You may add another %s below." +msgstr "Подолу можете да додате уште еден %s." + +#: contrib/admin/views/main.py:289 +#, python-format +msgid "Add %s" +msgstr "Додади %s" + +#: contrib/admin/views/main.py:335 +#, python-format +msgid "Added %s." +msgstr "Додадено %s." + +#: contrib/admin/views/main.py:337 +#, python-format +msgid "Changed %s." +msgstr "Изменета %s." + +#: contrib/admin/views/main.py:339 +#, python-format +msgid "Deleted %s." +msgstr "Избришана %s." + +#: contrib/admin/views/main.py:342 +msgid "No fields changed." +msgstr "Ðе беше изменето ниедно поле." + +#: contrib/admin/views/main.py:345 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "%(name)s \"%(obj)s\" беше уÑпешно изменета." + +#: contrib/admin/views/main.py:353 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "" +"%(name)s \"%(obj)s\" беше уÑпешно додадена.Подолу можете повторно да ја " +"уредите." + +#: contrib/admin/views/main.py:391 +#, python-format +msgid "Change %s" +msgstr "Измени %s" + +#: contrib/admin/views/main.py:476 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +msgstr "Еден или повеќе %(fieldname)s во %(name)s: %(obj)s" + +#: contrib/admin/views/main.py:481 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" +msgstr "Еден или повеќе %(fieldname)s во %(name)s:" + +#: contrib/admin/views/main.py:514 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "%(name)s \"%(obj)s\" беше избришана уÑпешно." + +#: contrib/admin/views/main.py:517 +msgid "Are you sure?" +msgstr "Сигурни Ñте?" + +#: contrib/admin/views/main.py:539 +#, python-format +msgid "Change history: %s" +msgstr "ИÑторија на измени: %s" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s" +msgstr "Изберет %s" + +#: contrib/admin/views/main.py:573 +#, python-format +msgid "Select %s to change" +msgstr "Изберете %s за измена" + +#: contrib/admin/views/main.py:768 +msgid "Database error" +msgstr "Грешка во базата Ñо податоци" + +#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 +msgid "tag:" +msgstr "таг:" + +#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 +msgid "filter:" +msgstr "филтер:" + +#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 +msgid "view:" +msgstr "поглед:" + +#: contrib/admin/views/doc.py:164 +#, python-format +msgid "App %r not found" +msgstr "Ðе е најдена апликацијата %r" + +#: contrib/admin/views/doc.py:171 +#, python-format +msgid "Model %(name)r not found in app %(label)r" +msgstr "Моделот %(name)r не е најден во апликацијата %(label)r" + +#: contrib/admin/views/doc.py:183 +#, python-format +msgid "the related `%(label)s.%(type)s` object" +msgstr "поврзаниот`%(label)s.%(type)s` објект" + +#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 +msgid "model:" +msgstr "модел:" + +#: contrib/admin/views/doc.py:214 +#, python-format +msgid "related `%(label)s.%(name)s` objects" +msgstr "поврзани `%(label)s.%(name)s` објекти" + +#: contrib/admin/views/doc.py:219 +#, python-format +msgid "all %s" +msgstr "Ñите %s" + +#: contrib/admin/views/doc.py:224 +#, python-format +msgid "number of %s" +msgstr "број на %s" + +#: contrib/admin/views/doc.py:229 +#, python-format +msgid "Fields on %s objects" +msgstr "Полиња на %s објекти" + +#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 +msgid "Integer" +msgstr "Цел број" + +#: contrib/admin/views/doc.py:292 +msgid "Boolean (Either True or False)" +msgstr "Логичка (или точно или неточно)" + +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 +#, python-format +msgid "String (up to %(maxlength)s)" +msgstr "Збор (до %(maxlength)s)" + +#: contrib/admin/views/doc.py:294 +msgid "Comma-separated integers" +msgstr "Целобројни вредноÑти одделени Ñо запирка" + +#: contrib/admin/views/doc.py:295 +msgid "Date (without time)" +msgstr "Датум (без чаÑ)" + +#: contrib/admin/views/doc.py:296 +msgid "Date (with time)" +msgstr "Датум (Ñо чаÑ)" + +#: contrib/admin/views/doc.py:297 +msgid "E-mail address" +msgstr "ÐдреÑа на е-пошта" + +#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 +msgid "File path" +msgstr "Патека на датотека" + +#: contrib/admin/views/doc.py:300 +msgid "Decimal number" +msgstr "Децимален број" + +#: contrib/admin/views/doc.py:304 contrib/comments/models.py:85 +msgid "IP address" +msgstr "ИП адреÑа" + +#: contrib/admin/views/doc.py:306 +msgid "Boolean (Either True, False or None)" +msgstr "Логичка (точно,неточно или празно)" + +#: contrib/admin/views/doc.py:307 +msgid "Relation to parent model" +msgstr "Релација Ñо родителÑкиот модел" + +#: contrib/admin/views/doc.py:308 +msgid "Phone number" +msgstr "ТелефонÑки број" + +#: contrib/admin/views/doc.py:313 +msgid "Text" +msgstr "ТекÑÑ‚" + +#: contrib/admin/views/doc.py:314 +msgid "Time" +msgstr "ЧаÑ" + +#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 msgid "URL" msgstr "URL" +#: contrib/admin/views/doc.py:316 +msgid "U.S. state (two uppercase letters)" +msgstr "Држава во СÐД (две големи букви)" + +#: contrib/admin/views/doc.py:317 +msgid "XML text" +msgstr "XML текÑÑ‚" + +#: contrib/admin/views/doc.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "%s не изгледа дека е url објект" + +#: contrib/admin/views/auth.py:30 +msgid "Add user" +msgstr "Додади кориÑник" + +#: contrib/admin/views/auth.py:57 +msgid "Password changed successfully." +msgstr "УÑпешна промена на лозинката." + +#: contrib/admin/views/auth.py:64 +#, python-format +msgid "Change password: %s" +msgstr "Промени лозинка: %s" + +#: contrib/admin/templatetags/admin_list.py:247 +msgid "All dates" +msgstr "Сите датуми" + +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" +msgstr "Прикажи ги Ñите" + +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/registration/password_change_done.html:3 +msgid "Documentation" +msgstr "Документација" + +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin/auth/user/change_password.html:15 +#: contrib/admin/templates/admin/auth/user/change_password.html:46 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/registration/password_change_done.html:3 +msgid "Change password" +msgstr "Промени лозинка" + +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/index.html:4 +#: contrib/admin/templates/admin_doc/model_detail.html:3 +#: contrib/admin/templates/admin_doc/missing_docutils.html:4 +#: contrib/admin/templates/admin_doc/template_detail.html:4 +#: contrib/admin/templates/admin_doc/view_index.html:5 +#: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/view_detail.html:4 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/comments/templates/comments/form.html:6 +msgid "Log out" +msgstr "Одјава" + +#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/change_form.html:13 +#: contrib/admin/templates/admin/change_list.html:6 +#: contrib/admin/templates/admin/object_history.html:5 +#: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/base.html:30 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/logged_out.html:4 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_change_done.html:4 +msgid "Home" +msgstr "Дома" + +#: contrib/admin/templates/admin/delete_confirmation.html:9 +#: contrib/admin/templates/admin/submit_line.html:3 +msgid "Delete" +msgstr "Избриши" + +#: contrib/admin/templates/admin/delete_confirmation.html:14 +#, python-format +msgid "" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" +msgstr "" +"Бришење на %(object_name)s '%(escaped_object)s' ќе резултира Ñо бришење на " +"поврзаните објекти, но Ñо вашата Ñметка немате доволно привилегии да ги " +"бришете Ñледните типови на објекти:" + +#: contrib/admin/templates/admin/delete_confirmation.html:21 +#, python-format +msgid "" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" +msgstr "" +"Сигурне Ñте дека Ñакате да ги бришете %(object_name)s „%(escaped_object)s“? " +"Сите овие Ñтавки ќе бидат избришани:" + +#: contrib/admin/templates/admin/delete_confirmation.html:26 +msgid "Yes, I'm sure" +msgstr "Да, Ñигурен Ñум" + +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 +msgid "Page not found" +msgstr "Страницата не е најдена" + +#: contrib/admin/templates/admin/404.html:10 +msgid "We're sorry, but the requested page could not be found." +msgstr "Се извинуваме, но неможе да ја најдеме Ñтраницата која ја баравте." + +#: contrib/admin/templates/admin/change_form.html:15 +#: contrib/admin/templates/admin/index.html:28 +msgid "Add" +msgstr "Додади" + +#: contrib/admin/templates/admin/change_form.html:21 +#: contrib/admin/templates/admin/object_history.html:5 +msgid "History" +msgstr "ИÑторија" + +#: contrib/admin/templates/admin/change_form.html:22 +msgid "View on site" +msgstr "Погледни на Ñајтот" + +#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/auth/user/change_password.html:24 +msgid "Please correct the error below." +msgid_plural "Please correct the errors below." +msgstr[0] "Ве молам поправете ја грешката подолу." +msgstr[1] "Ве молам поправете ги грешките подолу." + +#: contrib/admin/templates/admin/change_form.html:50 +msgid "Ordering" +msgstr "Подредување" + +#: contrib/admin/templates/admin/change_form.html:53 +msgid "Order:" +msgstr "Подреди:" + +#: contrib/admin/templates/admin/filter.html:2 +#, python-format +msgid " By %(filter_title)s " +msgstr " Од %(filter_title)s " + +#: contrib/admin/templates/admin/submit_line.html:4 +msgid "Save as new" +msgstr "Сними како нова" + +#: contrib/admin/templates/admin/submit_line.html:5 +msgid "Save and add another" +msgstr "Сними и додади уште" + +#: contrib/admin/templates/admin/submit_line.html:6 +msgid "Save and continue editing" +msgstr "Сними и продолжи Ñо уредување" + +#: contrib/admin/templates/admin/submit_line.html:7 +msgid "Save" +msgstr "Сними" + +#: contrib/admin/templates/admin/change_list.html:12 +#, python-format +msgid "Add %(name)s" +msgstr "Додади %(name)s" + +#: contrib/admin/templates/admin/index.html:17 +#, python-format +msgid "Models available in the %(name)s application." +msgstr "ДоÑтапни модели во апликацијата %(name)s." + +#: contrib/admin/templates/admin/index.html:18 +#, python-format +msgid "%(name)s" +msgstr "%(name)s" + +#: contrib/admin/templates/admin/index.html:34 +msgid "Change" +msgstr "Измени" + +#: contrib/admin/templates/admin/index.html:44 +msgid "You don't have permission to edit anything." +msgstr "Ðемате дозвола ништо да уредува." + +#: contrib/admin/templates/admin/index.html:52 +msgid "Recent Actions" +msgstr "ПоÑледни акции" + +#: contrib/admin/templates/admin/index.html:53 +msgid "My Actions" +msgstr "Мои акции" + +#: contrib/admin/templates/admin/index.html:57 +msgid "None available" +msgstr "Ðишто не е доÑтапно" + +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" +msgstr "Ðанго админиÑтрација на Ñајт" + +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" +msgstr "Ðанго админиÑтрација" + +#: contrib/admin/templates/admin/object_history.html:18 +msgid "Date/time" +msgstr "Датум/чаÑ" + +#: contrib/admin/templates/admin/object_history.html:19 +msgid "User" +msgstr "КориÑник" + +#: contrib/admin/templates/admin/object_history.html:20 +msgid "Action" +msgstr "Ðкција" + +#: contrib/admin/templates/admin/object_history.html:26 +msgid "DATE_WITH_TIME_FULL" +msgstr "j M Y, H:i" + +#: contrib/admin/templates/admin/object_history.html:36 +msgid "" +"This object doesn't have a change history. It probably wasn't added via this " +"admin site." +msgstr "" +"Овој објект нема иÑторија на измени. Ðајверојатно не бил додаден Ñо админ " +"Ñајтот." + +#: contrib/admin/templates/admin/500.html:4 +msgid "Server error" +msgstr "Грешка Ñо Ñерверот" + +#: contrib/admin/templates/admin/500.html:6 +msgid "Server error (500)" +msgstr "Грешка Ñо Ñерверот (500)" + +#: contrib/admin/templates/admin/500.html:9 +msgid "Server Error <em>(500)</em>" +msgstr "Грешка Ñо Ñерверот <em>(500)</em>" + +#: contrib/admin/templates/admin/500.html:10 +msgid "" +"There's been an error. It's been reported to the site administrators via e-" +"mail and should be fixed shortly. Thanks for your patience." +msgstr "" +"Имаше грешка. ИÑтата беше пријавена на админиÑтраторите и ќе биде поправена " +"во брзо време. Ви благодариме за вашето трпение." + +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "" +"Ðешто не е во ред Ñо инÑталацијата на базата на податоци. Потврдете дека " +"Ñоодветни табели во базата Ñе направени и потврдете дека базата може да биде " +"прочитана од Ñоодветниот кориÑник." + +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" +msgstr "Оди" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "1 result" +msgid_plural "%(counter)s results" +msgstr[0] "1 резултат" +msgstr[1] "%(counter)s резултати" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "%(full_result_count)s total" +msgstr "вкупно %(full_result_count)s" + +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "Филтер" + +#: contrib/admin/templates/admin/login.html:17 +#: contrib/comments/templates/comments/form.html:6 +#: contrib/comments/templates/comments/form.html:8 +msgid "Username:" +msgstr "КориÑник:" + +#: contrib/admin/templates/admin/login.html:20 +#: contrib/comments/templates/comments/form.html:8 +msgid "Password:" +msgstr "Лозинка:" + +#: contrib/admin/templates/admin/base.html:25 +msgid "Welcome," +msgstr "Добредојдовте," + +#: contrib/admin/templates/admin/auth/user/add_form.html:6 +msgid "" +"First, enter a username and password. Then, you'll be able to edit more user " +"options." +msgstr "" +"Прво, внеÑете кориÑничко име и лозинка. Потоа ќе можете да уредувате повеќе " +"кориÑнички опции." + +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" +msgstr "КориÑник" + +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +#: contrib/admin/templates/admin/auth/user/change_password.html:34 +msgid "Password" +msgstr "Лозинка" + +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +#: contrib/admin/templates/admin/auth/user/change_password.html:39 +msgid "Password (again)" +msgstr "Лозинка (повторно)" + +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +#: contrib/admin/templates/admin/auth/user/change_password.html:40 +msgid "Enter the same password as above, for verification." +msgstr "Заради верификација внеÑете ја иÑтата лозинка како и горе." + +#: contrib/admin/templates/admin/auth/user/change_password.html:28 +#, python-format +msgid "Enter a new password for the user <strong>%(username)s</strong>." +msgstr "ВнеÑете нова лозинка за кориÑникот <strong>%(username)s</strong>." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Bookmarklets" +msgstr "Обележувачи" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:5 +msgid "Documentation bookmarklets" +msgstr "Обележувачи на документација" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:9 +msgid "" +"\n" +"<p class=\"help\">To install bookmarklets, drag the link to your bookmarks\n" +"toolbar, or right-click the link and add it to your bookmarks. Now you can\n" +"select the bookmarklet from any page in the site. Note that some of these\n" +"bookmarklets require you to be viewing the site from a computer designated\n" +"as \"internal\" (talk to your system administrator if you aren't sure if\n" +"your computer is \"internal\").</p>\n" +msgstr "" +"\n" +"<p class=\"help\">За да инÑталирате обележувачи, влечете ја врÑката до " +"вашата\n" +"лента Ñо алатки, или кликнете Ñо деÑното копче и додадете го во вашите \n" +"обележувачи. Сега може да го изберете обележувачот од било која Ñтраница " +"на \n" +"Ñајтот. Имајте на ум дека за некои од овие обележувачи е потребно да го " +"гледате \n" +"Ñајтот од компјутер кој е означен како „внатрешен“ (разговарајте Ñо вашиот \n" +"админиÑтратор ако не Ñте Ñигурни).</p>\n" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:19 +msgid "Documentation for this page" +msgstr "Документација за оваа Ñтраница" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:20 +msgid "" +"Jumps you from any page to the documentation for the view that generates " +"that page." +msgstr "" +"Ве ноÑи од било која Ñтраница од документацијата до погледот кој ја генерира " +"таа Ñтраница." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:22 +msgid "Show object ID" +msgstr "Прикажи идентификационен број на објектот" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:23 +msgid "" +"Shows the content-type and unique ID for pages that represent a single " +"object." +msgstr "" +"Го прикажува типот на Ñодржината и уникатниот идентификационен број за " +"Ñтраници кои претÑтавуваат единечен објект." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:25 +msgid "Edit this object (current window)" +msgstr "Уреди го овој објект (во овој прозорец)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:26 +msgid "Jumps to the admin page for pages that represent a single object." +msgstr "Скокнува до админ Ñтраницата за Ñтраници кои претÑтавуваат единечен објект." + +#: contrib/admin/templates/admin_doc/bookmarklets.html:28 +msgid "Edit this object (new window)" +msgstr "Уреди го овој објект (во нов прозорец)" + +#: contrib/admin/templates/admin_doc/bookmarklets.html:29 +msgid "As above, but opens the admin page in a new window." +msgstr "Како погоре, но ја отвара админ Ñтраницата во нов прозорец." + +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" +msgstr "Датум:" + +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" +msgstr "Време:" + +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" +msgstr "Моментално:" + +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" +msgstr "Измена:" + +#: contrib/admin/templates/registration/password_reset_form.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:6 +#: contrib/admin/templates/registration/password_reset_form.html:10 +#: contrib/admin/templates/registration/password_reset_done.html:4 +msgid "Password reset" +msgstr "РеÑетирање на лозинка" + +#: contrib/admin/templates/registration/password_reset_form.html:12 +msgid "" +"Forgotten your password? Enter your e-mail address below, and we'll reset " +"your password and e-mail the new one to you." +msgstr "" +"Сте ја заборавиле вашата лозинка? ВнеÑете ја вашата е-пошта подолу, ќе ја " +"реÑетираме вашата лозинка и новата ќе ви ја пратиме по е-пошта." + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "E-mail address:" +msgstr "Е-пошта:" + +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "Reset my password" +msgstr "РеÑетирај ја мојата лозинка" + +#: contrib/admin/templates/registration/password_reset_email.html:2 +msgid "You're receiving this e-mail because you requested a password reset" +msgstr "Ја добивата оваа порака бидејќи побаравте да Ñе реÑетира вашата лозинка" + +#: contrib/admin/templates/registration/password_reset_email.html:3 +#, python-format +msgid "for your user account at %(site_name)s" +msgstr "за кориÑничката Ñметка на %(site_name)s" + +#: contrib/admin/templates/registration/password_reset_email.html:5 +#, python-format +msgid "Your new password is: %(new_password)s" +msgstr "Вашата нова лозинка е: %(new_password)s" + +#: contrib/admin/templates/registration/password_reset_email.html:7 +msgid "Feel free to change this password by going to this page:" +msgstr "ЧуÑтвувајте Ñе Ñлободно да ја промените оваа лозинка преку оваа Ñтраница:" + +#: contrib/admin/templates/registration/password_reset_email.html:11 +msgid "Your username, in case you've forgotten:" +msgstr "Вашето кориÑничко име, во Ñлучај да Ñте го заборавиле:" + +#: contrib/admin/templates/registration/password_reset_email.html:13 +msgid "Thanks for using our site!" +msgstr "Ви благодариме што го кориÑтите овој Ñајт!" + +#: contrib/admin/templates/registration/password_reset_email.html:15 +#, python-format +msgid "The %(site_name)s team" +msgstr "Тимот на %(site_name)s" + +#: contrib/admin/templates/registration/logged_out.html:8 +msgid "Thanks for spending some quality time with the Web site today." +msgstr "Ви благодариме што денеÑка поминавте квалитетно време Ñо интернет Ñтраницава." + +#: contrib/admin/templates/registration/logged_out.html:10 +msgid "Log in again" +msgstr "Логирајте Ñе повторно" + +#: contrib/admin/templates/registration/password_reset_done.html:6 +#: contrib/admin/templates/registration/password_reset_done.html:10 +msgid "Password reset successful" +msgstr "УÑпешно е реÑетирањето на лозинката" + +#: contrib/admin/templates/registration/password_reset_done.html:12 +msgid "" +"We've e-mailed a new password to the e-mail address you submitted. You " +"should be receiving it shortly." +msgstr "" +"Ви пративме нова лозинка на адреÑата која ја внеÑовте.Треба да ја примите за " +"кратко време." + +#: contrib/admin/templates/registration/password_change_form.html:4 +#: contrib/admin/templates/registration/password_change_form.html:6 +#: contrib/admin/templates/registration/password_change_form.html:10 +#: contrib/admin/templates/registration/password_change_done.html:4 +msgid "Password change" +msgstr "Измена на лозинка" + +#: contrib/admin/templates/registration/password_change_form.html:12 +msgid "" +"Please enter your old password, for security's sake, and then enter your new " +"password twice so we can verify you typed it in correctly." +msgstr "" +"Заради ÑигурноÑÑ‚ ве молам внеÑете ја вашата Ñтара лозинка и потоа внеÑете ја " +"новата двапати за да може да Ñе потврди дека правилно Ñте ја иÑкуцале." + +#: contrib/admin/templates/registration/password_change_form.html:17 +msgid "Old password:" +msgstr "Стара лозинка:" + +#: contrib/admin/templates/registration/password_change_form.html:19 +msgid "New password:" +msgstr "Ðова лозинка:" + +#: contrib/admin/templates/registration/password_change_form.html:21 +msgid "Confirm password:" +msgstr "Потврди лозинка:" + +#: contrib/admin/templates/registration/password_change_form.html:23 +msgid "Change my password" +msgstr "Промени ја мојата лозинка" + +#: contrib/admin/templates/registration/password_change_done.html:6 +#: contrib/admin/templates/registration/password_change_done.html:10 +msgid "Password change successful" +msgstr "УÑпешна промена на лозинката" + +#: contrib/admin/templates/registration/password_change_done.html:12 +msgid "Your password was changed." +msgstr "Вашата лозинка беше Ñменета." + +#: contrib/sites/models.py:10 +msgid "domain name" +msgstr "домејн" + +#: contrib/sites/models.py:11 +msgid "display name" +msgstr "име кое Ñе прикажува" + +#: contrib/sites/models.py:15 +msgid "site" +msgstr "Ñајт" + +#: contrib/sites/models.py:16 +msgid "sites" +msgstr "Ñајтови" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "th" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "st" +msgstr "st" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "nd" +msgstr "nd" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "rd" + +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "%(value).1f милион" +msgstr[1] "%(value).1f милион" + +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "%(value).1f милијарда" +msgstr[1] "%(value).1f милијарда" + +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "%(value).1f трилион" +msgstr[1] "%(value).1f трилион" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "еден" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "два" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "три" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "four" +msgstr "четири" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "пет" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "шеÑÑ‚" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "Ñедум" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "оÑум" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "девет" + #: contrib/flatpages/models.py:8 msgid "Example: '/about/contact/'. Make sure to have leading and trailing slashes." msgstr "" @@ -778,6 +1755,38 @@ msgstr "Ñтатична Ñтраница" msgid "flat pages" msgstr "Ñтатични Ñтраници" +#: contrib/redirects/models.py:7 +msgid "redirect from" +msgstr "пренаÑочено од" + +#: contrib/redirects/models.py:8 +msgid "" +"This should be an absolute path, excluding the domain name. Example: '/" +"events/search/'." +msgstr "" +"Ова треба да биде апÑолутна патека без името на домејнот. Ðа пр. „/nastani/" +"prebaraj/“." + +#: contrib/redirects/models.py:9 +msgid "redirect to" +msgstr "пренаÑочи кон" + +#: contrib/redirects/models.py:10 +msgid "" +"This can be either an absolute path (as above) or a full URL starting with " +"'http://'." +msgstr "" +"Ова може да биде или апÑолутна патека (како погоре) или цела адреÑа " +"почувајќи Ñо „http://“." + +#: contrib/redirects/models.py:13 +msgid "redirect" +msgstr "пренаÑочување" + +#: contrib/redirects/models.py:14 +msgid "redirects" +msgstr "пренаÑочувања" + #: contrib/comments/models.py:67 contrib/comments/models.py:166 msgid "object ID" msgstr "object ID" @@ -835,10 +1844,6 @@ msgstr "датум/време пријавен" msgid "is public" msgstr "е јавен" -#: contrib/comments/models.py:85 contrib/admin/views/doc.py:304 -msgid "IP address" -msgstr "ИП адреÑа" - #: contrib/comments/models.py:86 msgid "is removed" msgstr "е отÑтранет" @@ -960,75 +1965,6 @@ msgstr "бришења од модератор" msgid "Moderator deletion by %r" msgstr "Бришење од модератор од %r" -#: contrib/comments/templates/comments/form.html:6 -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/login.html:17 -msgid "Username:" -msgstr "КориÑник:" - -#: contrib/comments/templates/comments/form.html:6 -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 -#: contrib/admin/templates/admin_doc/view_index.html:5 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 -#: contrib/admin/templates/admin_doc/model_detail.html:3 -#: contrib/admin/templates/admin_doc/model_index.html:5 -#: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/auth/user/change_password.html:9 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Log out" -msgstr "Одјава" - -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/login.html:20 -msgid "Password:" -msgstr "Лозинка:" - -#: contrib/comments/templates/comments/form.html:8 -msgid "Forgotten your password?" -msgstr "Ја заборавите вашата лозинка?" - -#: contrib/comments/templates/comments/form.html:12 -msgid "Ratings" -msgstr "ПопуларноÑÑ‚" - -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Required" -msgstr "Потребно" - -#: contrib/comments/templates/comments/form.html:12 -#: contrib/comments/templates/comments/form.html:23 -msgid "Optional" -msgstr "По желба" - -#: contrib/comments/templates/comments/form.html:23 -msgid "Post a photo" -msgstr "Објави фотографија" - -#: contrib/comments/templates/comments/form.html:28 -#: contrib/comments/templates/comments/freeform.html:5 -msgid "Comment:" -msgstr "Коментар:" - -#: contrib/comments/templates/comments/form.html:35 -#: contrib/comments/templates/comments/freeform.html:10 -msgid "Preview comment" -msgstr "Прегледај" - -#: contrib/comments/templates/comments/freeform.html:4 -msgid "Your name:" -msgstr "Вашето име:" - #: contrib/comments/views/karma.py:19 msgid "Anonymous users cannot vote" msgstr "Ðнонимните кориÑници неможе да глаÑаат" @@ -1101,1220 +2037,719 @@ msgstr "Ðекој ја променил формата за коментари msgid "" "The comment form had an invalid 'target' parameter -- the object ID was " "invalid" -msgstr "Формата за коментар имаше неправилен „target“ параметар - идентификациониот број на објектот беше неправилен" +msgstr "" +"Формата за коментар имаше неправилен „target“ параметар - идентификациониот " +"број на објектот беше неправилен" #: contrib/comments/views/comments.py:257 #: contrib/comments/views/comments.py:321 msgid "The comment form didn't provide either 'preview' or 'post'" msgstr "Формата за коментар не овозможи ниту „преглед“ ниту „праќање“" -#: contrib/sites/models.py:10 -msgid "domain name" -msgstr "домејн" +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "Ја заборавите вашата лозинка?" -#: contrib/sites/models.py:11 -msgid "display name" -msgstr "име кое Ñе прикажува" +#: contrib/comments/templates/comments/form.html:12 +msgid "Ratings" +msgstr "ПопуларноÑÑ‚" -#: contrib/sites/models.py:15 -msgid "site" -msgstr "Ñајт" +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Required" +msgstr "Потребно" -#: contrib/sites/models.py:16 -msgid "sites" -msgstr "Ñајтови" +#: contrib/comments/templates/comments/form.html:12 +#: contrib/comments/templates/comments/form.html:23 +msgid "Optional" +msgstr "По желба" -#: contrib/admin/filterspecs.py:40 -#, python-format -msgid "" -"<h3>By %s:</h3>\n" -"<ul>\n" -msgstr "" -"<h3>Од %s:</h3>\n" -"<ul>\n" +#: contrib/comments/templates/comments/form.html:23 +msgid "Post a photo" +msgstr "Објави фотографија" -#: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 -#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 -msgid "All" -msgstr "Сите" +#: contrib/comments/templates/comments/form.html:28 +#: contrib/comments/templates/comments/freeform.html:5 +msgid "Comment:" +msgstr "Коментар:" -#: contrib/admin/filterspecs.py:109 -msgid "Any date" -msgstr "Било кој датум" +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 +msgid "Preview comment" +msgstr "Прегледај" -#: contrib/admin/filterspecs.py:110 -msgid "Today" -msgstr "ДенеÑка" +#: contrib/comments/templates/comments/freeform.html:4 +msgid "Your name:" +msgstr "Вашето име:" -#: contrib/admin/filterspecs.py:113 -msgid "Past 7 days" -msgstr "ПоÑледните 7 дена" +#: contrib/localflavor/br/forms.py:18 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "ВнеÑете правилен поштенÑки број во форматот XXXXX-XXX." -#: contrib/admin/filterspecs.py:115 -msgid "This month" -msgstr "Овој меÑец" +#: contrib/localflavor/br/forms.py:30 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "ТелефонÑките броеви мора да бидат во XX-XXXX-XXXX форматот." -#: contrib/admin/filterspecs.py:117 -msgid "This year" -msgstr "Оваа година" +#: contrib/localflavor/de/forms.py:16 contrib/localflavor/fi/forms.py:14 +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/it/forms.py:14 +msgid "Enter a zip code in the format XXXXX." +msgstr "ВнеÑете правилен поштенÑки број во формат XXXXXX." -#: contrib/admin/models.py:16 -msgid "action time" -msgstr "време на акција" +#: contrib/localflavor/de/forms.py:60 +msgid "" +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." +msgstr "ВнеÑете правилен број на лична карта во Германија во XXXXXXXXXXX-XXXXXXX-XXXXXXX-X форматот." -#: contrib/admin/models.py:19 -msgid "object id" -msgstr "идентификационен број на објект" +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" +msgstr "Баден-Вуертемберг" -#: contrib/admin/models.py:20 -msgid "object repr" -msgstr "object repr" +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "Баварија" -#: contrib/admin/models.py:21 -msgid "action flag" -msgstr "знакче за акција" +#: contrib/localflavor/de/de_states.py:7 +msgid "Berlin" +msgstr "Берлин" -#: contrib/admin/models.py:22 -msgid "change message" -msgstr "измени ја пораката" +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "Бранденбург" -#: contrib/admin/models.py:25 -msgid "log entry" -msgstr "Ñтавка во запиÑникот" +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "Бремен" -#: contrib/admin/models.py:26 -msgid "log entries" -msgstr "Ñтавки во запиÑникот" +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "Хамбург" -#: contrib/admin/templatetags/admin_list.py:238 -msgid "All dates" -msgstr "Сите датуми" +#: contrib/localflavor/de/de_states.py:11 +msgid "Hessen" +msgstr "ХеÑен" -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/admin/500.html:4 -#: contrib/admin/templates/admin/invalid_setup.html:4 -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/delete_confirmation.html:6 -#: contrib/admin/templates/admin/change_list.html:6 -#: contrib/admin/templates/admin/change_form.html:13 -#: contrib/admin/templates/admin/base.html:30 -#: contrib/admin/templates/admin/auth/user/change_password.html:12 -#: contrib/admin/templates/registration/logged_out.html:4 -#: contrib/admin/templates/registration/password_reset_done.html:4 -#: contrib/admin/templates/registration/password_change_form.html:4 -#: contrib/admin/templates/registration/password_change_done.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:4 -msgid "Home" -msgstr "Дома" +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "Мекленбург - Западна Померанија" -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/auth/user/change_password.html:9 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Documentation" -msgstr "Документација" +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "Долна СакÑонија" -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -msgid "Bookmarklets" -msgstr "Обележувачи" +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "Северна Рајна-ВеÑтфалија" -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 -#: contrib/admin/templates/admin_doc/missing_docutils.html:4 -#: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 -#: contrib/admin/templates/admin_doc/view_index.html:5 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 -#: contrib/admin/templates/admin_doc/model_detail.html:3 -#: contrib/admin/templates/admin_doc/model_index.html:5 -#: contrib/admin/templates/admin_doc/index.html:4 -#: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin/object_history.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:3 -#: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:25 -#: contrib/admin/templates/admin/auth/user/change_password.html:9 -#: contrib/admin/templates/admin/auth/user/change_password.html:15 -#: contrib/admin/templates/admin/auth/user/change_password.html:46 -#: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/registration/password_change_done.html:3 -msgid "Change password" -msgstr "Промени лозинка" - -#: contrib/admin/templates/admin_doc/bookmarklets.html:5 -msgid "Documentation bookmarklets" -msgstr "Обележувачи на документација" +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "Рајналенд-Палатинате" -#: contrib/admin/templates/admin_doc/bookmarklets.html:9 -msgid "" -"\n" -"<p class=\"help\">To install bookmarklets, drag the link to your bookmarks\n" -"toolbar, or right-click the link and add it to your bookmarks. Now you can\n" -"select the bookmarklet from any page in the site. Note that some of these\n" -"bookmarklets require you to be viewing the site from a computer designated\n" -"as \"internal\" (talk to your system administrator if you aren't sure if\n" -"your computer is \"internal\").</p>\n" -msgstr "" -"\n" -"<p class=\"help\">За да инÑталирате обележувачи, влечете ја врÑката до " -"вашата\n" -"лента Ñо алатки, или кликнете Ñо деÑното копче и додадете го во вашите \n" -"обележувачи. Сега може да го изберете обележувачот од било која Ñтраница " -"на \n" -"Ñајтот. Имајте на ум дека за некои од овие обележувачи е потребно да го " -"гледате \n" -"Ñајтот од компјутер кој е означен како „внатрешен“ (разговарајте Ñо вашиот \n" -"админиÑтратор ако не Ñте Ñигурни).</p>\n" +#: contrib/localflavor/de/de_states.py:16 +msgid "Saarland" +msgstr "Сарленд" -#: contrib/admin/templates/admin_doc/bookmarklets.html:19 -msgid "Documentation for this page" -msgstr "Документација за оваа Ñтраница" +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "СакÑонија" -#: contrib/admin/templates/admin_doc/bookmarklets.html:20 -msgid "" -"Jumps you from any page to the documentation for the view that generates " -"that page." -msgstr "" -"Ве ноÑи од било која Ñтраница од документацијата до погледот кој ја генерира " -"таа Ñтраница." +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "СакÑонија-Ðнхалт" -#: contrib/admin/templates/admin_doc/bookmarklets.html:22 -msgid "Show object ID" -msgstr "Прикажи идентификационен број на објектот" +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "ШлеÑвиг-Холштајн" -#: contrib/admin/templates/admin_doc/bookmarklets.html:23 -msgid "" -"Shows the content-type and unique ID for pages that represent a single " -"object." -msgstr "" -"Го прикажува типот на Ñодржината и уникатниот идентификационен број за " -"Ñтраници кои претÑтавуваат единечен објект." +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "Турингиа" -#: contrib/admin/templates/admin_doc/bookmarklets.html:25 -msgid "Edit this object (current window)" -msgstr "Уреди го овој објект (во овој прозорец)" +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:46 +msgid "Enter a valid Finnish social security number." +msgstr "ВнеÑте правилен финÑки матичен број." -#: contrib/admin/templates/admin_doc/bookmarklets.html:26 -msgid "Jumps to the admin page for pages that represent a single object." -msgstr "Скокнува до админ Ñтраницата за Ñтраници кои претÑтавуваат единечен објект." +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "ВнеÑете поштенÑки број во форматот XXXXXXX или XXX-XXXX." -#: contrib/admin/templates/admin_doc/bookmarklets.html:28 -msgid "Edit this object (new window)" -msgstr "Уреди го овој објект (во нов прозорец)" +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "Хокаидо" -#: contrib/admin/templates/admin_doc/bookmarklets.html:29 -msgid "As above, but opens the admin page in a new window." -msgstr "Како погоре, но ја отвара админ Ñтраницата во нов прозорец." +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "Ðомори" -#: contrib/admin/templates/admin/submit_line.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:9 -msgid "Delete" -msgstr "Избриши" +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "Ивате" -#: contrib/admin/templates/admin/submit_line.html:4 -msgid "Save as new" -msgstr "Сними како нова" +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "Мијаги" -#: contrib/admin/templates/admin/submit_line.html:5 -msgid "Save and add another" -msgstr "Сними и додади уште" +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "Ðкита" -#: contrib/admin/templates/admin/submit_line.html:6 -msgid "Save and continue editing" -msgstr "Сними и продолжи Ñо уредување" +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "Јамагата" -#: contrib/admin/templates/admin/submit_line.html:7 -msgid "Save" -msgstr "Сними" +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "Фукушима" -#: contrib/admin/templates/admin/500.html:4 -msgid "Server error" -msgstr "Грешка Ñо Ñерверот" +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "Ибараки" -#: contrib/admin/templates/admin/500.html:6 -msgid "Server error (500)" -msgstr "Грешка Ñо Ñерверот (500)" +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "Точиги" -#: contrib/admin/templates/admin/500.html:9 -msgid "Server Error <em>(500)</em>" -msgstr "Грешка Ñо Ñерверот <em>(500)</em>" +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "Гунма" -#: contrib/admin/templates/admin/500.html:10 -msgid "" -"There's been an error. It's been reported to the site administrators via e-" -"mail and should be fixed shortly. Thanks for your patience." -msgstr "" -"Имаше грешка. ИÑтата беше пријавена на админиÑтраторите и ќе биде поправена " -"во брзо време. Ви благодариме за вашето трпение." +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "Саитама" -#: contrib/admin/templates/admin/filter.html:2 -#, python-format -msgid " By %(filter_title)s " -msgstr " Од %(filter_title)s " +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "Чиба" -#: contrib/admin/templates/admin/filters.html:4 -msgid "Filter" -msgstr "Филтер" +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "Токио" -#: contrib/admin/templates/admin/invalid_setup.html:8 -msgid "" -"Something's wrong with your database installation. Make sure the appropriate " -"database tables have been created, and make sure the database is readable by " -"the appropriate user." -msgstr "" -"Ðешто не е во ред Ñо инÑталацијата на базата на податоци. Потврдете дека " -"Ñоодветни табели во базата Ñе направени и потврдете дека базата може да биде " -"прочитана од Ñоодветниот кориÑник." +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "Канагава" -#: contrib/admin/templates/admin/search_form.html:8 -msgid "Go" -msgstr "Оди" +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "Јаманаши" -#: contrib/admin/templates/admin/search_form.html:10 -#, python-format -msgid "1 result" -msgid_plural "%(counter)s results" -msgstr[0] "1 резултат" -msgstr[1] "%(counter)s резултати" +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "Ðагано" -#: contrib/admin/templates/admin/search_form.html:10 -#, python-format -msgid "%(full_result_count)s total" -msgstr "вкупно %(full_result_count)s" +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "Ðигита" -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/change_form.html:21 -msgid "History" -msgstr "ИÑторија" +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "Тојама" -#: contrib/admin/templates/admin/object_history.html:18 -msgid "Date/time" -msgstr "Датум/чаÑ" +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "Ишикава" -#: contrib/admin/templates/admin/object_history.html:19 -msgid "User" -msgstr "КориÑник" +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "Фукуи" -#: contrib/admin/templates/admin/object_history.html:20 -msgid "Action" -msgstr "Ðкција" +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "Гифу" -#: contrib/admin/templates/admin/object_history.html:26 -msgid "DATE_WITH_TIME_FULL" -msgstr "N j. Y, H:i" +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "Шизоука" -#: contrib/admin/templates/admin/object_history.html:36 -msgid "" -"This object doesn't have a change history. It probably wasn't added via this " -"admin site." -msgstr "" -"Овој објект нема иÑторија на измени. Ðајверојатно не бил додаден Ñо админ " -"Ñајтот." +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "Ðичи" -#: contrib/admin/templates/admin/delete_confirmation.html:14 -#, python-format -msgid "" -"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " -"related objects, but your account doesn't have permission to delete the " -"following types of objects:" -msgstr "Бришење на %(object_name)s '%(escaped_object)s' ќе резултира Ñо бришење на поврзаните објекти, но Ñо вашата Ñметка немате доволно привилегии да ги бришете Ñледните типови на објекти:" +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "Мие" -#: contrib/admin/templates/admin/delete_confirmation.html:21 -#, python-format -msgid "" -"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " -"All of the following related items will be deleted:" -msgstr "" -"Сигурне Ñте дека Ñакате да ги бришете %(object_name)s „%(escaped_object)s“? " -"Сите овие Ñтавки ќе бидат избришани:" +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "Шига" -#: contrib/admin/templates/admin/delete_confirmation.html:26 -msgid "Yes, I'm sure" -msgstr "Да, Ñигурен Ñум" +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "Кјото" -#: contrib/admin/templates/admin/pagination.html:10 -msgid "Show all" -msgstr "Прикажи ги Ñите" +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "ОÑака" -#: contrib/admin/templates/admin/change_list.html:12 -#, python-format -msgid "Add %(name)s" -msgstr "Додади %(name)s" +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "Хиого" -#: contrib/admin/templates/admin/change_form.html:15 -#: contrib/admin/templates/admin/index.html:28 -msgid "Add" -msgstr "Додади" +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "Ðара" -#: contrib/admin/templates/admin/change_form.html:22 -msgid "View on site" -msgstr "Погледни на Ñајтот" +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "Вакајама" -#: contrib/admin/templates/admin/change_form.html:32 -#: contrib/admin/templates/admin/auth/user/change_password.html:24 -msgid "Please correct the error below." -msgid_plural "Please correct the errors below." -msgstr[0] "Ве молам поправете ја грешката подолу." -msgstr[1] "Ве молам поправете ги грешките подолу." +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "Тотори" -#: contrib/admin/templates/admin/change_form.html:50 -msgid "Ordering" -msgstr "Подредување" +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "Шимане" -#: contrib/admin/templates/admin/change_form.html:53 -msgid "Order:" -msgstr "Подреди:" +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "Окајама" -#: contrib/admin/templates/admin/base.html:25 -msgid "Welcome," -msgstr "Добредојдовте," +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "Хирошима" -#: contrib/admin/templates/admin/404.html:4 -#: contrib/admin/templates/admin/404.html:8 -msgid "Page not found" -msgstr "Страницата не е најдена" +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "Јамагучи" -#: contrib/admin/templates/admin/404.html:10 -msgid "We're sorry, but the requested page could not be found." -msgstr "Се извинуваме, но неможе да ја најдеме Ñтраницата која ја баравте." +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "Токушима" -#: contrib/admin/templates/admin/login.html:25 -#: contrib/admin/views/decorators.py:24 -msgid "Log in" -msgstr "Ðајава" +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "Кагава" -#: contrib/admin/templates/admin/index.html:17 -#, python-format -msgid "Models available in the %(name)s application." -msgstr "ДоÑтапни модели во апликацијата %(name)s." +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "Еиме" -#: contrib/admin/templates/admin/index.html:18 -#, python-format -msgid "%(name)s" -msgstr "%(name)s" +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "Кочи" -#: contrib/admin/templates/admin/index.html:34 -msgid "Change" -msgstr "Измени" +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "Фукуока" -#: contrib/admin/templates/admin/index.html:44 -msgid "You don't have permission to edit anything." -msgstr "Ðемате дозвола ништо да уредува." +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "Сага" -#: contrib/admin/templates/admin/index.html:52 -msgid "Recent Actions" -msgstr "ПоÑледни акции" +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "ÐагаÑаки" -#: contrib/admin/templates/admin/index.html:53 -msgid "My Actions" -msgstr "Мои акции" +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "Кумамото" -#: contrib/admin/templates/admin/index.html:57 -msgid "None available" -msgstr "Ðишто не е доÑтапно" +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "Оита" -#: contrib/admin/templates/admin/base_site.html:4 -msgid "Django site admin" -msgstr "Ðанго админиÑтрација на Ñајт" +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "Мијазаки" -#: contrib/admin/templates/admin/base_site.html:7 -msgid "Django administration" -msgstr "Ðанго админиÑтрација" +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "Кагошима" -#: contrib/admin/templates/admin/auth/user/add_form.html:6 -msgid "" -"First, enter a username and password. Then, you'll be able to edit more user " -"options." -msgstr "" -"Прво, внеÑете кориÑничко име и лозинка. Потоа ќе можете да уредувате повеќе " -"кориÑнички опции." +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "Окинава" -#: contrib/admin/templates/admin/auth/user/add_form.html:12 -msgid "Username" -msgstr "КориÑник" +#: contrib/localflavor/no/forms.py:15 +msgid "Enter a zip code in the format XXXX." +msgstr "ВнеÑете правилен поштенÑки број во форматот XXXX." -#: contrib/admin/templates/admin/auth/user/add_form.html:18 -#: contrib/admin/templates/admin/auth/user/change_password.html:34 -msgid "Password" -msgstr "Лозинка" +#: contrib/localflavor/no/forms.py:36 +msgid "Enter a valid Norwegian social security number." +msgstr "Ве молам внеÑете правилен норвешки матичен број." -#: contrib/admin/templates/admin/auth/user/add_form.html:23 -#: contrib/admin/templates/admin/auth/user/change_password.html:39 -msgid "Password (again)" -msgstr "Лозинка (повторно)" +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "ВнеÑете поштенÑки број. Задолжително е празно меÑто помеѓу двата дела на поштенÑкиот број." -#: contrib/admin/templates/admin/auth/user/add_form.html:24 -#: contrib/admin/templates/admin/auth/user/change_password.html:40 -msgid "Enter the same password as above, for verification." -msgstr "Заради верификација внеÑете ја иÑтата лозинка како и горе." +#: contrib/localflavor/usa/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "ВнеÑете поштенÑки број во форматот XXXXX или XXXXX-XXXX." -#: contrib/admin/templates/admin/auth/user/change_password.html:28 -#, python-format -msgid "Enter a new password for the user <strong>%(username)s</strong>." -msgstr "ВнеÑете нова лозинка за кориÑникот <strong>%(username)s</strong>." +#: contrib/localflavor/usa/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "ВнеÑте правилен матичен број за СÐД во XXX-XX-XXXX форматот." -#: contrib/admin/templates/widget/file.html:2 -msgid "Currently:" -msgstr "Моментално:" +#: contrib/sessions/models.py:68 +msgid "session key" +msgstr "клуч на ÑеÑијата" -#: contrib/admin/templates/widget/file.html:3 -msgid "Change:" -msgstr "Измена:" +#: contrib/sessions/models.py:69 +msgid "session data" +msgstr "податоци од ÑеÑијата" -#: contrib/admin/templates/widget/date_time.html:3 -msgid "Date:" -msgstr "Датум:" +#: contrib/sessions/models.py:70 +msgid "expire date" +msgstr "датум на иÑтекување" -#: contrib/admin/templates/widget/date_time.html:4 -msgid "Time:" -msgstr "Време:" +#: contrib/sessions/models.py:74 +msgid "session" +msgstr "ÑеÑија" -#: contrib/admin/templates/registration/logged_out.html:8 -msgid "Thanks for spending some quality time with the Web site today." -msgstr "Ви благодариме што денеÑка поминавте квалитетно време Ñо интернет Ñтраницава." +#: contrib/sessions/models.py:75 +msgid "sessions" +msgstr "ÑеÑии" -#: contrib/admin/templates/registration/logged_out.html:10 -msgid "Log in again" -msgstr "Логирајте Ñе повторно" +#: contrib/contenttypes/models.py:36 +msgid "python model class name" +msgstr "има на клаÑата на питон моделите" -#: contrib/admin/templates/registration/password_reset_email.html:2 -msgid "You're receiving this e-mail because you requested a password reset" -msgstr "Ја добивата оваа порака бидејќи побаравте да Ñе реÑетира вашата лозинка" +#: contrib/contenttypes/models.py:39 +msgid "content type" +msgstr "content type" -#: contrib/admin/templates/registration/password_reset_email.html:3 -#, python-format -msgid "for your user account at %(site_name)s" -msgstr "за кориÑничката Ñметка на %(site_name)s" +#: contrib/contenttypes/models.py:40 +msgid "content types" +msgstr "content types" -#: contrib/admin/templates/registration/password_reset_email.html:5 +#: oldforms/__init__.py:392 #, python-format -msgid "Your new password is: %(new_password)s" -msgstr "Вашата нова лозинка е: %(new_password)s" - -#: contrib/admin/templates/registration/password_reset_email.html:7 -msgid "Feel free to change this password by going to this page:" -msgstr "ЧуÑтвувајте Ñе Ñлободно да ја промените оваа лозинка преку оваа Ñтраница:" - -#: contrib/admin/templates/registration/password_reset_email.html:11 -msgid "Your username, in case you've forgotten:" -msgstr "Вашето кориÑничко име, во Ñлучај да Ñте го заборавиле:" +msgid "Ensure your text is less than %s character." +msgid_plural "Ensure your text is less than %s characters." +msgstr[0] "ОÑигурајте Ñе дека вашиот текÑÑ‚ има помалку од %s знак." +msgstr[1] "ОÑигурајте Ñе дека вашиот текÑÑ‚ има помалку од %s знаци." -#: contrib/admin/templates/registration/password_reset_email.html:13 -msgid "Thanks for using our site!" -msgstr "Ви благодариме што го кориÑтите овој Ñајт!" +#: oldforms/__init__.py:397 +msgid "Line breaks are not allowed here." +msgstr "Тука не Ñе дозволени прекини на линија." -#: contrib/admin/templates/registration/password_reset_email.html:15 +#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 #, python-format -msgid "The %(site_name)s team" -msgstr "Тимот на %(site_name)s" - -#: contrib/admin/templates/registration/password_reset_done.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:4 -#: contrib/admin/templates/registration/password_reset_form.html:6 -#: contrib/admin/templates/registration/password_reset_form.html:10 -msgid "Password reset" -msgstr "РеÑетирање на лозинка" - -#: contrib/admin/templates/registration/password_reset_done.html:6 -#: contrib/admin/templates/registration/password_reset_done.html:10 -msgid "Password reset successful" -msgstr "УÑпешно е реÑетирањето на лозинката" - -#: contrib/admin/templates/registration/password_reset_done.html:12 -msgid "" -"We've e-mailed a new password to the e-mail address you submitted. You " -"should be receiving it shortly." -msgstr "" -"Ви пративме нова лозинка на адреÑата која ја внеÑовте.Треба да ја примите за " -"кратко време." - -#: contrib/admin/templates/registration/password_change_form.html:4 -#: contrib/admin/templates/registration/password_change_form.html:6 -#: contrib/admin/templates/registration/password_change_form.html:10 -#: contrib/admin/templates/registration/password_change_done.html:4 -msgid "Password change" -msgstr "Измена на лозинка" - -#: contrib/admin/templates/registration/password_change_form.html:12 -msgid "" -"Please enter your old password, for security's sake, and then enter your new " -"password twice so we can verify you typed it in correctly." -msgstr "" -"Заради ÑигурноÑÑ‚ ве молам внеÑете ја вашата Ñтара лозинка и потоа внеÑете ја " -"новата двапати за да може да Ñе потврди дека правилно Ñте ја иÑкуцале." - -#: contrib/admin/templates/registration/password_change_form.html:17 -msgid "Old password:" -msgstr "Стара лозинка:" +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "Изберете правилно, %(data)s' не е во %(choices)s." -#: contrib/admin/templates/registration/password_change_form.html:19 -msgid "New password:" -msgstr "Ðова лозинка:" +#: oldforms/__init__.py:674 +msgid "The submitted file is empty." +msgstr "Пратената датотека е празна." -#: contrib/admin/templates/registration/password_change_form.html:21 -msgid "Confirm password:" -msgstr "Потврди лозинка:" +#: oldforms/__init__.py:730 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "ВнеÑете цел број помеѓу -32,768 и 32,767." -#: contrib/admin/templates/registration/password_change_form.html:23 -msgid "Change my password" -msgstr "Промени ја мојата лозинка" +#: oldforms/__init__.py:740 +msgid "Enter a positive number." +msgstr "ВнеÑете позитивен број." -#: contrib/admin/templates/registration/password_change_done.html:6 -#: contrib/admin/templates/registration/password_change_done.html:10 -msgid "Password change successful" -msgstr "УÑпешна промена на лозинката" +#: oldforms/__init__.py:750 +msgid "Enter a whole number between 0 and 32,767." +msgstr "ВнеÑете цел број помеѓу 0 и 32,767." -#: contrib/admin/templates/registration/password_change_done.html:12 -msgid "Your password was changed." -msgstr "Вашата лозинка беше Ñменета." +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "%(verbose_name)s беше уÑпешно Ñоздаден." -#: contrib/admin/templates/registration/password_reset_form.html:12 -msgid "" -"Forgotten your password? Enter your e-mail address below, and we'll reset " -"your password and e-mail the new one to you." -msgstr "Сте ја заборавиле вашата лозинка? ВнеÑете ја вашата е-пошта подолу, ќе ја реÑетираме вашата лозинка и новата ќе ви ја пратиме по е-пошта." +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "%(verbose_name)s беше уÑпешно ажуриран." -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "E-mail address:" -msgstr "Е-пошта:" +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "%(verbose_name)s беше избришан." -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "Reset my password" -msgstr "РеÑетирај ја мојата лозинка" +#: utils/dates.py:6 +msgid "Monday" +msgstr "понеделник" -#: contrib/admin/views/main.py:223 -msgid "Site administration" -msgstr "ÐдминиÑтрација на Ñајт" +#: utils/dates.py:6 +msgid "Tuesday" +msgstr "вторник" -#: contrib/admin/views/main.py:257 contrib/admin/views/auth.py:19 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." -msgstr "%(name)s \"%(obj)s\" беше уÑпешно додаден." +#: utils/dates.py:6 +msgid "Wednesday" +msgstr "Ñреда" -#: contrib/admin/views/main.py:261 contrib/admin/views/main.py:347 -#: contrib/admin/views/auth.py:24 -msgid "You may edit it again below." -msgstr "Подолу можете повторно да го уредите." +#: utils/dates.py:6 +msgid "Thursday" +msgstr "четврток" -#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 -#, python-format -msgid "You may add another %s below." -msgstr "Подолу можете да додате уште еден %s." +#: utils/dates.py:6 +msgid "Friday" +msgstr "петок" -#: contrib/admin/views/main.py:289 -#, python-format -msgid "Add %s" -msgstr "Додади %s" +#: utils/dates.py:7 +msgid "Saturday" +msgstr "Ñабота" -#: contrib/admin/views/main.py:335 -#, python-format -msgid "Added %s." -msgstr "Додадено %s." +#: utils/dates.py:7 +msgid "Sunday" +msgstr "недела" -#: contrib/admin/views/main.py:337 -#, python-format -msgid "Changed %s." -msgstr "Изменета %s." +#: utils/dates.py:14 +msgid "January" +msgstr "јануари" -#: contrib/admin/views/main.py:339 -#, python-format -msgid "Deleted %s." -msgstr "Избришана %s." +#: utils/dates.py:14 +msgid "February" +msgstr "февруари" -#: contrib/admin/views/main.py:342 -msgid "No fields changed." -msgstr "Ðе беше изменето ниедно поле." +#: utils/dates.py:14 utils/dates.py:27 +msgid "March" +msgstr "март" -#: contrib/admin/views/main.py:345 -#, python-format -msgid "The %(name)s \"%(obj)s\" was changed successfully." -msgstr "%(name)s \"%(obj)s\" беше уÑпешно изменета." +#: utils/dates.py:14 utils/dates.py:27 +msgid "April" +msgstr "април" -#: contrib/admin/views/main.py:353 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." -msgstr "" -"%(name)s \"%(obj)s\" беше уÑпешно додадена.Подолу можете повторно да ја " -"уредите." +#: utils/dates.py:14 utils/dates.py:27 +msgid "May" +msgstr "мај" -#: contrib/admin/views/main.py:391 -#, python-format -msgid "Change %s" -msgstr "Измени %s" +#: utils/dates.py:14 utils/dates.py:27 +msgid "June" +msgstr "јуни" -#: contrib/admin/views/main.py:473 -#, python-format -msgid "One or more %(fieldname)s in %(name)s: %(obj)s" -msgstr "Еден или повеќе %(fieldname)s во %(name)s: %(obj)s" +#: utils/dates.py:15 utils/dates.py:27 +msgid "July" +msgstr "јули" -#: contrib/admin/views/main.py:478 -#, python-format -msgid "One or more %(fieldname)s in %(name)s:" -msgstr "Еден или повеќе %(fieldname)s во %(name)s:" +#: utils/dates.py:15 +msgid "August" +msgstr "авгуÑÑ‚" -#: contrib/admin/views/main.py:511 -#, python-format -msgid "The %(name)s \"%(obj)s\" was deleted successfully." -msgstr "%(name)s \"%(obj)s\" беше избришана уÑпешно." +#: utils/dates.py:15 +msgid "September" +msgstr "Ñептември" -#: contrib/admin/views/main.py:514 -msgid "Are you sure?" -msgstr "Сигурни Ñте?" +#: utils/dates.py:15 +msgid "October" +msgstr "октомври" -#: contrib/admin/views/main.py:536 -#, python-format -msgid "Change history: %s" -msgstr "ИÑторија на измени: %s" +#: utils/dates.py:15 +msgid "November" +msgstr "ноември" -#: contrib/admin/views/main.py:570 -#, python-format -msgid "Select %s" -msgstr "Изберет %s" +#: utils/dates.py:16 +msgid "December" +msgstr "декември" -#: contrib/admin/views/main.py:570 -#, python-format -msgid "Select %s to change" -msgstr "Изберете %s за измена" +#: utils/dates.py:19 +msgid "jan" +msgstr "јан" -#: contrib/admin/views/main.py:758 -msgid "Database error" -msgstr "Грешка во базата Ñо податоци" +#: utils/dates.py:19 +msgid "feb" +msgstr "фев" -#: contrib/admin/views/decorators.py:62 -msgid "" -"Please log in again, because your session has expired. Don't worry: Your " -"submission has been saved." -msgstr "" -"Ве молам најавете Ñе повторно бидејќи вашата ÑеÑија е иÑтечена. Ðе Ñе " -"грижете. Вашите внеÑови беа зачувани." +#: utils/dates.py:19 +msgid "mar" +msgstr "мар" -#: contrib/admin/views/decorators.py:69 -msgid "" -"Looks like your browser isn't configured to accept cookies. Please enable " -"cookies, reload this page, and try again." -msgstr "" -"Изгледа дека вашиот прелиÑтувач не е конфигуриран да прифаќа колачиња. Ве " -"молам овозможете ги колачињата, превчитајте ја Ñтрата и пробајте повторно." +#: utils/dates.py:19 +msgid "apr" +msgstr "апр" -#: contrib/admin/views/decorators.py:83 -msgid "Usernames cannot contain the '@' character." -msgstr "КориÑничките имиња неможе да го Ñодржат „@“ знакот." +#: utils/dates.py:19 +msgid "may" +msgstr "мај" -#: contrib/admin/views/decorators.py:85 -#, python-format -msgid "Your e-mail address is not your username. Try '%s' instead." -msgstr "Вашата е-пошта не е вашето кориÑничко име. Пробајте Ñо „%s“." +#: utils/dates.py:19 +msgid "jun" +msgstr "јун" -#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 -#: contrib/admin/views/doc.py:50 -msgid "tag:" -msgstr "таг:" +#: utils/dates.py:20 +msgid "jul" +msgstr "јул" -#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 -#: contrib/admin/views/doc.py:81 -msgid "filter:" -msgstr "филтер:" +#: utils/dates.py:20 +msgid "aug" +msgstr "авг" -#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 -#: contrib/admin/views/doc.py:139 -msgid "view:" -msgstr "поглед:" +#: utils/dates.py:20 +msgid "sep" +msgstr "Ñеп" -#: contrib/admin/views/doc.py:164 -#, python-format -msgid "App %r not found" -msgstr "Ðе е најдена апликацијата %r" +#: utils/dates.py:20 +msgid "oct" +msgstr "окт" -#: contrib/admin/views/doc.py:171 -#, python-format -msgid "Model %r not found in app %r" -msgstr "Моделот %r не е најден во апликацијата %r" +#: utils/dates.py:20 +msgid "nov" +msgstr "ное" -#: contrib/admin/views/doc.py:183 -#, python-format -msgid "the related `%s.%s` object" -msgstr "повразните`%s.%s` објект" +#: utils/dates.py:20 +msgid "dec" +msgstr "дек" -#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 -#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 -msgid "model:" -msgstr "модел:" +#: utils/dates.py:27 +msgid "Jan." +msgstr "јан." -#: contrib/admin/views/doc.py:214 -#, python-format -msgid "related `%s.%s` objects" -msgstr "поврзани `%s.%s` објекти" +#: utils/dates.py:27 +msgid "Feb." +msgstr "фев." -#: contrib/admin/views/doc.py:219 -#, python-format -msgid "all %s" -msgstr "Ñите %s" +#: utils/dates.py:28 +msgid "Aug." +msgstr "авг." -#: contrib/admin/views/doc.py:224 -#, python-format -msgid "number of %s" -msgstr "број на %s" +#: utils/dates.py:28 +msgid "Sept." +msgstr "Ñеп." -#: contrib/admin/views/doc.py:229 -#, python-format -msgid "Fields on %s objects" -msgstr "Полиња на %s објекти" +#: utils/dates.py:28 +msgid "Oct." +msgstr "окт." -#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 -#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 -#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 -msgid "Integer" -msgstr "Цел број" +#: utils/dates.py:28 +msgid "Nov." +msgstr "ное." -#: contrib/admin/views/doc.py:292 -msgid "Boolean (Either True or False)" -msgstr "Логичка (или точно или неточно)" +#: utils/dates.py:28 +msgid "Dec." +msgstr "дек." -#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 -#, python-format -msgid "String (up to %(maxlength)s)" -msgstr "Збор (до %(maxlength)s)" +#: utils/timesince.py:12 +msgid "year" +msgid_plural "years" +msgstr[0] "година" +msgstr[1] "години" -#: contrib/admin/views/doc.py:294 -msgid "Comma-separated integers" -msgstr "Целобројни вредноÑти одделени Ñо запирка" +#: utils/timesince.py:13 +msgid "month" +msgid_plural "months" +msgstr[0] "меÑец" +msgstr[1] "меÑеци" -#: contrib/admin/views/doc.py:295 -msgid "Date (without time)" -msgstr "Датум (без чаÑ)" +#: utils/timesince.py:14 +msgid "week" +msgid_plural "weeks" +msgstr[0] "Ñедмица" +msgstr[1] "Ñедмици" -#: contrib/admin/views/doc.py:296 -msgid "Date (with time)" -msgstr "Датум (Ñо чаÑ)" +#: utils/timesince.py:15 +msgid "day" +msgid_plural "days" +msgstr[0] "ден" +msgstr[1] "дена" -#: contrib/admin/views/doc.py:297 -msgid "E-mail address" -msgstr "ÐдреÑа на е-пошта" +#: utils/timesince.py:16 +msgid "hour" +msgid_plural "hours" +msgstr[0] "чаÑ" +msgstr[1] "чаÑа" -#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 -#: contrib/admin/views/doc.py:302 -msgid "File path" -msgstr "Патека на датотека" +#: utils/timesince.py:17 +msgid "minute" +msgid_plural "minutes" +msgstr[0] "минута" +msgstr[1] "минути" -#: contrib/admin/views/doc.py:300 -msgid "Decimal number" -msgstr "Децимален број" +#: utils/dateformat.py:40 +msgid "p.m." +msgstr "попладне" -#: contrib/admin/views/doc.py:306 -msgid "Boolean (Either True, False or None)" -msgstr "Логичка (точно,неточно или празно)" +#: utils/dateformat.py:41 +msgid "a.m." +msgstr "наутро" -#: contrib/admin/views/doc.py:307 -msgid "Relation to parent model" -msgstr "Релација Ñо родителÑкиот модел" +#: utils/dateformat.py:46 +msgid "PM" +msgstr "попладне" -#: contrib/admin/views/doc.py:308 -msgid "Phone number" -msgstr "ТелефонÑки број" +#: utils/dateformat.py:47 +msgid "AM" +msgstr "наутро" -#: contrib/admin/views/doc.py:313 -msgid "Text" -msgstr "ТекÑÑ‚" +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "полноќ" -#: contrib/admin/views/doc.py:314 -msgid "Time" -msgstr "ЧаÑ" +#: utils/dateformat.py:97 +msgid "noon" +msgstr "пладне" -#: contrib/admin/views/doc.py:316 -msgid "U.S. state (two uppercase letters)" -msgstr "Држава во СÐД (две големи букви)" +#: utils/translation/trans_real.py:358 +msgid "DATE_FORMAT" +msgstr "j M Y" -#: contrib/admin/views/doc.py:317 -msgid "XML text" -msgstr "XML текÑÑ‚" +#: utils/translation/trans_real.py:359 +msgid "DATETIME_FORMAT" +msgstr "j M Y, P" -#: contrib/admin/views/doc.py:343 -#, python-format -msgid "%s does not appear to be a urlpattern object" -msgstr "%s не изгледа дека е url објект" +#: utils/translation/trans_real.py:360 +msgid "TIME_FORMAT" +msgstr "P" -#: contrib/admin/views/auth.py:30 -msgid "Add user" -msgstr "Додади кориÑник" +#: utils/translation/trans_real.py:376 +msgid "YEAR_MONTH_FORMAT" +msgstr "F Y" -#: contrib/admin/views/auth.py:57 -msgid "Password changed successfully." -msgstr "УÑпешна промена на лозинката." +#: utils/translation/trans_real.py:377 +msgid "MONTH_DAY_FORMAT" +msgstr "F j" -#: contrib/admin/views/auth.py:64 -#, python-format -msgid "Change password: %s" -msgstr "Промени лозинка: %s" +#: template/defaultfilters.py:491 +msgid "yes,no,maybe" +msgstr "да, не, можеби" -#: newforms/fields.py:101 newforms/fields.py:254 +#: newforms/fields.py:103 newforms/fields.py:256 #, python-format msgid "Ensure this value has at most %d characters." msgstr "ОÑигурајте Ñе дека оваа вредноÑÑ‚ има најмногу %d знаци." -#: newforms/fields.py:103 newforms/fields.py:256 +#: newforms/fields.py:105 newforms/fields.py:258 #, python-format msgid "Ensure this value has at least %d characters." msgstr "ОÑигурајте Ñе дека оваа вредноÑÑ‚ има најмалку %d знаци." -#: newforms/fields.py:126 core/validators.py:120 -msgid "Enter a whole number." -msgstr "ВнеÑи цел број." - -#: newforms/fields.py:128 +#: newforms/fields.py:130 #, python-format msgid "Ensure this value is less than or equal to %s." msgstr "ОÑигурајте Ñе дека оваа вредноÑÑ‚ е помала или еднаква на %s." -#: newforms/fields.py:130 +#: newforms/fields.py:132 #, python-format msgid "Ensure this value is greater than or equal to %s." msgstr "ОÑигурајте Ñе дека оваа вредноÑÑ‚ е поголема или еднаква Ñо %s." -#: newforms/fields.py:163 +#: newforms/fields.py:165 msgid "Enter a valid date." msgstr "ВнеÑете правилен датум." -#: newforms/fields.py:190 +#: newforms/fields.py:192 msgid "Enter a valid time." msgstr "ВнеÑете правилно време." -#: newforms/fields.py:226 +#: newforms/fields.py:228 msgid "Enter a valid date/time." msgstr "ВнеÑете правилен датум Ñо време." -#: newforms/fields.py:240 +#: newforms/fields.py:242 msgid "Enter a valid value." msgstr "ВнеÑете правилна вредноÑÑ‚." -#: newforms/fields.py:269 core/validators.py:161 -msgid "Enter a valid e-mail address." -msgstr "ВнеÑeте правилна адреÑа за е-пошта." - -#: newforms/fields.py:287 newforms/fields.py:309 +#: newforms/fields.py:289 newforms/fields.py:311 msgid "Enter a valid URL." msgstr "ВнеÑете правилна адреÑа." -#: newforms/fields.py:311 +#: newforms/fields.py:313 msgid "This URL appears to be a broken link." msgstr "Оваа адреÑа изгледа дека не е доÑтапна." -#: newforms/fields.py:359 +#: newforms/fields.py:362 newforms/models.py:165 msgid "Select a valid choice. That choice is not one of the available choices." msgstr "Изберете правилно. Тоа не е едно од можните избори." -#: newforms/fields.py:377 newforms/fields.py:453 +#: newforms/fields.py:380 newforms/fields.py:456 newforms/models.py:182 msgid "Enter a list of values." msgstr "ВнеÑете лиÑта на вредноÑти." -#: newforms/fields.py:386 +#: newforms/fields.py:389 newforms/models.py:188 #, python-format msgid "Select a valid choice. %s is not one of the available choices." msgstr "ВнеÑете правилно. %s не е еден од доÑтапните вредноÑти." -#: template/defaultfilters.py:436 -msgid "yes,no,maybe" -msgstr "да, не, можеби" - -#: views/generic/create_update.py:43 -#, python-format -msgid "The %(verbose_name)s was created successfully." -msgstr "%(verbose_name)s беше уÑпешно Ñоздаден." - -#: views/generic/create_update.py:117 -#, python-format -msgid "The %(verbose_name)s was updated successfully." -msgstr "%(verbose_name)s беше уÑпешно ажуриран." - -#: views/generic/create_update.py:184 -#, python-format -msgid "The %(verbose_name)s was deleted." -msgstr "%(verbose_name)s беше избришан." - -#: core/validators.py:64 -msgid "This value must contain only letters, numbers and underscores." -msgstr "Оваа вредноÑÑ‚ Ñмее да има Ñамо букви, бројки или долни црти." - -#: core/validators.py:68 -msgid "" -"This value must contain only letters, numbers, underscores, dashes or " -"slashes." -msgstr "Оваа вредноÑÑ‚ Ñмее да има Ñамо букви, бројки, долни црти, црти или коÑи црти." - -#: core/validators.py:72 -msgid "This value must contain only letters, numbers, underscores or hyphens." -msgstr "Оваа вредноÑÑ‚ Ñмее да Ñодржи Ñамо букви, бројки, долни црти или црти." - -#: core/validators.py:76 -msgid "Uppercase letters are not allowed here." -msgstr "Големи букви не Ñе дозволени." - -#: core/validators.py:80 -msgid "Lowercase letters are not allowed here." -msgstr "Мали букви не Ñе дозволени." - -#: core/validators.py:87 -msgid "Enter only digits separated by commas." -msgstr "ВнеÑете Ñамо цифри одделени Ñо запирки." - -#: core/validators.py:99 -msgid "Enter valid e-mail addresses separated by commas." -msgstr "ВнеÑете валидни адреÑи за е-пошта одделени Ñо запирки." - -#: core/validators.py:103 -msgid "Please enter a valid IP address." -msgstr "Ве молам внеÑете валидна ИП адреÑа." - -#: core/validators.py:107 -msgid "Empty values are not allowed here." -msgstr "Празни вредноÑти не Ñе дозволени." - -#: core/validators.py:111 -msgid "Non-numeric characters aren't allowed here." -msgstr "Ðенумерички знаци не Ñе дозволени тука." - -#: core/validators.py:115 -msgid "This value can't be comprised solely of digits." -msgstr "Оваа вредноÑÑ‚ не Ñмее да биде Ñамо од цифри." - -#: core/validators.py:124 -msgid "Only alphabetical characters are allowed here." -msgstr "Дозволени Ñе Ñамо букви." - -#: core/validators.py:139 -msgid "Year must be 1900 or later." -msgstr "Годината мора да биде 1900 или покаÑно." - -#: core/validators.py:143 -#, python-format -msgid "Invalid date: %s." -msgstr "Ðеправилен датум: %s." - -#: core/validators.py:152 -msgid "Enter a valid time in HH:MM format." -msgstr "ВнеÑете правилно време во форматот HH:MM." - -#: core/validators.py:177 -msgid "" -"Upload a valid image. The file you uploaded was either not an image or a " -"corrupted image." -msgstr "" -"Качете валидна фотографија. Датотеката која ја качивте или не беше " -"фотографија или беше раÑипана датотеката." - -#: core/validators.py:184 -#, python-format -msgid "The URL %s does not point to a valid image." -msgstr "ÐдреÑата %s не покажува кон валидна фотографија." - -#: core/validators.py:188 -#, python-format -msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." -msgstr "" -"ТелефонÑките броеви мора да бидат во XXX-XXX-XXXX форматот. „%s“ не е " -"валиден." - -#: core/validators.py:196 -#, python-format -msgid "The URL %s does not point to a valid QuickTime video." -msgstr "ÐдреÑата „%s“ не покажува кон QuickTime видео." - -#: core/validators.py:200 -msgid "A valid URL is required." -msgstr "Задолжителна е правилна адреÑа." - -#: core/validators.py:214 -#, python-format -msgid "" -"Valid HTML is required. Specific errors are:\n" -"%s" -msgstr "" -"Задолжителен е правилен HTML. Грешките Ñе:\n" -"%s" - -#: core/validators.py:221 -#, python-format -msgid "Badly formed XML: %s" -msgstr "Ðеправилно формиран XML: %s" - -#: core/validators.py:238 -#, python-format -msgid "Invalid URL: %s" -msgstr "Ðеправилна адреÑа: %s" - -#: core/validators.py:243 core/validators.py:245 -#, python-format -msgid "The URL %s is a broken link." -msgstr "ÐдреÑата %s е Ñкршена врÑка." - -#: core/validators.py:251 -msgid "Enter a valid U.S. state abbreviation." -msgstr "ВнеÑете правилна Ñкратеница за држава во СÐД." - -#: core/validators.py:265 -#, python-format -msgid "Watch your mouth! The word %s is not allowed here." -msgid_plural "Watch your mouth! The words %s are not allowed here." -msgstr[0] "Внимавајте на јазикот. Тука не е дозволен зборот %s." -msgstr[1] "Внимавајте на јазикот. Тука не Ñе дозволени зборовите %s." - -#: core/validators.py:272 -#, python-format -msgid "This field must match the '%s' field." -msgstr "Ова поле мора да ÑоодејÑтвува Ñо полето „%s“." - -#: core/validators.py:291 -msgid "Please enter something for at least one field." -msgstr "Ве молам внеÑете нешто во барем едно поле." - -#: core/validators.py:300 core/validators.py:311 -msgid "Please enter both fields or leave them both empty." -msgstr "Ве молам внеÑете во двете полиња или оÑтавете ги двете празни." - -#: core/validators.py:318 -#, python-format -msgid "This field must be given if %(field)s is %(value)s" -msgstr "Ова поле мора да биде зададено ако %(field)s е %(value)s" - -#: core/validators.py:330 -#, python-format -msgid "This field must be given if %(field)s is not %(value)s" -msgstr "Ова поле мора да биде зададено ако %(field)s не е %(value)s" - -#: core/validators.py:349 -msgid "Duplicate values are not allowed." -msgstr "Дупликат вредноÑти не Ñе дозволени." - -#: core/validators.py:364 -#, python-format -msgid "This value must be between %s and %s." -msgstr "Оваа вредноÑта мора да биде помеѓу %s и %s." - -#: core/validators.py:366 -#, python-format -msgid "This value must be at least %s." -msgstr "Оваа вредноÑта мора да биде најмалку %s." - -#: core/validators.py:368 -#, python-format -msgid "This value must be no more than %s." -msgstr "Оваа вредноÑÑ‚ не Ñмее да биде поголема од %s." - -#: core/validators.py:404 -#, python-format -msgid "This value must be a power of %s." -msgstr "Оваа вредноÑта мора да биде Ñтепен од %s." - -#: core/validators.py:415 -msgid "Please enter a valid decimal number." -msgstr "Ве молам внеÑете правилен децимален број." - -#: core/validators.py:419 -#, python-format -msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "Please enter a valid decimal number with at most %s total digits." -msgstr[0] "Ве молам внеÑете правилен децимален број Ñо најмногу %s цифрa." -msgstr[1] "Ве молам внеÑете правилен децимален број Ñо најмногу %s вкупно цифри." - -#: core/validators.py:422 -#, python-format -msgid "Please enter a valid decimal number with a whole part of at most %s digit." -msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." -msgstr[0] "" -"Ве молам внеÑете правилен децимален број кој во целиот број има најмногу %s " -"цифра." -msgstr[1] "" -"Ве молам внеÑете правилен децимален број кој во целиот број има најмногу %s " -"цифри." - -#: core/validators.py:425 -#, python-format -msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "Please enter a valid decimal number with at most %s decimal places." -msgstr[0] "Ве молам внеÑете правилен децимален број кој има најмногу %s децимална цифра." -msgstr[1] "Ве молам внеÑете правилен децимален број кој има најмногу %s децимални цифри." - -#: core/validators.py:435 -#, python-format -msgid "Make sure your uploaded file is at least %s bytes big." -msgstr "Потврдете дека качената датотека има најмалку %s бајти." - -#: core/validators.py:436 -#, python-format -msgid "Make sure your uploaded file is at most %s bytes big." -msgstr "Потврдете дека качената датотека има најмногу %s бајти." - -#: core/validators.py:453 -msgid "The format for this field is wrong." -msgstr "Форматот за ова поле е грешен." - -#: core/validators.py:468 -msgid "This field is invalid." -msgstr "Ова поле не е правилно." - -#: core/validators.py:504 -#, python-format -msgid "Could not retrieve anything from %s." -msgstr "Ðеможев да извадам ништо од %s." - -#: core/validators.py:507 -#, python-format -msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." -msgstr "ÐдреÑата %(url)s врати неправилно заглавје Content-Type „%(contenttype)s“." - -#: core/validators.py:540 -#, python-format -msgid "" -"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " -"\"%(start)s\".)" -msgstr "" -"Ве молам затворете го отворениот %(tag)s таг од линијата %(line)s. (линијата " -"почнува Ñо „%(start)s“.)" - -#: core/validators.py:544 -#, python-format -msgid "" -"Some text starting on line %(line)s is not allowed in that context. (Line " -"starts with \"%(start)s\".)" -msgstr "" -"Ðекој текÑÑ‚ кој почнува на линијата %(line)s не е дозволен во тој контекÑÑ‚. " -"(Линијата започнува Ñо „%(start)s“.)" - -#: core/validators.py:549 -#, python-format -msgid "" -"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" -"(start)s\".)" -msgstr "" -"„%(attr)s“ на линија %(line)s е неправилен атрибут. (линијата започнува Ñо „%" -"(start)s“.)" - -#: core/validators.py:554 -#, python-format -msgid "" -"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" -"(start)s\".)" -msgstr "" -"„<%(tag)s>“ на линија %(line)s е неправилен таг. (линијата започнува Ñо „%" -"(start)s“.)" - -#: core/validators.py:558 -#, python-format -msgid "" -"A tag on line %(line)s is missing one or more required attributes. (Line " -"starts with \"%(start)s\".)" -msgstr "" -"Ðа таг од линијата %(line)s му недоÑтаÑува еден или повеќе од потребните " -"атрибути (линијата започнува Ñо „%(start)s“)." - -#: core/validators.py:563 -#, python-format -msgid "" -"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " -"starts with \"%(start)s\".)" -msgstr "Ðтрибутот „%(attr)s“ на линијата %(line)s има неправилна вредноÑÑ‚ (линијата започнува Ñо „%(start)s“)." - diff --git a/django/conf/locale/no/LC_MESSAGES/django.mo b/django/conf/locale/no/LC_MESSAGES/django.mo Binary files differindex ee2152b5e1..7048e3079d 100644 --- a/django/conf/locale/no/LC_MESSAGES/django.mo +++ b/django/conf/locale/no/LC_MESSAGES/django.mo diff --git a/django/conf/locale/no/LC_MESSAGES/django.po b/django/conf/locale/no/LC_MESSAGES/django.po index 427879a8f3..ea388cfd81 100644 --- a/django/conf/locale/no/LC_MESSAGES/django.po +++ b/django/conf/locale/no/LC_MESSAGES/django.po @@ -1,4 +1,4 @@ -# SOME DESCRIPTIVE TITLE. +# translation of django.po to # Copyright (C) 2005 and beyond # This file is distributed under the same license as the PACKAGE package. # Espen Grindhaug <espen@grindhaug.org>, Nov 2005. @@ -6,74 +6,73 @@ # msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: django\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2006-05-16 10:12+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Espen Grndhaug <espen@grindhaug.org>\n" -"Language-Team: Norwegian\n" +"PO-Revision-Date: 2007-04-27 06:48+0200\n" +"Last-Translator: \n" +"Language-Team: <en@li.org>\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" #: contrib/comments/models.py:67 contrib/comments/models.py:166 -#, fuzzy msgid "object ID" -msgstr "Vis objekt ID" +msgstr "objekt ID" #: contrib/comments/models.py:68 msgid "headline" -msgstr "" +msgstr "overskrift" #: contrib/comments/models.py:69 contrib/comments/models.py:90 #: contrib/comments/models.py:167 -#, fuzzy msgid "comment" -msgstr "innhold" +msgstr "kommentar" #: contrib/comments/models.py:70 msgid "rating #1" -msgstr "" +msgstr "rangering #1 " #: contrib/comments/models.py:71 msgid "rating #2" -msgstr "" +msgstr "rangering #2" #: contrib/comments/models.py:72 msgid "rating #3" -msgstr "" +msgstr "rangering #3" #: contrib/comments/models.py:73 msgid "rating #4" -msgstr "" +msgstr "rangering #4" #: contrib/comments/models.py:74 msgid "rating #5" -msgstr "" +msgstr "rangering #5" #: contrib/comments/models.py:75 msgid "rating #6" -msgstr "" +msgstr "rangering #6" #: contrib/comments/models.py:76 msgid "rating #7" -msgstr "" +msgstr "rangering #7" #: contrib/comments/models.py:77 msgid "rating #8" -msgstr "" +msgstr "rangering #8" #: contrib/comments/models.py:82 msgid "is valid rating" -msgstr "" +msgstr "er gyldig rangering" #: contrib/comments/models.py:83 contrib/comments/models.py:169 msgid "date/time submitted" -msgstr "" +msgstr "dato/tid for innsendelse" #: contrib/comments/models.py:84 contrib/comments/models.py:170 msgid "is public" -msgstr "" +msgstr "er tilgjengelig for alle" #: contrib/comments/models.py:85 contrib/admin/views/doc.py:289 msgid "IP address" @@ -81,23 +80,21 @@ msgstr "IP adresse" #: contrib/comments/models.py:86 msgid "is removed" -msgstr "" +msgstr "er fjernet" #: contrib/comments/models.py:86 msgid "" "Check this box if the comment is inappropriate. A \"This comment has been " "removed\" message will be displayed instead." -msgstr "" +msgstr "Aktiver denne avkryssningsboksen hvis kommentaren er upasende. Beskjeden \"Denne kommentaren er blitt fjernet\" vil bli vist istedet." #: contrib/comments/models.py:91 -#, fuzzy msgid "comments" -msgstr "innhold" +msgstr "kommentarer" #: contrib/comments/models.py:131 contrib/comments/models.py:207 -#, fuzzy msgid "Content object" -msgstr "innholds type" +msgstr "innholdsobjekt" #: contrib/comments/models.py:159 #, python-format @@ -108,101 +105,97 @@ msgid "" "\n" "http://%(domain)s%(url)s" msgstr "" +"Sendt av %(user)s pÃ¥ %(date)s\n" +"\n" +"%(comment)s\n" +"\n" +"http://%(domain)s%(url)s" #: contrib/comments/models.py:168 -#, fuzzy msgid "person's name" -msgstr "fornavn" +msgstr "personens navn" #: contrib/comments/models.py:171 -#, fuzzy msgid "ip address" msgstr "IP adresse" #: contrib/comments/models.py:173 msgid "approved by staff" -msgstr "" +msgstr "godkjent av moderator" #: contrib/comments/models.py:176 -#, fuzzy msgid "free comment" -msgstr "tillat kommentarer" +msgstr "Ã¥pen kommentar" #: contrib/comments/models.py:177 -#, fuzzy msgid "free comments" -msgstr "tillat kommentarer" +msgstr "Ã¥pne kommentarer" #: contrib/comments/models.py:233 msgid "score" -msgstr "" +msgstr "poeng" #: contrib/comments/models.py:234 -#, fuzzy msgid "score date" -msgstr "utløpsdato" +msgstr "poeng dato" #: contrib/comments/models.py:237 msgid "karma score" -msgstr "" +msgstr "karma poeng" #: contrib/comments/models.py:238 msgid "karma scores" -msgstr "" +msgstr "karma poeng" #: contrib/comments/models.py:242 #, python-format msgid "%(score)d rating by %(user)s" -msgstr "" +msgstr "%(score)d rangering av %(user)s" #: contrib/comments/models.py:258 -#, fuzzy, python-format +#, python-format msgid "" "This comment was flagged by %(user)s:\n" "\n" "%(text)s" msgstr "" -"Denne kommentaren er skrevet med lite omtanke:\n" +"Denne kommentaren er flagget av %(user)s:\n" "\n" "%(text)s" #: contrib/comments/models.py:265 -#, fuzzy msgid "flag date" -msgstr "flatside" +msgstr "flagg dato" #: contrib/comments/models.py:268 -#, fuzzy msgid "user flag" -msgstr "Bruker" +msgstr "brukerflag" #: contrib/comments/models.py:269 -#, fuzzy msgid "user flags" -msgstr "Brukere" +msgstr "brukerflag" #: contrib/comments/models.py:273 #, python-format msgid "Flag by %r" -msgstr "" +msgstr "Flagg med %r" #: contrib/comments/models.py:278 -#, fuzzy msgid "deletion date" -msgstr "sesjon data" +msgstr "fjernet dato" #: contrib/comments/models.py:280 msgid "moderator deletion" -msgstr "" +msgstr "fjernet av moderator" #: contrib/comments/models.py:281 msgid "moderator deletions" -msgstr "" +msgstr "fjernet av moderator" #: contrib/comments/models.py:285 #, python-format msgid "Moderator deletion by %r" -msgstr "" +msgstr "Fjernet av moderator med %r" #: contrib/comments/views/karma.py:19 msgid "Anonymous users cannot vote" @@ -214,16 +207,14 @@ msgstr "Ikke gyldig kommentar ID" #: contrib/comments/views/karma.py:25 msgid "No voting for yourself" -msgstr "Du kan ikke stemme selv" +msgstr "Du kan ikke stemme pÃ¥ deg selv" #: contrib/comments/views/comments.py:28 -#, fuzzy -msgid "" -"This rating is required because you've entered at least one other rating." -msgstr "Denne bla bla.." +msgid "This rating is required because you've entered at least one other rating." +msgstr "Denne rangeringen er pÃ¥krevd fordi du har rangert en eller flere ting fra før " #: contrib/comments/views/comments.py:112 -#, fuzzy, python-format +#, python-format msgid "" "This comment was posted by a user who has posted fewer than %(count)s " "comment:\n" @@ -246,13 +237,13 @@ msgstr[1] "" "%(text)s" #: contrib/comments/views/comments.py:117 -#, fuzzy, python-format +#, python-format msgid "" "This comment was posted by a sketchy user:\n" "\n" "%(text)s" msgstr "" -"Denne kommentaren er skrevet med lite omtanke:\n" +"Denne kommentaren er skrevet av en upÃ¥litelig bruker:\n" "\n" "%(text)s" @@ -281,8 +272,7 @@ msgstr "Skjemaet hadde en ugyldig verdi - objekt IDen var ugyldig" #: contrib/comments/views/comments.py:257 #: contrib/comments/views/comments.py:321 msgid "The comment form didn't provide either 'preview' or 'post'" -msgstr "" -"Kommentar skjemaet returnerte ikke et 'forhÃ¥ndsvisning' eller 'post' objekt" +msgstr "Kommentar skjemaet returnerte ikke et 'forhÃ¥ndsvisning' eller 'post' objekt" #: contrib/comments/templates/comments/form.html:6 #: contrib/comments/templates/comments/form.html:8 @@ -296,9 +286,8 @@ msgid "Password:" msgstr "Passord:" #: contrib/comments/templates/comments/form.html:6 -#, fuzzy msgid "Forgotten your password?" -msgstr "Endre passord" +msgstr "Har du glemt passordet ditt ?" #: contrib/comments/templates/comments/form.html:8 #: contrib/admin/templates/admin/object_history.html:3 @@ -323,38 +312,35 @@ msgstr "Log ut" #: contrib/comments/templates/comments/form.html:12 msgid "Ratings" -msgstr "" +msgstr "Rangeringer" #: contrib/comments/templates/comments/form.html:12 #: contrib/comments/templates/comments/form.html:23 msgid "Required" -msgstr "" +msgstr "PÃ¥krevd" #: contrib/comments/templates/comments/form.html:12 #: contrib/comments/templates/comments/form.html:23 msgid "Optional" -msgstr "" +msgstr "Valgfri" #: contrib/comments/templates/comments/form.html:23 msgid "Post a photo" -msgstr "" +msgstr "Send et foto" #: contrib/comments/templates/comments/form.html:27 #: contrib/comments/templates/comments/freeform.html:5 -#, fuzzy msgid "Comment:" -msgstr "tillat kommentarer" +msgstr "Kommentar:" #: contrib/comments/templates/comments/form.html:32 #: contrib/comments/templates/comments/freeform.html:9 -#, fuzzy msgid "Preview comment" -msgstr "tillat kommentarer" +msgstr "ForhÃ¥ndvis kommentar" #: contrib/comments/templates/comments/freeform.html:4 -#, fuzzy msgid "Your name:" -msgstr "brukernavn" +msgstr "Ditt navn:" #: contrib/admin/filterspecs.py:40 #, python-format @@ -416,7 +402,7 @@ msgstr "objekt repr" #: contrib/admin/models.py:21 msgid "action flag" -msgstr "handlings flagg" +msgstr "handlingsflagg" #: contrib/admin/models.py:22 msgid "change message" @@ -424,11 +410,11 @@ msgstr "endre melding" #: contrib/admin/models.py:25 msgid "log entry" -msgstr "logg notis" +msgstr "logg post" #: contrib/admin/models.py:26 msgid "log entries" -msgstr "logg innlegg" +msgstr "logg poster" #: contrib/admin/templatetags/admin_list.py:228 msgid "All dates" @@ -440,8 +426,8 @@ msgid "" "Please enter a correct username and password. Note that both fields are case-" "sensitive." msgstr "" -"Vær snill Ã¥ angi korrekt brukernavn og passord. La merke til at smÃ¥ og " -"store bokstaver er betraktet ulik." +"Vennligst angi korrekt brukernavn og passord. Merk at smÃ¥ og " +"store bokstaver er betraktet ulikt." #: contrib/admin/views/decorators.py:23 #: contrib/admin/templates/admin/login.html:25 @@ -452,18 +438,15 @@ msgstr "Logg inn" msgid "" "Please log in again, because your session has expired. Don't worry: Your " "submission has been saved." -msgstr "" -"Du mÃ¥ logge inn igjen, fordi sesjonen din har gÃ¥tt ut pÃ¥ dato, men ikke ikke " -"bekjymr deg informasjonen du sendte ble lagret." +msgstr "Du mÃ¥ logge inn igjen, fordi økten din har gÃ¥tt ut, men innlegget ditt ble lagret." #: contrib/admin/views/decorators.py:68 msgid "" "Looks like your browser isn't configured to accept cookies. Please enable " "cookies, reload this page, and try again." msgstr "" -"Det ser ut som om nettleseren din ikke vill ta i mot informasjonskapsler " -"('cookies'). Vennligst omkonfigurer nettleseren din, last siden pÃ¥ ny og " -"prøv igjen." +"Det ser ut som om nettleseren din ikke støtter informasjonskapsler " +"('cookies'). Vennligst konfigurer nettleseren din, og prøv igjen." #: contrib/admin/views/decorators.py:82 msgid "Usernames cannot contain the '@' character." @@ -500,7 +483,7 @@ msgstr "Ny %s" #: contrib/admin/views/main.py:336 #, python-format msgid "Added %s." -msgstr "Lagt til %s" +msgstr "La til %s" #: contrib/admin/views/main.py:336 contrib/admin/views/main.py:338 #: contrib/admin/views/main.py:340 @@ -528,8 +511,7 @@ msgstr "%(name)s \"%(obj)s\" ble endret." #: contrib/admin/views/main.py:354 #, python-format -msgid "" -"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." msgstr "%(name)s \"%(obj)s\" ble endret. Du kan endre det igjen under." #: contrib/admin/views/main.py:392 @@ -742,8 +724,8 @@ msgid "" "There's been an error. It's been reported to the site administrators via e-" "mail and should be fixed shortly. Thanks for your patience." msgstr "" -"Det har vært en feil. Feilen er blitt rapportert til administrator via e-" -"mail, og vill bli fikset snart. Takk for din tÃ¥lmodighet." +"Det har oppstÃ¥tt en feil. Feilen er blitt rapportert til administrator via e-" +"post, og vil bli fikset snart. Takk for din tÃ¥lmodighet." #: contrib/admin/templates/admin/404.html:4 #: contrib/admin/templates/admin/404.html:8 @@ -909,7 +891,7 @@ msgstr "Tilbakestill mitt passord" #: contrib/admin/templates/registration/logged_out.html:8 msgid "Thanks for spending some quality time with the Web site today." -msgstr "Takk for Ã¥ bruke tid pÃ¥ internett siden i dag." +msgstr "Takk for at du valgte Ã¥ bruke kvalitetstid pÃ¥ nettstedet idag." #: contrib/admin/templates/registration/logged_out.html:10 msgid "Log in again" @@ -954,8 +936,7 @@ msgstr "Endre passord" #: contrib/admin/templates/registration/password_reset_email.html:2 msgid "You're receiving this e-mail because you requested a password reset" -msgstr "" -"Du har mottatt denne e-posten fordi du ba om Ã¥ tilbakestille passordet ditt" +msgstr "Du har mottatt denne e-posten fordi du ba om Ã¥ tilbakestille passordet ditt" #: contrib/admin/templates/registration/password_reset_email.html:3 #, python-format @@ -1002,6 +983,12 @@ msgid "" "as \"internal\" (talk to your system administrator if you aren't sure if\n" "your computer is \"internal\").</p>\n" msgstr "" +"\n" +"<p class=\"help\">For Ã¥ installere bokmerker, dra linken til verktøylinja\n" +"for bokmerker, eller høyreklikk og legg til i bokmerker. NÃ¥ kan du du velge\n" +"bokmerket fra hvilken som helst side pÃ¥ nettstedet. Noen av disse\n" +"bokmerkene krever at datamaskinen du bruker er markert som \"intern\"\n" +"(kontakt din systemadministrator hvis du er usikker pÃ¥ om maskinen din er \"intern\").</p>\n" #: contrib/admin/templates/admin_doc/bookmarklets.html:19 msgid "Documentation for this page" @@ -1033,8 +1020,7 @@ msgstr "Endre dette objektet (Ã¥pnes i dette vinduet)" #: contrib/admin/templates/admin_doc/bookmarklets.html:26 msgid "Jumps to the admin page for pages that represent a single object." -msgstr "" -"Hopp til administrasjonsiden for sidene som representerer et enkelt objekt." +msgstr "Hopp til administrasjonsiden for sidene som representerer et enkelt objekt." #: contrib/admin/templates/admin_doc/bookmarklets.html:28 msgid "Edit this object (new window)" @@ -1069,7 +1055,7 @@ msgid "" "This should be an absolute path, excluding the domain name. Example: '/" "events/search/'." msgstr "" -"Denne burde vær en fullstendig sti, uten domene navnet. Foreksempel: '/" +"Dette burde vært en fullstendig sti, uten domene navnet. Foreksempel: '/" "nyheter/les/" #: contrib/redirects/models.py:9 @@ -1081,7 +1067,7 @@ msgid "" "This can be either an absolute path (as above) or a full URL starting with " "'http://'." msgstr "" -"Denne kan enten være en fullstendig sti (som over), eller en hel " +"Dette kan enten være en fullstendig sti (som over), eller en hel " "internettadresse som starter med 'http://'" #: contrib/redirects/models.py:12 @@ -1093,10 +1079,8 @@ msgid "redirects" msgstr "omadresserelser" #: contrib/flatpages/models.py:8 -msgid "" -"Example: '/about/contact/'. Make sure to have leading and trailing slashes." -msgstr "" -"Eksempel: '/om/kontakt/'. Vær sikker pÃ¥ at du har en skrÃ¥strek forran og bak." +msgid "Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "Eksempel: '/om/kontakt/'. Vær sikker pÃ¥ at du har en skrÃ¥strek forran og bak." #: contrib/flatpages/models.py:9 msgid "title" @@ -1186,7 +1170,7 @@ msgstr "passord" #: contrib/auth/models.py:59 msgid "Use '[algo]$[salt]$[hexdigest]'" -msgstr "" +msgstr "Bruk '[algo]$[salt]$[hexdigest]'" #: contrib/auth/models.py:60 msgid "staff status" @@ -1256,7 +1240,7 @@ msgstr "Melding" msgid "" "Your Web browser doesn't appear to have cookies enabled. Cookies are " "required for logging in." -msgstr "" +msgstr "Din nettleser ser ikkeut til Ã¥ støtte informasjonskapsler (cookies). Informasjonskapsler er pÃ¥krevd for Ã¥ logge inn." #: contrib/contenttypes/models.py:25 msgid "python model class name" @@ -1698,8 +1682,7 @@ msgstr "Internettadressen %s peker ikke til et godkjent bilde." #: core/validators.py:159 #, python-format msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." -msgstr "" -"Telefon nummeret mÃ¥ være i XXX-XXX-XXXX format. \"%s\" er ikke godkjent." +msgstr "Telefon nummeret mÃ¥ være i XXX-XXX-XXXX format. \"%s\" er ikke godkjent." #: core/validators.py:167 #, python-format @@ -1732,7 +1715,7 @@ msgstr "Ikke godkjent URL: %s" #: core/validators.py:206 core/validators.py:208 #, python-format msgid "The URL %s is a broken link." -msgstr "Internettadresse fører til en side som ikke virker." +msgstr "Internettadresse %s fører til en side som ikke virker." #: core/validators.py:214 msgid "Enter a valid U.S. state abbreviation." @@ -1784,30 +1767,26 @@ msgstr "Vennligst skriv inn et godkjent desimal tall." #: core/validators.py:349 #, python-format msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "" -"Please enter a valid decimal number with at most %s total digits." +msgid_plural "Please enter a valid decimal number with at most %s total digits." msgstr[0] "Skriv inn et desimal tall med maksimum %s total antall tall." msgstr[1] "Skriv inn et desimal tall med maksimum %s total antall tall." #: core/validators.py:352 #, python-format msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "" -"Please enter a valid decimal number with at most %s decimal places." +msgid_plural "Please enter a valid decimal number with at most %s decimal places." msgstr[0] "Skriv inn et desimal tall med maksimum %s tall bak komma. " msgstr[1] "Skriv inn et desimal tall med maksimum %s tall bak komma. " #: core/validators.py:362 #, python-format msgid "Make sure your uploaded file is at least %s bytes big." -msgstr "" -"Vær sikker pÃ¥ at fila du prøver Ã¥ laste opp er minimum %s bytes stor." +msgstr "Vær sikker pÃ¥ at fila du prøver Ã¥ laste opp er minimum %s bytes stor." #: core/validators.py:363 #, python-format msgid "Make sure your uploaded file is at most %s bytes big." -msgstr "" -"Vær sikker pÃ¥ at fila du prøver Ã¥ laste opp er maksimum %s bytes stor." +msgstr "Vær sikker pÃ¥ at fila du prøver Ã¥ laste opp er maksimum %s bytes stor." #: core/validators.py:376 msgid "The format for this field is wrong." @@ -1824,8 +1803,7 @@ msgstr "Klarte ikke Ã¥ motta noe fra %s." #: core/validators.py:429 #, python-format -msgid "" -"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." msgstr "" "Internettadressen %(url)s returnerte en ikke godkjent Content-Type '%" "(contenttype)s'." @@ -1881,7 +1859,7 @@ msgid "" "The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " "starts with \"%(start)s\".)" msgstr "" -"\"%(attr)s\" tillegg pÃ¥ linje $(line)s har en ikke godkjent verdi. (Linjen " +"\"%(attr)s\" tillegg pÃ¥ linje %(line)s har en ikke godkjent verdi. (Linjen " "starter med \"%(start)s\".)" #: db/models/manipulators.py:302 @@ -1892,7 +1870,7 @@ msgstr "%(object)s med %(type)s finnes allerede for angitt %(field)s." #: db/models/fields/__init__.py:40 #, python-format msgid "%(optname)s with this %(fieldname)s already exists." -msgstr "$(optname)s med %(fieldname)s finnes allerede." +msgstr "%(optname)s med %(fieldname)s finnes allerede." #: db/models/fields/__init__.py:114 db/models/fields/__init__.py:265 #: db/models/fields/__init__.py:542 db/models/fields/__init__.py:553 @@ -1926,16 +1904,13 @@ msgid "Separate multiple IDs with commas." msgstr "Separer Id-ene med kommaer." #: db/models/fields/related.py:581 -msgid "" -"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." -msgstr "" -"Hold nede \"Control\", eller \"Command\" pÃ¥ en Mac, for Ã¥ velge mere enn en." +msgid "Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "Hold nede \"Control\", eller \"Command\" pÃ¥ en Mac, for Ã¥ velge mere enn en." #: db/models/fields/related.py:625 #, python-format msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." -msgid_plural "" -"Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgid_plural "Please enter valid %(self)s IDs. The values %(value)r are invalid." msgstr[0] "Skriv inn gyldige %(self)s ID-er. Verdien %(value)r er ikke gyldig." msgstr[1] "Skriv inn gyldige %(self)s ID-er. Verdiene %(value)r er ikke gyldige." diff --git a/django/conf/locale/no/LC_MESSAGES/djangojs.mo b/django/conf/locale/no/LC_MESSAGES/djangojs.mo Binary files differindex 4b23aba4e0..da2854f72e 100644 --- a/django/conf/locale/no/LC_MESSAGES/djangojs.mo +++ b/django/conf/locale/no/LC_MESSAGES/djangojs.mo diff --git a/django/conf/locale/no/LC_MESSAGES/djangojs.po b/django/conf/locale/no/LC_MESSAGES/djangojs.po index c6087646e0..ab3d3b965d 100644 --- a/django/conf/locale/no/LC_MESSAGES/djangojs.po +++ b/django/conf/locale/no/LC_MESSAGES/djangojs.po @@ -1,19 +1,20 @@ -# SOME DESCRIPTIVE TITLE. +# translation of djangojs.po to # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # Espen Grindhaug <espen.grindhaug@mail.com>, 2006. # msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: djangojs\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2005-12-09 11:51+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Espen Grindhaug <espen.grindhaug@gmail.com>\n" -"Language-Team: no\n" +"PO-Revision-Date: 2007-04-27 06:51+0200\n" +"Last-Translator: \n" +"Language-Team: <en@li.org>\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" #: contrib/admin/media/js/SelectFilter2.js:33 #, perl-format @@ -21,7 +22,6 @@ msgid "Available %s" msgstr "%s er tilgjengelige" #: contrib/admin/media/js/SelectFilter2.js:41 -#, fuzzy msgid "Choose all" msgstr "Velg alle" @@ -116,3 +116,4 @@ msgstr "I gÃ¥r" #: contrib/admin/media/js/admin/DateTimeShortcuts.js:164 msgid "Tomorrow" msgstr "I morgen" + diff --git a/django/conf/locale/pl/LC_MESSAGES/django.mo b/django/conf/locale/pl/LC_MESSAGES/django.mo Binary files differindex d132fc114e..1aa7e08dd4 100644 --- a/django/conf/locale/pl/LC_MESSAGES/django.mo +++ b/django/conf/locale/pl/LC_MESSAGES/django.mo diff --git a/django/conf/locale/pl/LC_MESSAGES/django.po b/django/conf/locale/pl/LC_MESSAGES/django.po index 61fc4d0a90..7e7ccb850f 100644 --- a/django/conf/locale/pl/LC_MESSAGES/django.po +++ b/django/conf/locale/pl/LC_MESSAGES/django.po @@ -1,21 +1,775 @@ +# translation of django.po to Polish # Polish .po file. -# Copyright (C) 2006 Krzysztof Kajkowski # This file is distributed under the same license as the django package. -# Krzysztof Kajkowski <krzysztof.kajkowski@gmail.com>, 2006. -# cayco <cayco@cayco.pl>, 2006. -# -# msgid "" msgstr "" -"Project-Id-Version: 0.1\n" +"Project-Id-Version: django\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-05-16 10:13+0200\n" -"PO-Revision-Date: 2006-02-21 11:10+0100\n" -"Last-Translator: Piotr MaliÅ„ski <admin@rk.edu.pl>\n" +"POT-Creation-Date: 2007-05-08 20:19+0200\n" +"PO-Revision-Date: 2007-05-08 20:29+0200\n" +"Last-Translator: Michal Chruszcz <troll@pld-linux.org>\n" "Language-Team: Polish <pl@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: oldforms/__init__.py:357 db/models/fields/__init__.py:117 +#: db/models/fields/__init__.py:274 db/models/fields/__init__.py:612 +#: db/models/fields/__init__.py:623 newforms/models.py:178 +#: newforms/fields.py:80 newforms/fields.py:376 newforms/fields.py:452 +#: newforms/fields.py:463 +msgid "This field is required." +msgstr "To pole jest wymagane." + +#: oldforms/__init__.py:392 +#, python-format +msgid "Ensure your text is less than %s character." +msgid_plural "Ensure your text is less than %s characters." +msgstr[0] "Upewnij siÄ™, że tekst ma mniej niż %s znak." +msgstr[1] "Upewnij siÄ™, że tekst ma mniej niż %s znaków." + +#: oldforms/__init__.py:397 +msgid "Line breaks are not allowed here." +msgstr "Znaki nowej linii sÄ… tutaj niedopuszczalne." + +#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 +#, python-format +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "Wybierz poprawnÄ… opcjÄ™; '%(data)s' nie jest wÅ›ród %(choices)s." + +#: oldforms/__init__.py:577 newforms/widgets.py:180 +#: contrib/admin/filterspecs.py:150 +msgid "Unknown" +msgstr "Nieznany" + +#: oldforms/__init__.py:577 newforms/widgets.py:180 +#: contrib/admin/filterspecs.py:143 +msgid "Yes" +msgstr "Tak" + +#: oldforms/__init__.py:577 newforms/widgets.py:180 +#: contrib/admin/filterspecs.py:143 +msgid "No" +msgstr "Nie" + +#: oldforms/__init__.py:672 core/validators.py:174 core/validators.py:445 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "Nie wysÅ‚ano żadnego pliku. Sprawdź typ kodowania formularza." + +#: oldforms/__init__.py:674 +msgid "The submitted file is empty." +msgstr "WysÅ‚any plik jest pusty." + +#: oldforms/__init__.py:730 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "ProszÄ™ wpisać liczbÄ™ caÅ‚kowitÄ… z zakresu od -32 768 do 32 767" + +#: oldforms/__init__.py:740 +msgid "Enter a positive number." +msgstr "ProszÄ™ wpisać liczbÄ™ dodatniÄ…." + +#: oldforms/__init__.py:750 +msgid "Enter a whole number between 0 and 32,767." +msgstr "ProszÄ™ wpisać liczbÄ™ caÅ‚kowitÄ… z zakresu od 0 do 32 767" + +#: db/models/manipulators.py:307 +#, fuzzy, python-format +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "%(object)s z %(type)s już istnieje dla %(field)s." + +#: db/models/manipulators.py:308 contrib/admin/views/main.py:338 +#: contrib/admin/views/main.py:340 contrib/admin/views/main.py:342 +msgid "and" +msgstr "i" + +#: db/models/fields/__init__.py:42 +#, fuzzy, python-format +msgid "%(optname)s with this %(fieldname)s already exists." +msgstr "Już istnieje %(optname)s z %(fieldname)s." + +#: db/models/fields/__init__.py:369 +msgid "This value must be an integer." +msgstr "Ta wartość musi być liczbÄ… caÅ‚kowitÄ…." + +#: db/models/fields/__init__.py:404 +msgid "This value must be either True or False." +msgstr "Ta wartość musi być logiczna (True, False - prawda lub faÅ‚sz)." + +#: db/models/fields/__init__.py:425 +msgid "This field cannot be null." +msgstr "To pole nie może być puste." + +#: db/models/fields/__init__.py:459 core/validators.py:148 +msgid "Enter a valid date in YYYY-MM-DD format." +msgstr "ProszÄ™ wpisać poprawnÄ… datÄ™ w formacie RRRR-MM-DD." + +#: db/models/fields/__init__.py:528 core/validators.py:157 +msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." +msgstr "Wprowadź poprawnÄ… datÄ™ i godzinÄ™ w formacie RRRR-MM-DD GG:MM." + +#: db/models/fields/__init__.py:632 +msgid "Enter a valid filename." +msgstr "Wpisz poprawnÄ… nazwÄ™ pliku." + +#: db/models/fields/__init__.py:753 +msgid "This value must be either None, True or False." +msgstr "Ta wartość musi być jednÄ… z None (żadne), True (prawda) lub False (faÅ‚sz)." + +#: db/models/fields/related.py:53 +#, python-format +msgid "Please enter a valid %s." +msgstr "ProszÄ™ wpisać poprawne %s." + +#: db/models/fields/related.py:642 +msgid "Separate multiple IDs with commas." +msgstr "Oddziel identyfikatory przecinkami." + +#: db/models/fields/related.py:644 +msgid "Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "" +"Przytrzymaj wciÅ›niÄ™ty klawisz \"Ctrl\" lub \"Command\" na Mac'u aby " +"zaznaczyć wiÄ™cej niż jeden wybór." + +#: db/models/fields/related.py:691 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +msgid_plural "Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr[0] "" +"ProszÄ™ podać poprawne identyfikatory %(self)s. Wartość %(value)r jest " +"niepoprawna." +msgstr[1] "" +"ProszÄ™ podać poprawne identyfikatory %(self)s. WartoÅ›ci %(value)r sÄ… " +"niepoprawne." + +#: conf/global_settings.py:39 +msgid "Arabic" +msgstr "Arabski" + +#: conf/global_settings.py:40 +msgid "Bengali" +msgstr "Bengalski" + +#: conf/global_settings.py:41 +msgid "Catalan" +msgstr "KataloÅ„ski" + +#: conf/global_settings.py:42 +msgid "Czech" +msgstr "Czeski" + +#: conf/global_settings.py:43 +msgid "Welsh" +msgstr "Walijski" + +#: conf/global_settings.py:44 +msgid "Danish" +msgstr "DuÅ„ski" + +#: conf/global_settings.py:45 +msgid "German" +msgstr "Niemiecki" + +#: conf/global_settings.py:46 +msgid "Greek" +msgstr "Grecki" + +#: conf/global_settings.py:47 +msgid "English" +msgstr "Angielski" + +#: conf/global_settings.py:48 +msgid "Spanish" +msgstr "HiszpaÅ„ski" + +#: conf/global_settings.py:49 +msgid "Argentinean Spanish" +msgstr "HiszpaÅ„ski argentyÅ„ski" + +#: conf/global_settings.py:50 +msgid "Finnish" +msgstr "FiÅ„ski" + +#: conf/global_settings.py:51 +msgid "French" +msgstr "Francuski" + +#: conf/global_settings.py:52 +msgid "Galician" +msgstr "Galicyjski" + +#: conf/global_settings.py:53 +msgid "Hungarian" +msgstr "WÄ™gierski" + +#: conf/global_settings.py:54 +msgid "Hebrew" +msgstr "Hebrajski" + +#: conf/global_settings.py:55 +msgid "Icelandic" +msgstr "Islandzki" + +#: conf/global_settings.py:56 +msgid "Italian" +msgstr "WÅ‚oski" + +#: conf/global_settings.py:57 +msgid "Japanese" +msgstr "JapoÅ„ski" + +#: conf/global_settings.py:58 +msgid "Korean" +msgstr "KoreaÅ„ski" + +#: conf/global_settings.py:59 +msgid "Kannada" +msgstr "Kannada" + +#: conf/global_settings.py:60 +msgid "Latvian" +msgstr "Åotewski" + +#: conf/global_settings.py:61 +msgid "Macedonian" +msgstr "MacedoÅ„ski" + +#: conf/global_settings.py:62 +msgid "Dutch" +msgstr "Holenderski" + +#: conf/global_settings.py:63 +msgid "Norwegian" +msgstr "Norweski" + +#: conf/global_settings.py:64 +msgid "Polish" +msgstr "Polski" + +#: conf/global_settings.py:65 +msgid "Portugese" +msgstr "Portugalski" + +#: conf/global_settings.py:66 +msgid "Brazilian" +msgstr "Brazylijski" + +#: conf/global_settings.py:67 +msgid "Romanian" +msgstr "RumuÅ„ski" + +#: conf/global_settings.py:68 +msgid "Russian" +msgstr "Rosyjski" + +#: conf/global_settings.py:69 +msgid "Slovak" +msgstr "SÅ‚owacki" + +#: conf/global_settings.py:70 +msgid "Slovenian" +msgstr "SÅ‚oweÅ„ski" + +#: conf/global_settings.py:71 +msgid "Serbian" +msgstr "Serbski" + +#: conf/global_settings.py:72 +msgid "Swedish" +msgstr "Szwedzki" + +#: conf/global_settings.py:73 +msgid "Tamil" +msgstr "Tamilski" + +#: conf/global_settings.py:74 +msgid "Telugu" +msgstr "Telugu" + +#: conf/global_settings.py:75 +msgid "Turkish" +msgstr "Turecki" + +#: conf/global_settings.py:76 +msgid "Ukrainian" +msgstr "UkraiÅ„ski" + +#: conf/global_settings.py:77 +msgid "Simplified Chinese" +msgstr "Uproszczony chiÅ„ski" + +#: conf/global_settings.py:78 +msgid "Traditional Chinese" +msgstr "ChiÅ„ski tradycyjny" + +#: core/validators.py:64 +msgid "This value must contain only letters, numbers and underscores." +msgstr "To pole może zawierać tylko litery, cyfry i podkreÅ›lenia." + +#: core/validators.py:68 +msgid "" +"This value must contain only letters, numbers, underscores, dashes or " +"slashes." +msgstr "" +"To pole może zawierać jedynie litery, cyfry, podkreÅ›lenia, myÅ›lniki i " +"ukoÅ›niki." + +#: core/validators.py:72 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "To pole może zawierać jedynie litery, cyfry, podkreÅ›lenia i pauzy." + +#: core/validators.py:76 +msgid "Uppercase letters are not allowed here." +msgstr "Wielkie litery nie sÄ… tutaj dozwolone." + +#: core/validators.py:80 +msgid "Lowercase letters are not allowed here." +msgstr "MaÅ‚e litery nie sÄ… tutaj dozwolone." + +#: core/validators.py:87 +msgid "Enter only digits separated by commas." +msgstr "Wpisz tylko cyfry odddzielone przecinkami." + +#: core/validators.py:99 +msgid "Enter valid e-mail addresses separated by commas." +msgstr "Wpisz poprawne adresy e-mail oddzielone przecinkami." + +#: core/validators.py:103 +msgid "Please enter a valid IP address." +msgstr "ProszÄ™ wpisać poprawny adres IP." + +#: core/validators.py:107 +msgid "Empty values are not allowed here." +msgstr "ProszÄ™ wypeÅ‚nić te pola." + +#: core/validators.py:111 +msgid "Non-numeric characters aren't allowed here." +msgstr "Tu mogÄ… być tylko cyfry." + +#: core/validators.py:115 +msgid "This value can't be comprised solely of digits." +msgstr "To pole nie może zawierać jedynie cyfr." + +#: core/validators.py:120 newforms/fields.py:128 +msgid "Enter a whole number." +msgstr "Wpisz liczbÄ™ caÅ‚kowitÄ…." + +#: core/validators.py:124 +msgid "Only alphabetical characters are allowed here." +msgstr "Tutaj sÄ… dozwolone tylko litery." + +#: core/validators.py:139 +msgid "Year must be 1900 or later." +msgstr "Rok nie może być wczeÅ›niejszy niż 1900." + +#: core/validators.py:143 +#, python-format +msgid "Invalid date: %s" +msgstr "Niepoprawna data: %s" + +#: core/validators.py:153 +msgid "Enter a valid time in HH:MM format." +msgstr "ProszÄ™ wpisać poprawnÄ… godzinÄ™ w formacie GG:MM." + +#: core/validators.py:162 newforms/fields.py:271 +msgid "Enter a valid e-mail address." +msgstr "Wprowadź poprawny adres e-mail." + +#: core/validators.py:178 +msgid "" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." +msgstr "" +"Wgraj poprawny plik graficzny. Ten, który zostaÅ‚ wgrany, nie jest obrazem, " +"albo jest uszkodzony." + +#: core/validators.py:185 +#, python-format +msgid "The URL %s does not point to a valid image." +msgstr "OdnoÅ›nik %s nie wskazuje na poprawny plik z obrazem." + +#: core/validators.py:189 +#, python-format +msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." +msgstr "" +"Numery telefoniczne muszÄ… być w formacie XXX-XXX-XXXX. \"%s\" jest " +"niepoprawny." + +#: core/validators.py:197 +#, python-format +msgid "The URL %s does not point to a valid QuickTime video." +msgstr "OdnoÅ›nik %s nie wskazuje na poprawne nagranie QuickTime video." + +#: core/validators.py:201 +msgid "A valid URL is required." +msgstr "Wymagany jest poprawny URL." + +#: core/validators.py:215 +#, python-format +msgid "" +"Valid HTML is required. Specific errors are:\n" +"%s" +msgstr "" +"Wymagany jest poprawny HTML. Błędy, które wystÄ…piÅ‚y:\n" +"%s" + +#: core/validators.py:222 +#, python-format +msgid "Badly formed XML: %s" +msgstr "NieprawidÅ‚owy format XML: %s" + +#: core/validators.py:239 +#, python-format +msgid "Invalid URL: %s" +msgstr "Niepoprawny odnoÅ›nik: %s" + +#: core/validators.py:244 core/validators.py:246 +#, python-format +msgid "The URL %s is a broken link." +msgstr "OdnoÅ›nik %s jest nieprawidÅ‚owy." + +#: core/validators.py:252 +msgid "Enter a valid U.S. state abbreviation." +msgstr "Wpisz poprawny kod stanu U.S.A." + +#: core/validators.py:266 +#, python-format +msgid "Watch your mouth! The word %s is not allowed here." +msgid_plural "Watch your mouth! The words %s are not allowed here." +msgstr[0] "Nie wolno przeklinać! SÅ‚owo %s nie jest dozwolone." +msgstr[1] "Nie wolno przeklinać! SÅ‚owa %s nie sÄ… dozwolone." + +#: core/validators.py:273 +#, python-format +msgid "This field must match the '%s' field." +msgstr "To pole musi pasować do pola '%s'." + +#: core/validators.py:292 +msgid "Please enter something for at least one field." +msgstr "ProszÄ™ uzupeÅ‚nić przynajmniej jedno pole." + +#: core/validators.py:301 core/validators.py:312 +msgid "Please enter both fields or leave them both empty." +msgstr "ProszÄ™ uzupeÅ‚nić oba pola lub zostawić je puste." + +#: core/validators.py:320 +#, python-format +msgid "This field must be given if %(field)s is %(value)s" +msgstr "To pole musi być uzupeÅ‚nione, jeÅ›li %(field)s ma wartość %(value)s" + +#: core/validators.py:333 +#, python-format +msgid "This field must be given if %(field)s is not %(value)s" +msgstr "To pole musi być uzupeÅ‚nione, jeÅ›li %(field)s ma wartość innÄ… niż %(value)s" + +#: core/validators.py:352 +msgid "Duplicate values are not allowed." +msgstr "Duplikaty nie sÄ… dozwolone." + +#: core/validators.py:367 +#, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "Ta wartość musi być pomiÄ™dzy %(lower)s a %(upper)s." + +#: core/validators.py:369 +#, python-format +msgid "This value must be at least %s." +msgstr "Ta wartość nie może być mniejsza od %s." + +#: core/validators.py:371 +#, python-format +msgid "This value must be no more than %s." +msgstr "Ta wartość nie może być wiÄ™ksza od %s." + +#: core/validators.py:407 +#, python-format +msgid "This value must be a power of %s." +msgstr "Ta wartość musi być potÄ™gÄ… %s." + +#: core/validators.py:418 +msgid "Please enter a valid decimal number." +msgstr "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ…." + +#: core/validators.py:422 +#, python-format +msgid "Please enter a valid decimal number with at most %s total digit." +msgid_plural "Please enter a valid decimal number with at most %s total digits." +msgstr[0] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… o nie wiÄ™cej niż %s cyfrze." +msgstr[1] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… o nie wiÄ™cej niż %s cyfrach." + +#: core/validators.py:425 +#, python-format +msgid "Please enter a valid decimal number with a whole part of at most %s digit." +msgid_plural "Please enter a valid decimal number with a whole part of at most %s digits." +msgstr[0] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… zawierajÄ…cÄ… nie wiÄ™cej niż %s cyfry." +msgstr[1] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… zawierajÄ…cÄ… nie wiÄ™cej niż %s cyfr." + +#: core/validators.py:428 +#, python-format +msgid "Please enter a valid decimal number with at most %s decimal place." +msgid_plural "Please enter a valid decimal number with at most %s decimal places." +msgstr[0] "" +"ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… z dokÅ‚adnoÅ›ciÄ… do %s miejsca po " +"przecinku." +msgstr[1] "" +"ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… z dokÅ‚adnoÅ›ciÄ… do %s miejsc po " +"przecinku." + +#: core/validators.py:438 +#, python-format +msgid "Make sure your uploaded file is at least %s bytes big." +msgstr "Upewnij siÄ™, że wgrany plik ma conajmniej %s bajtów." + +#: core/validators.py:439 +#, python-format +msgid "Make sure your uploaded file is at most %s bytes big." +msgstr "Upewnij siÄ™, że wgrany plik ma co najwyżej %s bajtów." + +#: core/validators.py:456 +msgid "The format for this field is wrong." +msgstr "Format tego pola jest nieprawidÅ‚owy." + +#: core/validators.py:471 +msgid "This field is invalid." +msgstr "To pole jest nieprawidÅ‚owe." + +#: core/validators.py:507 +#, python-format +msgid "Could not retrieve anything from %s." +msgstr "Nie można nic pobrać z %s." + +#: core/validators.py:510 +#, python-format +msgid "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgstr "URL %(url)s zwróciÅ‚ niepoprawny nagłówek Content-Type '%(contenttype)s'." + +#: core/validators.py:543 +#, python-format +msgid "" +"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " +"\"%(start)s\".)" +msgstr "" +"ProszÄ™ zamknąć tag %(tag)s z linii %(line)s. (Linia zaczyna siÄ™ od \"%(start)" +"s\".)" + +#: core/validators.py:547 +#, python-format +msgid "" +"Some text starting on line %(line)s is not allowed in that context. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Część tekstu od linii %(line)s nie jest dozwolony w tym kontekÅ›cie. (Linia " +"zaczyna siÄ™ od \"%(start)s\".)" + +#: core/validators.py:552 +#, python-format +msgid "" +"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"\"%(attr)s\" w linii %(line)s jest niepoprawnym atrybutem. (Linia zaczyna " +"siÄ™ od \"%(start)s\".)" + +#: core/validators.py:557 +#, python-format +msgid "" +"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" +"(start)s\".)" +msgstr "" +"\"<%(tag)s>\" w linii %(line)s nie jest poprawnym tagiem. (Linia zaczyna siÄ™ " +"od \"%(start)s\".)" + +#: core/validators.py:561 +#, python-format +msgid "" +"A tag on line %(line)s is missing one or more required attributes. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Tag w linii %(line)s nie posiada jednego lub wiÄ™cej wymaganych atrybutów. " +"(Linia zaczyna siÄ™ od \"%(start)s\".)" + +#: core/validators.py:566 +#, python-format +msgid "" +"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " +"starts with \"%(start)s\".)" +msgstr "" +"Atrybut \"%(attr)s\" w linii %(line)s ma niepoprawnÄ… wartość. (Linia zaczyna " +"siÄ™ od \"%(start)s\".)" + +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "%(verbose_name)s zostaÅ‚o pomyÅ›lnie utworzone." + +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "%(verbose_name)s zostaÅ‚o pomyÅ›lnie zmienione." + +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "%(verbose_name)s zostaÅ‚o usuniÄ™te." + +#: newforms/models.py:165 newforms/fields.py:364 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "Wybierz poprawnÄ… wartość. Podana nie jest jednym z dostÄ™pnych wyborów." + +#: newforms/models.py:182 newforms/fields.py:380 newforms/fields.py:456 +msgid "Enter a list of values." +msgstr "Podaj listÄ™ wartoÅ›ci." + +#: newforms/models.py:188 newforms/fields.py:389 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "Wybierz poprawnÄ… wartość. %s nie jest jednym z dostÄ™pnych wyborów." + +#: newforms/fields.py:103 newforms/fields.py:256 +#, python-format +msgid "Ensure this value has at most %d characters." +msgstr "Upewnij siÄ™, że tekst ma co najwyżej %d znaków." + +#: newforms/fields.py:105 newforms/fields.py:258 +#, python-format +msgid "Ensure this value has at least %d characters." +msgstr "Upewnij siÄ™, że tekst ma co najmniej %d znaków." + +#: newforms/fields.py:130 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "Upewnij siÄ™, że ta wartość jest mniejsza lub równa %s." + +#: newforms/fields.py:132 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "Upewnij siÄ™, że ta wartość jest wiÄ™ksza lub równa %s." + +#: newforms/fields.py:165 +msgid "Enter a valid date." +msgstr "Wpisz poprawnÄ… datÄ™." + +#: newforms/fields.py:192 +msgid "Enter a valid time." +msgstr "Wpisz poprawnÄ… godzinÄ™." + +#: newforms/fields.py:228 +msgid "Enter a valid date/time." +msgstr "Wpisz poprawnÄ… datÄ™/godzinÄ™." + +#: newforms/fields.py:242 +msgid "Enter a valid value." +msgstr "Wpisz poprawnÄ… wartość." + +#: newforms/fields.py:289 newforms/fields.py:311 +msgid "Enter a valid URL." +msgstr "Wpisz poprawny URL." + +#: newforms/fields.py:313 +msgid "This URL appears to be a broken link." +msgstr "OdnoÅ›nik %s jest nieprawidÅ‚owy." + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "-y" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "st" +msgstr "-szy" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "nd" +msgstr "-gi" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "-ci" + +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "%(value).1f milion" +msgstr[1] "%(value).1f milionów" + +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "%(value).1f miliard" +msgstr[1] "%(value).1f miliardów" + +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "%(value).1f bilion" +msgstr[1] "%(value).1f bilionów" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "jeden" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "dwa" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "trzy" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "four" +msgstr "cztery" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "pięć" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "sześć" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "siedem" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "osiem" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "dziewięć" + +#: contrib/redirects/models.py:7 +msgid "redirect from" +msgstr "przekieruj z" + +#: contrib/redirects/models.py:8 +msgid "" +"This should be an absolute path, excluding the domain name. Example: '/" +"events/search/'." +msgstr "Podaj peÅ‚nÄ… Å›cieżkÄ™ bez nazwy domeny. PrzykÅ‚ad: '/events/search/'." + +#: contrib/redirects/models.py:9 +msgid "redirect to" +msgstr "przekierowanie do" + +#: contrib/redirects/models.py:10 +msgid "" +"This can be either an absolute path (as above) or a full URL starting with " +"'http://'." +msgstr "Åšcieżka jak wyżej lub peÅ‚ny URL z http://" + +#: contrib/redirects/models.py:13 +msgid "redirect" +msgstr "przekieruj" + +#: contrib/redirects/models.py:14 +msgid "redirects" +msgstr "przekierowania" #: contrib/comments/models.py:67 contrib/comments/models.py:166 msgid "object ID" @@ -74,7 +828,7 @@ msgstr "data/czas dodania" msgid "is public" msgstr "publicznie dostepny" -#: contrib/comments/models.py:85 contrib/admin/views/doc.py:289 +#: contrib/comments/models.py:85 contrib/admin/views/doc.py:304 msgid "IP address" msgstr "Adres IP" @@ -87,8 +841,8 @@ msgid "" "Check this box if the comment is inappropriate. A \"This comment has been " "removed\" message will be displayed instead." msgstr "" -"Zaznacz to pole jeżeli komentarz jest nieodpowiedni. WyÅ›wietlony zostanie tekst \"Ten " -"komentarz zostaÅ‚ usuniÄ™ty\". " +"Zaznacz to pole jeżeli komentarz jest nieodpowiedni. WyÅ›wietlony zostanie " +"tekst \"Ten komentarz zostaÅ‚ usuniÄ™ty\". " #: contrib/comments/models.py:91 msgid "comments" @@ -96,7 +850,7 @@ msgstr "komentarze" #: contrib/comments/models.py:131 contrib/comments/models.py:207 msgid "Content object" -msgstr "Obiekt TreÅ›ci" +msgstr "Obiekt treÅ›ci" #: contrib/comments/models.py:159 #, python-format @@ -109,7 +863,7 @@ msgid "" msgstr "" "Dodane przez %(user)s dnia %(date)s\n" "\n" -"%(comment)y\n" +"%(comment)s\n" "\n" "http://%(domain)s%(url)s" @@ -211,14 +965,11 @@ msgstr "Błędny ID komentarza" msgid "No voting for yourself" msgstr "Nie można gÅ‚osować na siebie" -#: contrib/comments/views/comments.py:28 -msgid "" -"This rating is required because you've entered at least one other rating." -msgstr "" -"Ta ocena jest wymagana gdyż podaÅ‚eÅ› przynajmniej jednÄ… innÄ… ocenÄ™." - +#: contrib/comments/views/comments.py:27 +msgid "This rating is required because you've entered at least one other rating." +msgstr "Ta ocena jest wymagana gdyż podaÅ‚eÅ› przynajmniej jednÄ… innÄ… ocenÄ™." -#: contrib/comments/views/comments.py:112 +#: contrib/comments/views/comments.py:111 #, python-format msgid "" "This comment was posted by a user who has posted fewer than %(count)s " @@ -231,9 +982,13 @@ msgid_plural "" "\n" "%(text)s" msgstr[0] "" +"Ten komentarz zostaÅ‚ wysÅ‚any przez użytkownika, który wysÅ‚aÅ‚ mniej niż %" +"(count)s komentarz:\n" +"\n" +"%(text)s" msgstr[1] "" -#: contrib/comments/views/comments.py:117 +#: contrib/comments/views/comments.py:116 #, python-format msgid "" "This comment was posted by a sketchy user:\n" @@ -244,27 +999,28 @@ msgstr "" "\n" "%(text)s" -#: contrib/comments/views/comments.py:189 +#: contrib/comments/views/comments.py:188 #: contrib/comments/views/comments.py:280 msgid "Only POSTs are allowed" msgstr "Dozwolone tylko POSTy" -#: contrib/comments/views/comments.py:193 +#: contrib/comments/views/comments.py:192 #: contrib/comments/views/comments.py:284 msgid "One or more of the required fields wasn't submitted" msgstr "Jedno lub wiÄ™cej wymaganych pól nie zostaÅ‚o wypeÅ‚nionych" -#: contrib/comments/views/comments.py:197 +#: contrib/comments/views/comments.py:196 #: contrib/comments/views/comments.py:286 msgid "Somebody tampered with the comment form (security violation)" msgstr "KtoÅ› próbowaÅ‚ obejść zabezpieczenia formularza komentarzy" -#: contrib/comments/views/comments.py:207 +#: contrib/comments/views/comments.py:206 #: contrib/comments/views/comments.py:292 msgid "" "The comment form had an invalid 'target' parameter -- the object ID was " "invalid" -msgstr "Formularz komentarza miaÅ‚ niepoprawny parametr 'target' -- ID obiektu byÅ‚o " +msgstr "" +"Formularz komentarza miaÅ‚ niepoprawny parametr 'target' -- ID obiektu byÅ‚o " "niepoprawne" #: contrib/comments/views/comments.py:257 @@ -279,35 +1035,36 @@ msgid "Username:" msgstr "Nazwa użytkownika:" #: contrib/comments/templates/comments/form.html:6 -#: contrib/admin/templates/admin/login.html:20 -msgid "Password:" -msgstr "HasÅ‚o:" - -#: contrib/comments/templates/comments/form.html:6 -msgid "Forgotten your password?" -msgstr "ZapomniaÅ‚eÅ› hasÅ‚o?" - -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/base.html:23 -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/missing_docutils.html:4 #: contrib/admin/templates/admin_doc/view_index.html:5 #: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/index.html:4 #: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 msgid "Log out" msgstr "Wyloguj siÄ™" +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:20 +msgid "Password:" +msgstr "HasÅ‚o:" + +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "ZapomniaÅ‚eÅ› hasÅ‚o?" + #: contrib/comments/templates/comments/form.html:12 msgid "Ratings" msgstr "Oceny" @@ -326,13 +1083,13 @@ msgstr "Opcjonalne" msgid "Post a photo" msgstr "WyÅ›lij zdjÄ™cie" -#: contrib/comments/templates/comments/form.html:27 +#: contrib/comments/templates/comments/form.html:28 #: contrib/comments/templates/comments/freeform.html:5 msgid "Comment:" msgstr "Komentarz:" -#: contrib/comments/templates/comments/form.html:32 -#: contrib/comments/templates/comments/freeform.html:9 +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 msgid "Preview comment" msgstr "PodglÄ…d" @@ -340,6 +1097,22 @@ msgstr "PodglÄ…d" msgid "Your name:" msgstr "Twoje imiÄ™:" +#: contrib/sites/models.py:10 +msgid "domain name" +msgstr "nazwa domeny" + +#: contrib/sites/models.py:11 +msgid "display name" +msgstr "wyÅ›wietlana nazwa" + +#: contrib/sites/models.py:15 +msgid "site" +msgstr "strona" + +#: contrib/sites/models.py:16 +msgid "sites" +msgstr "strony" + #: contrib/admin/filterspecs.py:40 #, python-format msgid "" @@ -350,13 +1123,13 @@ msgstr "" "</ul>\n" #: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 -#: contrib/admin/filterspecs.py:143 +#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 msgid "All" msgstr "Wszystko" #: contrib/admin/filterspecs.py:109 msgid "Any date" -msgstr "Jakolwiek data" +msgstr "Dowolna data" #: contrib/admin/filterspecs.py:110 msgid "Today" @@ -374,18 +1147,6 @@ msgstr "Ten miesiÄ…c" msgid "This year" msgstr "Ten rok" -#: contrib/admin/filterspecs.py:143 -msgid "Yes" -msgstr "Tak" - -#: contrib/admin/filterspecs.py:143 -msgid "No" -msgstr "Nie" - -#: contrib/admin/filterspecs.py:150 -msgid "Unknown" -msgstr "Nieznany" - #: contrib/admin/models.py:16 msgid "action time" msgstr "czas akcji" @@ -414,12 +1175,34 @@ msgstr "log" msgid "log entries" msgstr "logi" -#: contrib/admin/templatetags/admin_list.py:228 +#: contrib/admin/templatetags/admin_list.py:247 msgid "All dates" msgstr "Wszystkie daty" -#: contrib/admin/views/decorators.py:9 contrib/auth/forms.py:36 -#: contrib/auth/forms.py:41 +#: contrib/admin/views/auth.py:19 contrib/admin/views/main.py:260 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "%(name)s \"%(obj)s\" dodany pomyÅ›lnie." + +#: contrib/admin/views/auth.py:24 contrib/admin/views/main.py:264 +#: contrib/admin/views/main.py:350 +msgid "You may edit it again below." +msgstr "Możesz ponownie edytować wpis poniżej." + +#: contrib/admin/views/auth.py:30 +msgid "Add user" +msgstr "Dodaj użytkownika" + +#: contrib/admin/views/auth.py:57 +msgid "Password changed successfully." +msgstr "HasÅ‚o zostaÅ‚o zmienione pomyÅ›lnie." + +#: contrib/admin/views/auth.py:64 +#, python-format +msgid "Change password: %s" +msgstr "ZmieÅ„ hasÅ‚o: %s" + +#: contrib/admin/views/decorators.py:10 contrib/auth/forms.py:60 msgid "" "Please enter a correct username and password. Note that both fields are case-" "sensitive." @@ -427,243 +1210,313 @@ msgstr "" "ProszÄ™ wpisać poprawnÄ… nazwÄ™ użytkownika i hasÅ‚o. Uwaga: wielkość liter ma " "znaczenie." -#: contrib/admin/views/decorators.py:23 +#: contrib/admin/views/decorators.py:24 #: contrib/admin/templates/admin/login.html:25 msgid "Log in" msgstr "Zaloguj siÄ™" -#: contrib/admin/views/decorators.py:61 +#: contrib/admin/views/decorators.py:62 msgid "" "Please log in again, because your session has expired. Don't worry: Your " "submission has been saved." msgstr "" -"Zaloguj siÄ™ ponownie. Twoja sesja wygasÅ‚a lecz twoje zgÅ‚oszenie " -"zostaÅ‚o zapisane." +"Zaloguj siÄ™ ponownie. Twoja sesja wygasÅ‚a lecz twoje zgÅ‚oszenie zostaÅ‚o " +"zapisane." -#: contrib/admin/views/decorators.py:68 +#: contrib/admin/views/decorators.py:69 msgid "" "Looks like your browser isn't configured to accept cookies. Please enable " "cookies, reload this page, and try again." msgstr "" -"Twoja przeglÄ…darka nie chce akceptować ciasteczek. ZmieÅ„ " -"jej ustawienia i spróbuj ponownie." +"Twoja przeglÄ…darka nie chce akceptować ciasteczek. ZmieÅ„ jej ustawienia i " +"spróbuj ponownie." -#: contrib/admin/views/decorators.py:82 +#: contrib/admin/views/decorators.py:83 msgid "Usernames cannot contain the '@' character." msgstr "Nazwy użytkowników nie mogÄ… zawierać znaków '@'." -#: contrib/admin/views/decorators.py:84 +#: contrib/admin/views/decorators.py:85 #, python-format msgid "Your e-mail address is not your username. Try '%s' instead." msgstr "Twój adres e-mail to nie jest twój login. Spróbuj '%s'." -#: contrib/admin/views/main.py:226 -msgid "Site administration" -msgstr "Administracja stronÄ…" +#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 +msgid "tag:" +msgstr "tag:" -#: contrib/admin/views/main.py:260 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." -msgstr "%(name)s \"%(obj)s\" dodany pomyÅ›lnie." +#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 +msgid "filter:" +msgstr "filtr:" -#: contrib/admin/views/main.py:264 contrib/admin/views/main.py:348 -msgid "You may edit it again below." -msgstr "Możesz ponownie edytować wpis poniżej." +#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 +msgid "view:" +msgstr "widok:" -#: contrib/admin/views/main.py:272 contrib/admin/views/main.py:357 +#: contrib/admin/views/doc.py:164 #, python-format -msgid "You may add another %s below." -msgstr "Możesz dodać nowy wpis %s poniżej." +msgid "App %r not found" +msgstr "Aplikacja %r nie zostaÅ‚a znaleziona" -#: contrib/admin/views/main.py:290 +#: contrib/admin/views/doc.py:171 #, python-format -msgid "Add %s" -msgstr "Dodaj %s" +msgid "Model %(name)r not found in app %(label)r" +msgstr "Model %(name)r nie zostaÅ‚ znaleziony w aplikacji %(label)r" -#: contrib/admin/views/main.py:336 +#: contrib/admin/views/doc.py:183 #, python-format -msgid "Added %s." -msgstr "Dodano %s" +msgid "the related `%(label)s.%(type)s` object" +msgstr "powiÄ…zany obiekt `%(label)s.%(type)s`" -#: contrib/admin/views/main.py:336 contrib/admin/views/main.py:338 -#: contrib/admin/views/main.py:340 -msgid "and" -msgstr "i" +#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 +msgid "model:" +msgstr "model:" -#: contrib/admin/views/main.py:338 +#: contrib/admin/views/doc.py:214 #, python-format -msgid "Changed %s." -msgstr "Zmieniono %s" +msgid "related `%(label)s.%(name)s` objects" +msgstr "powiÄ…zane obiekty `%(label)s.%(name)s`" -#: contrib/admin/views/main.py:340 +#: contrib/admin/views/doc.py:219 #, python-format -msgid "Deleted %s." -msgstr "Skasowano %s" +msgid "all %s" +msgstr "wszystkie %s" -#: contrib/admin/views/main.py:343 -msgid "No fields changed." -msgstr "Å»adne pole nie zmienione." - -#: contrib/admin/views/main.py:346 +#: contrib/admin/views/doc.py:224 #, python-format -msgid "The %(name)s \"%(obj)s\" was changed successfully." -msgstr "%(name)s \"%(obj)s\" zostaÅ‚o pomyÅ›lnie zmienione." +msgid "number of %s" +msgstr "liczba %s" -#: contrib/admin/views/main.py:354 +#: contrib/admin/views/doc.py:229 #, python-format -msgid "" -"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." -msgstr "" -"%(name)s \"%(obj)s\" dodane pomyÅ›lnie. Możesz edytować ponownie wpis poniżej." - +msgid "Fields on %s objects" +msgstr "Pola obiektów %s" -#: contrib/admin/views/main.py:392 -#, python-format -msgid "Change %s" -msgstr "ZmieÅ„ %s" - -#: contrib/admin/views/main.py:470 -#, python-format -msgid "One or more %(fieldname)s in %(name)s: %(obj)s" -msgstr "Jedno lub wiÄ™cej %(fieldname)s w %(name)s: %(obj)s" - -#: contrib/admin/views/main.py:475 -#, python-format -msgid "One or more %(fieldname)s in %(name)s:" -msgstr "Jedno lub wiÄ™cej %(fieldname)s w %(name)s:" - -#: contrib/admin/views/main.py:508 -#, python-format -msgid "The %(name)s \"%(obj)s\" was deleted successfully." -msgstr "%(name)s \"%(obj)s\" usuniÄ™ty pomyÅ›lnie." - -#: contrib/admin/views/main.py:511 -msgid "Are you sure?" -msgstr "JesteÅ› pewien?" - -#: contrib/admin/views/main.py:533 -#, python-format -msgid "Change history: %s" -msgstr "Historia zmian: %s" - -#: contrib/admin/views/main.py:565 -#, python-format -msgid "Select %s" -msgstr "Zaznacz %s" - -#: contrib/admin/views/main.py:565 -#, python-format -msgid "Select %s to change" -msgstr "Zaznacz %s aby zmienić" - -#: contrib/admin/views/doc.py:277 contrib/admin/views/doc.py:286 -#: contrib/admin/views/doc.py:288 contrib/admin/views/doc.py:294 -#: contrib/admin/views/doc.py:295 contrib/admin/views/doc.py:297 +#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 msgid "Integer" msgstr "Liczba caÅ‚kowita" -#: contrib/admin/views/doc.py:278 +#: contrib/admin/views/doc.py:292 msgid "Boolean (Either True or False)" msgstr "Wartość logiczna (True, False - prawda lub faÅ‚sz)" -#: contrib/admin/views/doc.py:279 contrib/admin/views/doc.py:296 +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 #, python-format msgid "String (up to %(maxlength)s)" msgstr "ÅaÅ„cuch (do %(maxlength)s znaków)" -#: contrib/admin/views/doc.py:280 +#: contrib/admin/views/doc.py:294 msgid "Comma-separated integers" msgstr "Liczby caÅ‚kowite rozdzielone przecinkami" -#: contrib/admin/views/doc.py:281 +#: contrib/admin/views/doc.py:295 msgid "Date (without time)" msgstr "Data (bez godziny)" -#: contrib/admin/views/doc.py:282 +#: contrib/admin/views/doc.py:296 msgid "Date (with time)" msgstr "Data (z godzinÄ…)" -#: contrib/admin/views/doc.py:283 +#: contrib/admin/views/doc.py:297 msgid "E-mail address" msgstr "Adres e-mail" -#: contrib/admin/views/doc.py:284 contrib/admin/views/doc.py:287 +#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 msgid "File path" msgstr "Åšcieżka do pliku" -#: contrib/admin/views/doc.py:285 +#: contrib/admin/views/doc.py:300 msgid "Decimal number" msgstr "Numer dziesiÄ™tny" -#: contrib/admin/views/doc.py:291 +#: contrib/admin/views/doc.py:306 msgid "Boolean (Either True, False or None)" msgstr "Wartość logiczna (True, False, None - prawda, faÅ‚sz lub nic)" -#: contrib/admin/views/doc.py:292 +#: contrib/admin/views/doc.py:307 msgid "Relation to parent model" msgstr "Relacja do modelu rodzica" -#: contrib/admin/views/doc.py:293 +#: contrib/admin/views/doc.py:308 msgid "Phone number" msgstr "Numer telefonu" -#: contrib/admin/views/doc.py:298 +#: contrib/admin/views/doc.py:313 msgid "Text" msgstr "Tekst" -#: contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:314 msgid "Time" msgstr "Czas" -#: contrib/admin/views/doc.py:300 contrib/flatpages/models.py:7 +#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 msgid "URL" msgstr "URL" -#: contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:316 msgid "U.S. state (two uppercase letters)" msgstr "Stan USA (dwie duże litery)" -#: contrib/admin/views/doc.py:302 +#: contrib/admin/views/doc.py:317 msgid "XML text" msgstr "Tekst XML" -#: contrib/admin/templates/admin/object_history.html:3 +#: contrib/admin/views/doc.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "%s nie jest obiektem urlpattern" + +#: contrib/admin/views/main.py:226 +msgid "Site administration" +msgstr "Administracja stronÄ…" + +#: contrib/admin/views/main.py:274 contrib/admin/views/main.py:359 +#, python-format +msgid "You may add another %s below." +msgstr "Możesz dodać nowy wpis %s poniżej." + +#: contrib/admin/views/main.py:292 +#, python-format +msgid "Add %s" +msgstr "Dodaj %s" + +#: contrib/admin/views/main.py:338 +#, python-format +msgid "Added %s." +msgstr "Dodano %s" + +#: contrib/admin/views/main.py:340 +#, python-format +msgid "Changed %s." +msgstr "Zmieniono %s" + +#: contrib/admin/views/main.py:342 +#, python-format +msgid "Deleted %s." +msgstr "Skasowano %s" + +#: contrib/admin/views/main.py:345 +msgid "No fields changed." +msgstr "Å»adne pole nie zmienione." + +#: contrib/admin/views/main.py:348 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." +msgstr "%(name)s \"%(obj)s\" zostaÅ‚o pomyÅ›lnie zmienione." + +#: contrib/admin/views/main.py:356 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +msgstr "%(name)s \"%(obj)s\" dodane pomyÅ›lnie. Możesz edytować ponownie wpis poniżej." + +#: contrib/admin/views/main.py:394 +#, python-format +msgid "Change %s" +msgstr "ZmieÅ„ %s" + +#: contrib/admin/views/main.py:479 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +msgstr "Jedno lub wiÄ™cej %(fieldname)s w %(name)s: %(obj)s" + +#: contrib/admin/views/main.py:484 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" +msgstr "Jedno lub wiÄ™cej %(fieldname)s w %(name)s:" + +#: contrib/admin/views/main.py:517 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." +msgstr "%(name)s \"%(obj)s\" usuniÄ™ty pomyÅ›lnie." + +#: contrib/admin/views/main.py:520 +msgid "Are you sure?" +msgstr "JesteÅ› pewien?" + +#: contrib/admin/views/main.py:542 +#, python-format +msgid "Change history: %s" +msgstr "Historia zmian: %s" + +#: contrib/admin/views/main.py:576 +#, python-format +msgid "Select %s" +msgstr "Zaznacz %s" + +#: contrib/admin/views/main.py:576 +#, python-format +msgid "Select %s to change" +msgstr "Zaznacz %s aby zmienić" + +#: contrib/admin/views/main.py:771 +msgid "Database error" +msgstr "Błąd bazy danych" + +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" +msgstr "Teraz:" + +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" +msgstr "ZmieÅ„:" + +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" +msgstr "Data:" + +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" +msgstr "Czas:" + #: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/base.html:23 -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 #: contrib/admin/templates/admin_doc/bookmarklets.html:3 msgid "Documentation" msgstr "Dokumentacja" -#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_list.html:5 -#: contrib/admin/templates/admin/base.html:23 -#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_form.html:10 +#: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin/auth/user/change_password.html:15 +#: contrib/admin/templates/admin/auth/user/change_password.html:46 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/missing_docutils.html:4 #: contrib/admin/templates/admin_doc/view_index.html:5 #: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/index.html:4 #: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 msgid "Change password" msgstr "Zmiana hasÅ‚a" +#: contrib/admin/templates/admin/change_list.html:6 #: contrib/admin/templates/admin/object_history.html:5 #: contrib/admin/templates/admin/500.html:4 -#: contrib/admin/templates/admin/change_list.html:6 -#: contrib/admin/templates/admin/base.html:28 -#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/invalid_setup.html:4 #: contrib/admin/templates/admin/change_form.html:13 +#: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/base.html:30 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 #: contrib/admin/templates/registration/password_change_done.html:4 #: contrib/admin/templates/registration/password_reset_form.html:4 #: contrib/admin/templates/registration/logged_out.html:4 @@ -673,8 +1526,18 @@ msgstr "Zmiana hasÅ‚a" msgid "Home" msgstr "PoczÄ…tek" +#: contrib/admin/templates/admin/change_list.html:12 +#, python-format +msgid "Add %(name)s" +msgstr "Dodaj %(name)s" + +#: contrib/admin/templates/admin/filter.html:2 +#, python-format +msgid " By %(filter_title)s " +msgstr " UżywajÄ…c %(filter_title)s " + #: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/change_form.html:20 +#: contrib/admin/templates/admin/change_form.html:21 msgid "History" msgstr "Historia" @@ -699,8 +1562,28 @@ msgid "" "This object doesn't have a change history. It probably wasn't added via this " "admin site." msgstr "" -"Ten obiekt nie ma historii zmian. Najprawdopodobniej wpis te nie " -"zostaÅ‚ dodany poprzez panel admina" +"Ten obiekt nie ma historii zmian. Najprawdopodobniej wpis ten nie zostaÅ‚ " +"dodany poprzez panel administracyjny." + +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" +msgstr "Szukaj" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "1 result" +msgid_plural "%(counter)s results" +msgstr[0] "1 wynik" +msgstr[1] "%(counter)s wyników" + +#: contrib/admin/templates/admin/search_form.html:10 +#, python-format +msgid "%(full_result_count)s total" +msgstr "%(full_result_count)s trafieÅ„" + +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" +msgstr "Pokaż wszystko" #: contrib/admin/templates/admin/base_site.html:4 msgid "Django site admin" @@ -727,23 +1610,29 @@ msgid "" "There's been an error. It's been reported to the site administrators via e-" "mail and should be fixed shortly. Thanks for your patience." msgstr "" -"WystÄ…piÅ‚ niespodziewany błąd. Raport zostaÅ‚ wysÅ‚any emailem " -"administratorowi strony." - -#: contrib/admin/templates/admin/404.html:4 -#: contrib/admin/templates/admin/404.html:8 -msgid "Page not found" -msgstr "Strona nie znaleziona" +"WystÄ…piÅ‚ niespodziewany błąd. Raport zostaÅ‚ wysÅ‚any emailem administratorowi " +"strony." -#: contrib/admin/templates/admin/404.html:10 -msgid "We're sorry, but the requested page could not be found." -msgstr "Niestety nie można znaleźć rzÄ…danej strony." +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "" +"Instalacja Twojej bazy danych jest niepoprawna. Upewnij siÄ™, że odpowiednie " +"tabele zostaÅ‚y utworzone i odpowiedni użytkownik jest uprawniony do ich " +"odczytu." #: contrib/admin/templates/admin/index.html:17 #, python-format msgid "Models available in the %(name)s application." msgstr "Modele dostÄ™pne w aplikacji %(name)s." +#: contrib/admin/templates/admin/index.html:18 +#, python-format +msgid "%(name)s" +msgstr "%(name)s" + #: contrib/admin/templates/admin/index.html:28 #: contrib/admin/templates/admin/change_form.html:15 msgid "Add" @@ -769,75 +1658,70 @@ msgstr "Moje akcje" msgid "None available" msgstr "Brak" -#: contrib/admin/templates/admin/change_list.html:11 -#, python-format -msgid "Add %(name)s" -msgstr "Dodaj %(name)s" +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 +msgid "Page not found" +msgstr "Strona nie znaleziona" -#: contrib/admin/templates/admin/login.html:22 -msgid "Have you <a href=\"/password_reset/\">forgotten your password</a>?" -msgstr "" -"Czy <a href=\"/password_reset/\">zapomniaÅ‚eÅ›/Å‚aÅ›</a> hasÅ‚a?" +#: contrib/admin/templates/admin/404.html:10 +msgid "We're sorry, but the requested page could not be found." +msgstr "Niestety nie można znaleźć rzÄ…danej strony." -#: contrib/admin/templates/admin/base.html:23 -msgid "Welcome," -msgstr "Witaj," +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "Filtr" + +#: contrib/admin/templates/admin/change_form.html:22 +msgid "View on site" +msgstr "Pokaż na stronie" + +#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/auth/user/change_password.html:24 +msgid "Please correct the error below." +msgid_plural "Please correct the errors below." +msgstr[0] "ProszÄ™ popraw poniższy błąd" +msgstr[1] "ProszÄ™ popraw poniższe błędy" + +#: contrib/admin/templates/admin/change_form.html:50 +msgid "Ordering" +msgstr "Sortowanie" + +#: contrib/admin/templates/admin/change_form.html:53 +msgid "Order:" +msgstr "PorzÄ…dek:" #: contrib/admin/templates/admin/delete_confirmation.html:9 #: contrib/admin/templates/admin/submit_line.html:3 msgid "Delete" -msgstr "Skasuj" +msgstr "UsuÅ„" #: contrib/admin/templates/admin/delete_confirmation.html:14 #, python-format msgid "" -"Deleting the %(object_name)s '%(object)s' would result in deleting related " -"objects, but your account doesn't have permission to delete the following " -"types of objects:" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" msgstr "" -"Skasowanie %(object_name)s '%(object)s' spowoduje kasacjÄ™ zależnych " -"obiektów, lecz twoje uprawnienia nie pozwalajÄ… na usuniÄ™cie nastÄ™pujÄ…cych " +"Skasowanie %(object_name)s '%(escaped_object)s' spowoduje usuniÄ™cie " +"zależnych obiektów, lecz nie posiadasz uprawnieÅ„ do usuniÄ™cia nastÄ™pujÄ…cych " "typów obiektów:" #: contrib/admin/templates/admin/delete_confirmation.html:21 #, python-format msgid "" -"Are you sure you want to delete the %(object_name)s \"%(object)s\"? All of " -"the following related items will be deleted:" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" msgstr "" -"Czy chcesz skasować %(object_name)s \"%(object)s\"? Wszystkie " +"Czy chcesz skasować %(object_name)s \"%(escaped_object)s\"? NastÄ™pujÄ…ce " "zależne obiekty zostanÄ… skasowane:" #: contrib/admin/templates/admin/delete_confirmation.html:26 msgid "Yes, I'm sure" msgstr "Tak, usuÅ„" -#: contrib/admin/templates/admin/filter.html:2 -#, python-format -msgid " By %(title)s " -msgstr "UżywajÄ…c %(title)s" - -#: contrib/admin/templates/admin/search_form.html:8 -msgid "Go" -msgstr "Szukaj" - -#: contrib/admin/templates/admin/change_form.html:21 -msgid "View on site" -msgstr "Pokaż na stronie" - -#: contrib/admin/templates/admin/change_form.html:30 -msgid "Please correct the error below." -msgid_plural "Please correct the errors below." -msgstr[0] "ProszÄ™ popraw poniższy błąd" -msgstr[1] "ProszÄ™ popraw poniższe błędy" - -#: contrib/admin/templates/admin/change_form.html:48 -msgid "Ordering" -msgstr "Sortowanie" - -#: contrib/admin/templates/admin/change_form.html:51 -msgid "Order:" -msgstr "PorzÄ…dek:" +#: contrib/admin/templates/admin/base.html:25 +msgid "Welcome," +msgstr "Witaj," #: contrib/admin/templates/admin/submit_line.html:4 msgid "Save as new" @@ -855,6 +1739,38 @@ msgstr "Zapisz i kontynuuj edycjÄ™" msgid "Save" msgstr "Zapisz" +#: contrib/admin/templates/admin/auth/user/change_password.html:28 +#, python-format +msgid "Enter a new password for the user <strong>%(username)s</strong>." +msgstr "Podaj nowe hasÅ‚o dla użytkownika <strong>%(username)s</strong>." + +#: contrib/admin/templates/admin/auth/user/change_password.html:34 +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +msgid "Password" +msgstr "HasÅ‚o" + +#: contrib/admin/templates/admin/auth/user/change_password.html:39 +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +msgid "Password (again)" +msgstr "HasÅ‚o (powtórz)" + +#: contrib/admin/templates/admin/auth/user/change_password.html:40 +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +msgid "Enter the same password as above, for verification." +msgstr "Podaj powyższe hasÅ‚o w celu weryfikacji." + +#: contrib/admin/templates/admin/auth/user/add_form.html:6 +msgid "" +"First, enter a username and password. Then, you'll be able to edit more user " +"options." +msgstr "" +"Najpierw podaj nazwÄ™ użytkownika i hasÅ‚o. NastÄ™pnie bÄ™dziesz mógÅ‚ edytować " +"wiÄ™cej opcji użytkownika." + +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" +msgstr "Nazwa użytkownika" + #: contrib/admin/templates/registration/password_change_done.html:4 #: contrib/admin/templates/registration/password_change_form.html:4 #: contrib/admin/templates/registration/password_change_form.html:6 @@ -883,8 +1799,8 @@ msgid "" "Forgotten your password? Enter your e-mail address below, and we'll reset " "your password and e-mail the new one to you." msgstr "" -"Podaj swój adres email. HasÅ‚o zostanie zresetowane i wysÅ‚ane na twój " -"adres email." +"Podaj swój adres email. HasÅ‚o zostanie zresetowane i wysÅ‚ane na twój adres " +"email." #: contrib/admin/templates/registration/password_reset_form.html:16 msgid "E-mail address:" @@ -912,8 +1828,8 @@ msgid "" "We've e-mailed a new password to the e-mail address you submitted. You " "should be receiving it shortly." msgstr "" -"Nowe hasÅ‚o zostaÅ‚o wysÅ‚ane na podany adres email. PowinieneÅ› " -"otrzymać je niebawem." +"Nowe hasÅ‚o zostaÅ‚o wysÅ‚ane na podany adres email. PowinieneÅ› otrzymać je " +"niebawem." #: contrib/admin/templates/registration/password_change_form.html:12 msgid "" @@ -986,6 +1902,14 @@ msgid "" "as \"internal\" (talk to your system administrator if you aren't sure if\n" "your computer is \"internal\").</p>\n" msgstr "" +"\n" +"<p class=\"help\">Aby zainstalować skryptozakÅ‚adki, przeciÄ…gnij łącze do " +"paska zakÅ‚adek\n" +"lub kliknij prawym klawiszem na łączu i dodaj je do zakÅ‚adek. Teraz możesz\n" +"wybrać skryptozakÅ‚adkÄ™ na dowolnej stronie serwisu. Uwaga: niektóre z tych " +"skryptozakÅ‚adek wymagajÄ… przeglÄ…dania serwisu z komputera\n" +"\"wewnÄ™trznego\" (skontaktuj siÄ™ z administratorem systemu, jeÅ›li nie jesteÅ› " +"pewien, czy ten komputer jest \"wewnÄ™trznym\").</p>\n" #: contrib/admin/templates/admin_doc/bookmarklets.html:19 msgid "Documentation for this page" @@ -996,6 +1920,8 @@ msgid "" "Jumps you from any page to the documentation for the view that generates " "that page." msgstr "" +"Przekierowuje z dowolnej strony do dokumentacji dla widoku, który jÄ… " +"generuje." #: contrib/admin/templates/admin_doc/bookmarklets.html:22 msgid "Show object ID" @@ -1005,13 +1931,11 @@ msgstr "Pokaż ID obiektu" msgid "" "Shows the content-type and unique ID for pages that represent a single " "object." -msgstr "" -"Pokazuje typ i unikalne ID dla stron, które reprezentujÄ… " -"pojedynczy obiekt." +msgstr "Pokazuje typ i unikalne ID dla stron, które reprezentujÄ… pojedynczy obiekt." #: contrib/admin/templates/admin_doc/bookmarklets.html:25 msgid "Edit this object (current window)" -msgstr "Edytuj ten obiekt (bierzÄ…ce okno)" +msgstr "Edytuj ten obiekt (bieżące okno)" #: contrib/admin/templates/admin_doc/bookmarklets.html:26 msgid "Jumps to the admin page for pages that represent a single object." @@ -1025,172 +1949,123 @@ msgstr "Edytuj ten obiekt (nowe onko)" msgid "As above, but opens the admin page in a new window." msgstr "Jak wyżej, tyle że otwiera nowe okno." -#: contrib/admin/templates/widget/date_time.html:3 -msgid "Date:" -msgstr "Data:" - -#: contrib/admin/templates/widget/date_time.html:4 -msgid "Time:" -msgstr "Czas:" - -#: contrib/admin/templates/widget/file.html:2 -msgid "Currently:" -msgstr "Teraz:" - -#: contrib/admin/templates/widget/file.html:3 -msgid "Change:" -msgstr "ZmieÅ„:" - -#: contrib/redirects/models.py:7 -msgid "redirect from" -msgstr "przekieruj z" - -#: contrib/redirects/models.py:8 -msgid "" -"This should be an absolute path, excluding the domain name. Example: '/" -"events/search/'." -msgstr "" -"Podaj peÅ‚nÄ… Å›cieżkÄ™ bez nazwy domeny. PrzykÅ‚ad: '/" -"events/search/'." - -#: contrib/redirects/models.py:9 -msgid "redirect to" -msgstr "przekierowanie do" - -#: contrib/redirects/models.py:10 -msgid "" -"This can be either an absolute path (as above) or a full URL starting with " -"'http://'." -msgstr "Åšcieżka jak wyżej lub peÅ‚ny URL z http://" - -#: contrib/redirects/models.py:12 -msgid "redirect" -msgstr "przekieruj" - -#: contrib/redirects/models.py:13 -msgid "redirects" -msgstr "przekierowania" - -#: contrib/flatpages/models.py:8 -msgid "" -"Example: '/about/contact/'. Make sure to have leading and trailing slashes." -msgstr "" -"PrzykÅ‚ad: '/about/contact/'. Upewnij siÄ™ że wpisaÅ‚eÅ› otwierajÄ…cy i zamykajÄ…cy slash." - - -#: contrib/flatpages/models.py:9 -msgid "title" -msgstr "tytuÅ‚" - -#: contrib/flatpages/models.py:10 -msgid "content" -msgstr "zawartość" - -#: contrib/flatpages/models.py:11 -msgid "enable comments" -msgstr "włącz komentarze" - -#: contrib/flatpages/models.py:12 -msgid "template name" -msgstr "nazwa szablonu" - -#: contrib/flatpages/models.py:13 -msgid "" -"Example: 'flatpages/contact_page'. If this isn't provided, the system will " -"use 'flatpages/default'." -msgstr "" -"PrzykÅ‚ad: 'flatpages/contact_page'. Jeżeli nie podane system użyje " -"'flatpages/default'." - -#: contrib/flatpages/models.py:14 -msgid "registration required" -msgstr "wymagana rejestracja" +#: contrib/contenttypes/models.py:36 +msgid "python model class name" +msgstr "nazwa pythonowa modelu klasy" -#: contrib/flatpages/models.py:14 -msgid "If this is checked, only logged-in users will be able to view the page." -msgstr "Jeżeli zaznaczone - tylko zalogowani użytkownicy bÄ™dÄ… mogli zobaczyć stronÄ™." +#: contrib/contenttypes/models.py:39 +msgid "content type" +msgstr "typ zawartoÅ›ci" -#: contrib/flatpages/models.py:18 -msgid "flat page" -msgstr "strona statyczna" +#: contrib/contenttypes/models.py:40 +msgid "content types" +msgstr "typy zawartoÅ›ci" -#: contrib/flatpages/models.py:19 -msgid "flat pages" -msgstr "strony statyczne" +#: contrib/auth/views.py:40 +msgid "Logged out" +msgstr "Wylogowany" -#: contrib/auth/models.py:13 contrib/auth/models.py:26 +#: contrib/auth/models.py:44 contrib/auth/models.py:64 msgid "name" msgstr "nazwa" -#: contrib/auth/models.py:15 +#: contrib/auth/models.py:46 msgid "codename" msgstr "nazwa kodowa" -#: contrib/auth/models.py:17 +#: contrib/auth/models.py:49 msgid "permission" msgstr "uprawnienie" -#: contrib/auth/models.py:18 contrib/auth/models.py:27 +#: contrib/auth/models.py:50 contrib/auth/models.py:65 msgid "permissions" msgstr "uprawnienia" -#: contrib/auth/models.py:29 +#: contrib/auth/models.py:68 msgid "group" msgstr "grupa" -#: contrib/auth/models.py:30 contrib/auth/models.py:65 +#: contrib/auth/models.py:69 contrib/auth/models.py:109 msgid "groups" msgstr "grupy" -#: contrib/auth/models.py:55 +#: contrib/auth/models.py:99 msgid "username" msgstr "użytkownik" -#: contrib/auth/models.py:56 +#: contrib/auth/models.py:99 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." +msgstr "" +"Wymagane. 30 znaków lub mniej. Tylko znaki alfanumeryczne (litery, cyfry i " +"podkreÅ›lenia)." + +#: contrib/auth/models.py:100 msgid "first name" msgstr "ImiÄ™" -#: contrib/auth/models.py:57 +#: contrib/auth/models.py:101 msgid "last name" msgstr "Nazwisko" -#: contrib/auth/models.py:58 +#: contrib/auth/models.py:102 msgid "e-mail address" msgstr "adres e-mail" -#: contrib/auth/models.py:59 +#: contrib/auth/models.py:103 msgid "password" msgstr "hasÅ‚o" -#: contrib/auth/models.py:59 -msgid "Use '[algo]$[salt]$[hexdigest]'" -msgstr "Użyj '[algo]$[salt]$[hexdigest]'" +#: contrib/auth/models.py:103 +msgid "" +"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " +"password form</a>." +msgstr "" +"Użyj '[algo]$[salt]$[hexdigest]' lub <a href=\"password/\">formularza zmiany " +"hasÅ‚a</a>." -#: contrib/auth/models.py:60 +#: contrib/auth/models.py:104 msgid "staff status" msgstr "w zespole" -#: contrib/auth/models.py:60 +#: contrib/auth/models.py:104 msgid "Designates whether the user can log into this admin site." msgstr "Oznacza czy użytkownik może zalogować siÄ™ do panelu admina." -#: contrib/auth/models.py:61 +#: contrib/auth/models.py:105 msgid "active" msgstr "aktywny" -#: contrib/auth/models.py:62 +#: contrib/auth/models.py:105 +msgid "" +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." +msgstr "" +"Oznacza czy użytkownik może zalogować siÄ™ do panelu administratora. Odznacz " +"to zamiast usuwać konta." + +#: contrib/auth/models.py:106 msgid "superuser status" msgstr "Główny Administrator" -#: contrib/auth/models.py:63 +#: contrib/auth/models.py:106 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "" +"Oznacza, że ten użytkownik ma wszystkie uprawnienia bez jawnego " +"przypisywania ich." + +#: contrib/auth/models.py:107 msgid "last login" msgstr "ostatnio zalogowany" -#: contrib/auth/models.py:64 +#: contrib/auth/models.py:108 msgid "date joined" msgstr "data przyłączenia" -#: contrib/auth/models.py:66 +#: contrib/auth/models.py:110 msgid "" "In addition to the permissions manually assigned, this user will also get " "all permissions granted to each group he/she is in." @@ -1198,106 +2073,607 @@ msgstr "" "Oprócz uprawnieÅ„ przypisanych bezpoÅ›rednio użytkownikowi otrzyma on " "uprawnienia grup, do których należy." -#: contrib/auth/models.py:67 +#: contrib/auth/models.py:111 msgid "user permissions" msgstr "uprawnienia użytkownika" -#kurwa -#: contrib/auth/models.py:70 +# kurwa +#: contrib/auth/models.py:115 msgid "user" msgstr "użytkownik" -#: contrib/auth/models.py:71 +#: contrib/auth/models.py:116 msgid "users" msgstr "użytkownicy" -#: contrib/auth/models.py:76 +#: contrib/auth/models.py:122 msgid "Personal info" msgstr "Dane osobowe" -#: contrib/auth/models.py:77 +#: contrib/auth/models.py:123 msgid "Permissions" msgstr "Uprawnienia" -#: contrib/auth/models.py:78 +#: contrib/auth/models.py:124 msgid "Important dates" msgstr "Ważne daty" -#: contrib/auth/models.py:79 +#: contrib/auth/models.py:125 msgid "Groups" msgstr "Grupy" -#: contrib/auth/models.py:219 +#: contrib/auth/models.py:269 msgid "message" msgstr "wiadomość" -#: contrib/auth/forms.py:30 +#: contrib/auth/models.py:282 +msgid "AnonymousUser" +msgstr "UżytkownikAnonimowy" + +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 +msgid "The two password fields didn't match." +msgstr "HasÅ‚a siÄ™ nie zgadzajÄ…." + +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." +msgstr "Użytkownik o tej nazwie już istnieje." + +#: contrib/auth/forms.py:53 msgid "" "Your Web browser doesn't appear to have cookies enabled. Cookies are " "required for logging in." msgstr "" -"Twoja przeglÄ…darka nie chce akceptować ciasteczek. SÄ… one " -"wymagane do zalogowania siÄ™." +"Twoja przeglÄ…darka nie chce akceptować ciasteczek. SÄ… one wymagane do " +"zalogowania siÄ™." -#: contrib/contenttypes/models.py:25 -msgid "python model class name" -msgstr "nazwa pythonowa modelu klasy" +#: contrib/auth/forms.py:62 +msgid "This account is inactive." +msgstr "To konto jest nieaktywne." -#: contrib/contenttypes/models.py:28 -msgid "content type" -msgstr "typ zawartoÅ›ci" +#: contrib/auth/forms.py:85 +msgid "" +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "" +"Ten adres e-mail nie ma przypisanego konta. JesteÅ› pewien, że " +"zarejestrowaÅ‚eÅ› siÄ™?" -#: contrib/contenttypes/models.py:29 -msgid "content types" -msgstr "typy zawartoÅ›ci" +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." +msgstr "Pola 'nowe hasÅ‚o' nie zgadzajÄ… siÄ™." + +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." +msgstr "Podane stare hasÅ‚o jest niepoprawne. ProszÄ™ podać je jeszcze raz." + +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "Wpisz kod pocztowy. BiaÅ‚y znak pomiÄ™dzy dwiema częściami kodu jest wymagany." + +#: contrib/localflavor/br/forms.py:18 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "Wpisz kod pocztowy w formacie XXXXX-XXX." + +#: contrib/localflavor/br/forms.py:30 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "Numery telefoniczne muszÄ… być w formacie XX-XXXX-XXXX." + +#: contrib/localflavor/br/forms.py:72 +msgid "This field requires only numbers." +msgstr "To pole może zawierać jedynie liczby." + +#: contrib/localflavor/br/forms.py:74 +msgid "This field requires at most 11 digits or 14 characters." +msgstr "To pole nie może zawierać wiÄ™cej niż 11 cyfr lub 14 znaków." + +#: contrib/localflavor/br/forms.py:84 +msgid "Invalid CPF number." +msgstr "Błędny numer CPF." + +#: contrib/localflavor/br/forms.py:106 +msgid "This field requires at least 14 digits" +msgstr "To pole musi zawierać co najmniej 14 cyfr." + +#: contrib/localflavor/br/forms.py:116 +msgid "Invalid CNPJ number." +msgstr "Błędny numer CNPJ." + +#: contrib/localflavor/au/forms.py:18 +msgid "Enter a 4 digit post code." +msgstr "Wpisz czterocyfrowy kod pocztowy." + +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/de/forms.py:16 +#: contrib/localflavor/fi/forms.py:14 +msgid "Enter a zip code in the format XXXXX." +msgstr "Wpisz kod pocztowy w formacie XXXXX." + +#: contrib/localflavor/us/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "Wpisz kod pocztowy w formacie XXXXX. lub XXXXX-XXXX." + +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +msgstr "Wpisz poprawny numer U.S. Social Security w formacie XXX-XX-XXXX." + +#: contrib/localflavor/de/de_states.py:5 +msgid "Baden-Wuerttemberg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:6 +msgid "Bavaria" +msgstr "" + +#: contrib/localflavor/de/de_states.py:7 +msgid "Berlin" +msgstr "" + +#: contrib/localflavor/de/de_states.py:8 +msgid "Brandenburg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:9 +msgid "Bremen" +msgstr "" + +#: contrib/localflavor/de/de_states.py:10 +msgid "Hamburg" +msgstr "" + +#: contrib/localflavor/de/de_states.py:11 +msgid "Hessen" +msgstr "" + +#: contrib/localflavor/de/de_states.py:12 +msgid "Mecklenburg-Western Pomerania" +msgstr "" + +#: contrib/localflavor/de/de_states.py:13 +msgid "Lower Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:14 +msgid "North Rhine-Westphalia" +msgstr "" + +#: contrib/localflavor/de/de_states.py:15 +msgid "Rhineland-Palatinate" +msgstr "" + +#: contrib/localflavor/de/de_states.py:16 +msgid "Saarland" +msgstr "" -#: contrib/sessions/models.py:35 +#: contrib/localflavor/de/de_states.py:17 +msgid "Saxony" +msgstr "" + +#: contrib/localflavor/de/de_states.py:18 +msgid "Saxony-Anhalt" +msgstr "" + +#: contrib/localflavor/de/de_states.py:19 +msgid "Schleswig-Holstein" +msgstr "" + +#: contrib/localflavor/de/de_states.py:20 +msgid "Thuringia" +msgstr "" + +#: contrib/localflavor/de/forms.py:60 +msgid "" +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." +msgstr "" +"Podaj poprawny niemiecki numer dowodu osobistego w formacie XXXXXXXXXXX-" +"XXXXXXX-XXXXXXX-X." + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "" + +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "Wpisz kod pocztowy w formacie XXXXXXX lub XXX-XXXX." + +#: contrib/localflavor/it/forms.py:16 +msgid "Enter a valid zip code." +msgstr "Wpisz poprawny kod pocztowy." + +#: contrib/localflavor/it/forms.py:41 +msgid "Enter a valid Social Security number." +msgstr "Wpisz poprawny numer ubezpieczenia socjalnego." + +#: contrib/localflavor/it/forms.py:68 +msgid "Enter a valid VAT number." +msgstr "Wpisz poprawny numer VAT." + +#: contrib/localflavor/no/forms.py:15 contrib/localflavor/ch/forms.py:18 +msgid "Enter a zip code in the format XXXX." +msgstr "Wpisz kod pocztowy w formacie XXXX." + +#: contrib/localflavor/no/forms.py:36 +msgid "Enter a valid Norwegian social security number." +msgstr "Wpis poprawny numer norweskiego ubezpieczenia socjalnego." + +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:45 +msgid "Enter a valid Finnish social security number." +msgstr "Wpis poprawny numer fiÅ„skiego ubezpieczenia socjalnego." + +#: contrib/localflavor/ch/ch_states.py:5 +msgid "Aargau" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:6 +msgid "Appenzell Innerrhoden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:7 +msgid "Appenzell Ausserrhoden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:8 +msgid "Basel-Stadt" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:9 +msgid "Basel-Land" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:10 +msgid "Berne" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:11 +msgid "Fribourg" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:12 +msgid "Geneva" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:13 +msgid "Glarus" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:14 +msgid "Graubuenden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:15 +msgid "Jura" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:16 +msgid "Lucerne" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:17 +msgid "Neuchatel" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:18 +msgid "Nidwalden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:19 +msgid "Obwalden" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:20 +msgid "Schaffhausen" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:21 +msgid "Schwyz" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:22 +msgid "Solothurn" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:23 +msgid "St. Gallen" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:24 +msgid "Thurgau" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:25 +msgid "Ticino" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:26 +msgid "Uri" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:27 +msgid "Valais" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:28 +msgid "Vaud" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:29 +msgid "Zug" +msgstr "" + +#: contrib/localflavor/ch/ch_states.py:30 +msgid "Zurich" +msgstr "" + +#: contrib/localflavor/ch/forms.py:90 +msgid "" +"Enter a valid Swiss identity or passport card number in X1234567<0 or " +"1234567890 format." +msgstr "Podaj poprawny numer szwajarskiego dowodu osobistego lub paszportu w formacie X1234567<0 lub 1234567890." + +#: contrib/localflavor/is_/forms.py:16 +msgid "Enter a valid Icelandic identification number. The format is XXXXXX-XXXX." +msgstr "Podaj poprawny numer islandzkiego dowodu osobistego w formacie XXXXXX-XXXX." + +#: contrib/localflavor/is_/forms.py:30 +msgid "The Icelandic identification number is not valid." +msgstr "Numer islandzkiego dowodu osobistego jest błędny." + +#: contrib/localflavor/cl/forms.py:21 +msgid "Enter valid a Chilean RUT. The format is XX.XXX.XXX-X." +msgstr "Podaj poprawny czilijski RUT w formacie XX.XXX.XXX-X." + +#: contrib/localflavor/cl/forms.py:26 +msgid "Enter valid a Chilean RUT" +msgstr "Wpisz poprawny czilijski RUT" + +#: contrib/sessions/models.py:68 msgid "session key" msgstr "klucz sesji" -#: contrib/sessions/models.py:36 +#: contrib/sessions/models.py:69 msgid "session data" msgstr "data sesji" -#: contrib/sessions/models.py:37 +#: contrib/sessions/models.py:70 msgid "expire date" msgstr "data wygaÅ›niÄ™cia sesji" -#: contrib/sessions/models.py:41 +#: contrib/sessions/models.py:74 msgid "session" msgstr "sesja" -#: contrib/sessions/models.py:42 +#: contrib/sessions/models.py:75 msgid "sessions" msgstr "sesje" -#: contrib/sites/models.py:10 -msgid "domain name" -msgstr "nazwa domeny" +#: contrib/flatpages/models.py:8 +msgid "Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "" +"PrzykÅ‚ad: '/about/contact/'. Upewnij siÄ™ że wpisaÅ‚eÅ› otwierajÄ…cy i " +"zamykajÄ…cy ukoÅ›nik." -#: contrib/sites/models.py:11 -msgid "display name" -msgstr "wyÅ›wietlana nazwa" +#: contrib/flatpages/models.py:9 +msgid "title" +msgstr "tytuÅ‚" -#: contrib/sites/models.py:15 -msgid "site" -msgstr "strona" +#: contrib/flatpages/models.py:10 +msgid "content" +msgstr "zawartość" -#: contrib/sites/models.py:16 -msgid "sites" -msgstr "strony" +#: contrib/flatpages/models.py:11 +msgid "enable comments" +msgstr "włącz komentarze" -#: utils/translation.py:360 -msgid "DATE_FORMAT" -msgstr "Y-m-d" +#: contrib/flatpages/models.py:12 +msgid "template name" +msgstr "nazwa szablonu" -#: utils/translation.py:361 -msgid "DATETIME_FORMAT" -msgstr "Y-m-d H:i:s" +#: contrib/flatpages/models.py:13 +msgid "" +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." +msgstr "" +"PrzykÅ‚ad: 'flatpages/contact_page.html'. Jeżeli nie zostanie podane, system " +"użyje 'flatpages/default.html'." -#: utils/translation.py:362 -msgid "TIME_FORMAT" -msgstr "H:i:s" +#: contrib/flatpages/models.py:14 +msgid "registration required" +msgstr "wymagana rejestracja" + +#: contrib/flatpages/models.py:14 +msgid "If this is checked, only logged-in users will be able to view the page." +msgstr "Jeżeli zaznaczone - tylko zalogowani użytkownicy bÄ™dÄ… mogli zobaczyć stronÄ™." + +#: contrib/flatpages/models.py:18 +msgid "flat page" +msgstr "strona statyczna" + +#: contrib/flatpages/models.py:19 +msgid "flat pages" +msgstr "strony statyczne" #: utils/dates.py:6 msgid "Monday" @@ -1487,475 +2863,89 @@ msgid_plural "minutes" msgstr[0] "minuta" msgstr[1] "minut" -#: conf/global_settings.py:37 -msgid "Bengali" -msgstr "Bengalski" - -#: conf/global_settings.py:38 -msgid "Czech" -msgstr "Czeski" - -#: conf/global_settings.py:39 -msgid "Welsh" -msgstr "Walijski" - -#: conf/global_settings.py:40 -msgid "Danish" -msgstr "DuÅ„ski" - -#: conf/global_settings.py:41 -msgid "German" -msgstr "Niemiecki" - -#: conf/global_settings.py:42 -msgid "Greek" -msgstr "Grecki" - -#: conf/global_settings.py:43 -msgid "English" -msgstr "Angielski" - -#: conf/global_settings.py:44 -msgid "Spanish" -msgstr "HiszpaÅ„ski" - -#: conf/global_settings.py:45 -msgid "French" -msgstr "Francuski" - -#: conf/global_settings.py:46 -msgid "Galician" -msgstr "Galicyjnski" - -#: conf/global_settings.py:47 -msgid "Hungarian" -msgstr "" - -#: conf/global_settings.py:48 -msgid "Hebrew" -msgstr "Hebrajski" - -#: conf/global_settings.py:49 -msgid "Icelandic" -msgstr "Islandzki" - -#: conf/global_settings.py:50 -msgid "Italian" -msgstr "WÅ‚oski" - -#: conf/global_settings.py:51 -msgid "Japanese" -msgstr "JapoÅ„ski" - -#: conf/global_settings.py:52 -msgid "Dutch" -msgstr "Holenderski" - -#: conf/global_settings.py:53 -msgid "Norwegian" -msgstr "Norweski" - -#: conf/global_settings.py:54 -msgid "Brazilian" -msgstr "Brazylijski" - -#: conf/global_settings.py:55 -msgid "Romanian" -msgstr "RumuÅ„ski" - -#: conf/global_settings.py:56 -msgid "Russian" -msgstr "Rosyjski" - -#: conf/global_settings.py:57 -msgid "Slovak" -msgstr "SÅ‚owacki" - -#: conf/global_settings.py:58 -msgid "Slovenian" -msgstr "SÅ‚owacki" - -#: conf/global_settings.py:59 -msgid "Serbian" -msgstr "Serbski" - -#: conf/global_settings.py:60 -msgid "Swedish" -msgstr "Szwedzki" - -#: conf/global_settings.py:61 -msgid "Ukrainian" -msgstr "UkraiÅ„ski" - -#: conf/global_settings.py:62 -msgid "Simplified Chinese" -msgstr "Uproszczony ChiÅ„ski" - -#: conf/global_settings.py:63 -msgid "Traditional Chinese" -msgstr "ChiÅ„ski tradycyjny" - -#: core/validators.py:60 -msgid "This value must contain only letters, numbers and underscores." -msgstr "To pole możei zawierać tylko litery, cyfry i podkreÅ›lenia" - -#: core/validators.py:64 -msgid "" -"This value must contain only letters, numbers, underscores, dashes or " -"slashes." -msgstr "To pole może zawierać jedynie litery, cyfry, podkreÅ›lenia i slasze." - -#: core/validators.py:72 -msgid "Uppercase letters are not allowed here." -msgstr "Wielkie litery nie sÄ… tutaj dozwolone" - -#: core/validators.py:76 -msgid "Lowercase letters are not allowed here." -msgstr "MaÅ‚e litery nie sÄ… tutaj dozwolone" - -#: core/validators.py:83 -msgid "Enter only digits separated by commas." -msgstr "Wpisz tylko cyfry odddzielone przecinkami" - -#: core/validators.py:95 -msgid "Enter valid e-mail addresses separated by commas." -msgstr "Wpisz poprawne adresy e-mai oddzielone przecinkamil" - -#: core/validators.py:99 -msgid "Please enter a valid IP address." -msgstr "ProszÄ™ wpisać poprawny adres IP" - -#: core/validators.py:103 -msgid "Empty values are not allowed here." -msgstr "ProszÄ™ wypeÅ‚nić te pola" - -#: core/validators.py:107 -msgid "Non-numeric characters aren't allowed here." -msgstr "Tu mogÄ… być tylko cyfry" - -#: core/validators.py:111 -msgid "This value can't be comprised solely of digits." -msgstr "To pole nie może zawierać jedynie cyfr." - -#: core/validators.py:116 -msgid "Enter a whole number." -msgstr "Wpisz całą liczbÄ™" - -#: core/validators.py:120 -msgid "Only alphabetical characters are allowed here." -msgstr "Tutaj sÄ… dozwolone tylko litery" - -#: core/validators.py:124 -msgid "Enter a valid date in YYYY-MM-DD format." -msgstr "ProszÄ™ wpisać poprawnÄ… datÄ™ w formacie RRRR-MM-DD." - -#: core/validators.py:128 -msgid "Enter a valid time in HH:MM format." -msgstr "ProszÄ™ wpisać poprawny czas w formacie GG:MM" - -#: core/validators.py:132 db/models/fields/__init__.py:468 -msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." -msgstr "Wprowadź poprawnÄ… datÄ™ i czas w formacie RRRR-MM-DD GG:MM" - -#: core/validators.py:136 -msgid "Enter a valid e-mail address." -msgstr "Wprowadź poprawny adres e-mail" - -#: core/validators.py:148 -msgid "" -"Upload a valid image. The file you uploaded was either not an image or a " -"corrupted image." -msgstr "" -"Wgraj poprawny plik graficzny. Ten, który zostaÅ‚ wgrany jest niepoprawny " -"albo uszkodzony." - -#: core/validators.py:155 +#: utils/timesince.py:40 #, python-format -msgid "The URL %s does not point to a valid image." -msgstr "OdnoÅ›nik %s nie wskazuje na poprawny plik z obrazem." +msgid "%d milliseconds" +msgstr "%d milisekund" -#: core/validators.py:159 +#: utils/timesince.py:41 #, python-format -msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." -msgstr "" -"Numery telefoniczne muszÄ… być w formacie XXX-XXX-XXXX. \"%s\" jest " -"niepoprawny." +msgid "%(number)d %(type)s" +msgstr "%(number)d %(type)s" -#: core/validators.py:167 +#: utils/timesince.py:47 #, python-format -msgid "The URL %s does not point to a valid QuickTime video." -msgstr "OdnoÅ›nik %s nie wskazuje na poprawne plik QuickTime video." +msgid ", %(number)d %(type)s" +msgstr ", %(number)d %(type)s" -#: core/validators.py:171 -msgid "A valid URL is required." -msgstr "Wymagany jest poprawny URL." +#: utils/dateformat.py:40 +msgid "p.m." +msgstr "popoÅ‚udniu" -#: core/validators.py:185 -#, python-format -msgid "" -"Valid HTML is required. Specific errors are:\n" -"%s" -msgstr "" -"Wymagany jest poprawny odnoÅ›nik. Błędy to:\n" -"%s" +#: utils/dateformat.py:41 +msgid "a.m." +msgstr "rano" -#: core/validators.py:192 -#, python-format -msgid "Badly formed XML: %s" -msgstr "NieprawidÅ‚owy format XML: %s" +#: utils/dateformat.py:46 +msgid "PM" +msgstr "popoÅ‚udniu" -#: core/validators.py:202 -#, python-format -msgid "Invalid URL: %s" -msgstr "Niepoprawny odnoÅ›nik: %s" +#: utils/dateformat.py:47 +msgid "AM" +msgstr "rano" -#: core/validators.py:206 core/validators.py:208 -#, python-format -msgid "The URL %s is a broken link." -msgstr "OdnoÅ›nik %s jest nieprawidÅ‚owy." - -#: core/validators.py:214 -msgid "Enter a valid U.S. state abbreviation." -msgstr "Wpisz poprawny kod stanu U.S.A." +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "północ" -#: core/validators.py:229 -#, python-format -msgid "Watch your mouth! The word %s is not allowed here." -msgid_plural "Watch your mouth! The words %s are not allowed here." -msgstr[0] "Nie wolno przeklinać! SÅ‚owo %s jest niedozwolone." -msgstr[1] "Nie wolno przeklinać! SÅ‚owa %s sÄ… niedozwolone." +#: utils/dateformat.py:97 +msgid "noon" +msgstr "poÅ‚udnie" -#: core/validators.py:236 -#, python-format -msgid "This field must match the '%s' field." -msgstr "To pole musi pasować do pola '%s'." - -#: core/validators.py:255 -msgid "Please enter something for at least one field." -msgstr "ProszÄ™ wpisać cokolwiek do chociaż jednego pola." - -#: core/validators.py:264 core/validators.py:275 -msgid "Please enter both fields or leave them both empty." -msgstr "ProszÄ™ uzupeÅ‚nić oba pola lub zostawić je puste." - -#: core/validators.py:282 -#, python-format -msgid "This field must be given if %(field)s is %(value)s" -msgstr "To pole musi być uzupeÅ‚nione jeÅ›li %(field)s jest %(value)s" - -#: core/validators.py:294 -#, python-format -msgid "This field must be given if %(field)s is not %(value)s" -msgstr "To pole musi być wypeÅ‚nione jeżeli %(field)s nie jest %(value)s" - -#: core/validators.py:313 -msgid "Duplicate values are not allowed." -msgstr "Duplikaty sÄ… niedozwolone." - -#: core/validators.py:336 -#, python-format -msgid "This value must be a power of %s." -msgstr "" - -#: core/validators.py:347 -msgid "Please enter a valid decimal number." -msgstr "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ…." - -#: core/validators.py:349 -#, python-format -msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "" -"Please enter a valid decimal number with at most %s total digits." -msgstr[0] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… zawierajÄ…cÄ… nie wiÄ™cej niż %s cyfry." -msgstr[1] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… zawierajÄ…cÄ… nie wiÄ™cej niż %s cyfr." - -#: core/validators.py:352 -#, python-format -msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "" -"Please enter a valid decimal number with at most %s decimal places." -msgstr[0] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… z dokÅ‚adnoÅ›ciÄ… do %s miejsca po przecinku." -msgstr[1] "ProszÄ™ wpisać poprawnÄ… liczbÄ™ dziesiÄ™tnÄ… z dokÅ‚adnoÅ›ciÄ… do %s miejsc po przecinku." - -#: core/validators.py:362 -#, python-format -msgid "Make sure your uploaded file is at least %s bytes big." -msgstr "Upewnij siÄ™, że wgrany plik ma conajmniej %s bajtów." - -#: core/validators.py:363 -#, python-format -msgid "Make sure your uploaded file is at most %s bytes big." -msgstr "Upewnij siÄ™, że wgrany plik nie zawiera wiÄ™cej niż %s bajtów." - -#: core/validators.py:376 -msgid "The format for this field is wrong." -msgstr "Format tego pola jest nieprawidÅ‚owy." - -#: core/validators.py:391 -msgid "This field is invalid." -msgstr "To pole jest nieprawidÅ‚owe." - -#: core/validators.py:426 -#, python-format -msgid "Could not retrieve anything from %s." -msgstr "Nie można nic pobrać z %s." - -#: core/validators.py:429 -#, python-format -msgid "" -"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." -msgstr "" -"URL %(url)s zwróciÅ‚ niepoprawny Content-Type header '%(contenttype)s'." - - -#: core/validators.py:462 -#, python-format -msgid "" -"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " -"\"%(start)s\".)" -msgstr "" - -#: core/validators.py:466 -#, python-format -msgid "" -"Some text starting on line %(line)s is not allowed in that context. (Line " -"starts with \"%(start)s\".)" -msgstr "" - -#: core/validators.py:471 -#, python-format -msgid "" -"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" -"(start)s\".)" -msgstr "" - -#: core/validators.py:476 -#, python-format -msgid "" -"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" -"(start)s\".)" -msgstr "" - -#: core/validators.py:480 -#, python-format -msgid "" -"A tag on line %(line)s is missing one or more required attributes. (Line " -"starts with \"%(start)s\".)" -msgstr "" - -#: core/validators.py:485 -#, python-format -msgid "" -"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " -"starts with \"%(start)s\".)" -msgstr "" - -#: db/models/manipulators.py:302 -#, python-format -msgid "%(object)s with this %(type)s already exists for the given %(field)s." -msgstr "" - -#: db/models/fields/__init__.py:40 -#, python-format -msgid "%(optname)s with this %(fieldname)s already exists." -msgstr "" +#: utils/translation/trans_real.py:358 +msgid "DATE_FORMAT" +msgstr "Y-m-d" -#: db/models/fields/__init__.py:114 db/models/fields/__init__.py:265 -#: db/models/fields/__init__.py:542 db/models/fields/__init__.py:553 -#: forms/__init__.py:346 -msgid "This field is required." -msgstr "To pole jest wymagane" +#: utils/translation/trans_real.py:359 +msgid "DATETIME_FORMAT" +msgstr "Y-m-d H:i:s" -#: db/models/fields/__init__.py:337 -msgid "This value must be an integer." -msgstr "Ta wartość musi być liczbÄ… caÅ‚kowitÄ…" +#: utils/translation/trans_real.py:360 +msgid "TIME_FORMAT" +msgstr "H:i:s" -#: db/models/fields/__init__.py:369 -msgid "This value must be either True or False." -msgstr "Ta wartość musi być logiczna (True, False - prawda lub faÅ‚sz)." +#: utils/translation/trans_real.py:376 +msgid "YEAR_MONTH_FORMAT" +msgstr "Y-m" -#: db/models/fields/__init__.py:385 -msgid "This field cannot be null." -msgstr "To pole nie może być puste." +#: utils/translation/trans_real.py:377 +msgid "MONTH_DAY_FORMAT" +msgstr "m-d" -#: db/models/fields/__init__.py:562 -msgid "Enter a valid filename." -msgstr "Wpisz poprawnÄ… nazwÄ™ pliku." +#: template/defaultfilters.py:491 +msgid "yes,no,maybe" +msgstr "tak,nie,może" -#: db/models/fields/related.py:43 +#: template/defaultfilters.py:520 #, python-format -msgid "Please enter a valid %s." -msgstr "ProszÄ™ wpisać poprawne %s." +msgid "%(size)d byte" +msgid_plural "%(size)d bytes" +msgstr[0] "%(size)d bajt" +msgstr[1] "%(size)d bajtów" +msgstr[2] "" -#: db/models/fields/related.py:579 -msgid "Separate multiple IDs with commas." -msgstr "Oddziel kilka pól ID przecinkami." - -#: db/models/fields/related.py:581 -msgid "" -"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." -msgstr "" -" Trzymaj przyciÅ›niÄ™ty klawisz \"Ctrl\", lub \"Command\" na Macu aby " -"zaznaczyć wiÄ™cej niż jeden wybór." - -#: db/models/fields/related.py:625 +#: template/defaultfilters.py:522 #, python-format -msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." -msgid_plural "" -"Please enter valid %(self)s IDs. The values %(value)r are invalid." -msgstr[0] "" -msgstr[1] "" +msgid "%.1f KB" +msgstr "%.1f kB" -#: forms/__init__.py:380 +#: template/defaultfilters.py:524 #, python-format -msgid "Ensure your text is less than %s character." -msgid_plural "Ensure your text is less than %s characters." -msgstr[0] "Upewnij siÄ™, że tekst ma mniej niż %s znak." -msgstr[1] "Upewnij siÄ™, że tekst ma mniej niż %s znaków." +msgid "%.1f MB" +msgstr "%.1f MB" -#: forms/__init__.py:385 -msgid "Line breaks are not allowed here." -msgstr "Znaki nowego wiersza sÄ… tutaj niedopuszczalne." - -#: forms/__init__.py:480 forms/__init__.py:551 forms/__init__.py:589 +#: template/defaultfilters.py:525 #, python-format -msgid "Select a valid choice; '%(data)s' is not in %(choices)s." -msgstr "" - -#: forms/__init__.py:645 -msgid "The submitted file is empty." -msgstr "Wgrany plik jest pusty." - -#: forms/__init__.py:699 -msgid "Enter a whole number between -32,768 and 32,767." -msgstr "ProszÄ™ wpisać liczbÄ™ z zakresu od -32 768 do 32 767" - -#: forms/__init__.py:708 -msgid "Enter a positive number." -msgstr "ProszÄ™ wpisać liczbÄ™ dodatniÄ…." - -#: forms/__init__.py:717 -msgid "Enter a whole number between 0 and 32,767." -msgstr "ProszÄ™ wpisać liczbÄ™ z zakresu od 0 do 32 767" - -#: template/defaultfilters.py:379 -msgid "yes,no,maybe" -msgstr "tak,nie, może" - -#~ msgid "String (up to 50)" -#~ msgstr "CiÄ…g znaków (do iloÅ›ci 50 znaków)" - -#~ msgid "Comment" -#~ msgstr "Komentarz" - -#~ msgid "Comments" -#~ msgstr "Komentarze" - -#~ msgid "label" -#~ msgstr "etykieta" - -#~ msgid "package" -#~ msgstr "pakiet" +msgid "%.1f GB" +msgstr "%.1f GB" -#~ msgid "packages" -#~ msgstr "pakiety" diff --git a/django/conf/locale/sk/LC_MESSAGES/django.mo b/django/conf/locale/sk/LC_MESSAGES/django.mo Binary files differindex c6ac1c9612..2789e1518f 100644 --- a/django/conf/locale/sk/LC_MESSAGES/django.mo +++ b/django/conf/locale/sk/LC_MESSAGES/django.mo diff --git a/django/conf/locale/sk/LC_MESSAGES/django.po b/django/conf/locale/sk/LC_MESSAGES/django.po index 4e1dba2a49..f1a3cd77a2 100644 --- a/django/conf/locale/sk/LC_MESSAGES/django.po +++ b/django/conf/locale/sk/LC_MESSAGES/django.po @@ -1,200 +1,746 @@ -# Translation of django.po to. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# Vladimir Labath <vlado@labath.org>, 2005. -# -#, fuzzy +# +# +# msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: Django\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-05-27 07:31-0400\n" -"PO-Revision-Date: 2005-11-10 23:22-0500\n" -"Last-Translator: Vladimir Labath <vlado@labath.org>\n" -"Language-Team: Slovak <sk@li.org>\n" +"POT-Creation-Date: 2007-03-31 14:02+0200\n" +"PO-Revision-Date: 2007-04-03 21:49+0200\n" +"Last-Translator: <>\n" +"Language-Team: Slovak\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit" -#: contrib/contenttypes/models.py:25 -msgid "python model class name" -msgstr "pythonové meno triedy modelu" +#: oldforms/__init__.py:357 db/models/fields/__init__.py:117 +#: db/models/fields/__init__.py:274 db/models/fields/__init__.py:610 +#: db/models/fields/__init__.py:621 newforms/models.py:178 +#: newforms/fields.py:78 newforms/fields.py:374 newforms/fields.py:450 +#: newforms/fields.py:461 +msgid "This field is required." +msgstr "Toto pole je povinné." -#: contrib/contenttypes/models.py:28 -msgid "content type" -msgstr "typ obsahu" +#: oldforms/__init__.py:392 +#, python-format +msgid "Ensure your text is less than %s character." +msgstr "Uisite sa, že text je kratšà ako %s znakov." -#: contrib/contenttypes/models.py:29 -msgid "content types" -msgstr "typy obsahu" +#: oldforms/__init__.py:397 +msgid "Line breaks are not allowed here." +msgstr "Zalomenia riadkov nie sú povolené." -#: contrib/auth/models.py:13 contrib/auth/models.py:26 -msgid "name" -msgstr "meno" +#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 +#, python-format +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "Vyberte platnú možnosÅ¥; '%(data)s' nie je v %(choices)s." -#: contrib/auth/models.py:15 -msgid "codename" -msgstr "codename" +#: oldforms/__init__.py:577 newforms/widgets.py:170 +#: contrib/admin/filterspecs.py:150 +msgid "Unknown" +msgstr "Neznámy" -#: contrib/auth/models.py:17 -msgid "permission" -msgstr "povolenie" +#: oldforms/__init__.py:577 newforms/widgets.py:170 +#: contrib/admin/filterspecs.py:143 +msgid "Yes" +msgstr "Ãno" -#: contrib/auth/models.py:18 contrib/auth/models.py:27 -msgid "permissions" -msgstr "povolenia" +#: oldforms/__init__.py:577 newforms/widgets.py:170 +#: contrib/admin/filterspecs.py:143 +msgid "No" +msgstr "Nie" -#: contrib/auth/models.py:29 -msgid "group" -msgstr "skupina" +#: oldforms/__init__.py:672 core/validators.py:174 core/validators.py:445 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "Súbor nebol odoslaný. Skontrolujte atribút 'enctype' encoding vo formulári." -#: contrib/auth/models.py:30 contrib/auth/models.py:65 -msgid "groups" -msgstr "skupiny" +#: oldforms/__init__.py:674 +msgid "The submitted file is empty." +msgstr "Odoslaný súbor je prázdný." -#: contrib/auth/models.py:55 -msgid "username" -msgstr "užÃvateľské meno" +#: oldforms/__init__.py:730 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "Zadajte celé ÄÃslo s hodnotou medzi -32768 a 32767." -#: contrib/auth/models.py:56 -msgid "first name" -msgstr "krstné meno" +#: oldforms/__init__.py:740 +msgid "Enter a positive number." +msgstr "Zadajte celé kladné ÄÃslo." -#: contrib/auth/models.py:57 -msgid "last name" -msgstr "priezvisko" +#: oldforms/__init__.py:750 +msgid "Enter a whole number between 0 and 32,767." +msgstr "Zadajte celé ÄÃslo s hodnotou medzi 0 a 32767." -#: contrib/auth/models.py:58 -msgid "e-mail address" -msgstr "e-mailová adresa" +#: db/models/manipulators.py:307 +#, python-format +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "%(object)s s %(type)s už existuje pre prvok %(field)s." -#: contrib/auth/models.py:59 -msgid "password" -msgstr "heslo" +#: db/models/manipulators.py:308 contrib/admin/views/main.py:335 +#: contrib/admin/views/main.py:337 contrib/admin/views/main.py:339 +msgid "and" +msgstr "a" -#: contrib/auth/models.py:59 -msgid "Use '[algo]$[salt]$[hexdigest]'" -msgstr "Použi '[algo]$[salt]$[hexdigest]'" +#: db/models/fields/__init__.py:42 +#, python-format +msgid "%(optname)s with this %(fieldname)s already exists." +msgstr "%(optname)s s %(fieldname)s už existuje." -#: contrib/auth/models.py:60 -msgid "staff status" -msgstr "Å¡tatút zamestnanca" +#: db/models/fields/__init__.py:367 +msgid "This value must be an integer." +msgstr "Táto hodnota musà byÅ¥ celé ÄÃslo." -#: contrib/auth/models.py:60 -msgid "Designates whether the user can log into this admin site." -msgstr "OznaÄenie, ak užÃvateľ má oprávnenie vstúpiÅ¥ ako administrátor." +#: db/models/fields/__init__.py:402 +msgid "This value must be either True or False." +msgstr "Táto hodnota musà byÅ¥ True alebo False." -#: contrib/auth/models.py:61 -msgid "active" -msgstr "aktÃvny" +#: db/models/fields/__init__.py:423 +msgid "This field cannot be null." +msgstr "Toto pole nemôže obsahovaÅ¥ null." -#: contrib/auth/models.py:62 -msgid "superuser status" -msgstr "Å¡tatút superužÃvateľa" +#: db/models/fields/__init__.py:457 core/validators.py:148 +msgid "Enter a valid date in YYYY-MM-DD format." +msgstr "Zadajte platný dátum vo formáte RRRR-MM-DD." -#: contrib/auth/models.py:63 -msgid "last login" -msgstr "posledné prihlásenie" +#: db/models/fields/__init__.py:526 core/validators.py:157 +msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." +msgstr "Zadajte platný dátum a Äas vo formáte RRRR-MM-DD HH:MM." -#: contrib/auth/models.py:64 -msgid "date joined" -msgstr "dátum registrácie" +#: db/models/fields/__init__.py:630 +msgid "Enter a valid filename." +msgstr "Zadajte platný názov súboru." + +#: db/models/fields/__init__.py:751 +msgid "This value must be either None, True or False." +msgstr "Táto hodnota musà byÅ¥ None, True alebo False." -#: contrib/auth/models.py:66 +#: db/models/fields/related.py:53 +#, python-format +msgid "Please enter a valid %s." +msgstr "ProsÃm, zadajte platné %s." + +#: db/models/fields/related.py:642 +msgid "Separate multiple IDs with commas." +msgstr "Oddeľte viacnásobné ID Äiarkami." + +#: db/models/fields/related.py:644 msgid "" -"In addition to the permissions manually assigned, this user will also get " -"all permissions granted to each group he/she is in." -msgstr "" -"Okrem ruÄne vložených povolenÃ, tento uživateľ dostane vÅ¡etky povolenia " -"skupin, v ktorých sa nachádza." +"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "Ak chcete vybraÅ¥ viacero možnostÃ, podržte \"Control\" alebo \"Command\" na Mac-u." -#: contrib/auth/models.py:67 -msgid "user permissions" -msgstr "pridelené povolenia" +#: db/models/fields/related.py:691 +#, python-format +msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." +"Please enter valid %(self)s IDs. The values %(value)r are invalid." +msgstr "ProsÃm, vložte platné %(self)s ID-Äka. Hodnota %(value)r je neplatná." +"ProsÃm, vložte platné %(self)s ID-Äka. Hodnoty %(value)r sú neplatné." -#: contrib/auth/models.py:70 -msgid "user" -msgstr "uživateľ" +#: conf/global_settings.py:39 +msgid "Arabic" +msgstr "Arabsky" -#: contrib/auth/models.py:71 -msgid "users" -msgstr "užÃvatelia" +#: conf/global_settings.py:40 +msgid "Bengali" +msgstr "Bengálsky" -#: contrib/auth/models.py:76 -msgid "Personal info" -msgstr "Osobné údaje" +#: conf/global_settings.py:41 +msgid "Catalan" +msgstr "Katalánsky" -#: contrib/auth/models.py:77 -msgid "Permissions" -msgstr "Povolenia" +#: conf/global_settings.py:42 +msgid "Czech" +msgstr "ÄŒesky" -#: contrib/auth/models.py:78 -msgid "Important dates" -msgstr "Dôležité údaje" +#: conf/global_settings.py:43 +msgid "Welsh" +msgstr "WelÅ¡sky" -#: contrib/auth/models.py:79 -msgid "Groups" -msgstr "Skupiny" +#: conf/global_settings.py:44 +msgid "Danish" +msgstr "Dánsky" -#: contrib/auth/models.py:219 -msgid "message" -msgstr "zpráva" +#: conf/global_settings.py:45 +msgid "German" +msgstr "Nemecky" + +#: conf/global_settings.py:46 +msgid "Greek" +msgstr "Grécky" + +#: conf/global_settings.py:47 +msgid "English" +msgstr "Anglicky" + +#: conf/global_settings.py:48 +msgid "Spanish" +msgstr "Å panielsky" + +#: conf/global_settings.py:49 +msgid "Argentinean Spanish" +msgstr "ArgentÃnska Å¡panielÄina" + +#: conf/global_settings.py:50 +msgid "Finnish" +msgstr "FÃnsky" + +#: conf/global_settings.py:51 +msgid "French" +msgstr "Francúzsky" + +#: conf/global_settings.py:52 +msgid "Galician" +msgstr "Galicijsky" + +#: conf/global_settings.py:53 +msgid "Hungarian" +msgstr "MaÄarsky" + +#: conf/global_settings.py:54 +msgid "Hebrew" +msgstr "Hebrejsky" + +#: conf/global_settings.py:55 +msgid "Icelandic" +msgstr "Islandsky" + +#: conf/global_settings.py:56 +msgid "Italian" +msgstr "Taliansky" + +#: conf/global_settings.py:57 +msgid "Japanese" +msgstr "Japonsky" + +#: conf/global_settings.py:58 +msgid "Kannada" +msgstr "Kannada" + +#: conf/global_settings.py:59 +msgid "Latvian" +msgstr "LotyÅ¡sky" + +#: conf/global_settings.py:60 +msgid "Macedonian" +msgstr "Mecedónsky" -#: contrib/auth/forms.py:30 +#: conf/global_settings.py:61 +msgid "Dutch" +msgstr "Holandsky" + +#: conf/global_settings.py:62 +msgid "Norwegian" +msgstr "Nórsky" + +#: conf/global_settings.py:63 +msgid "Polish" +msgstr "Poľsky" + +#: conf/global_settings.py:64 +msgid "Portugese" +msgstr "Portugalsky" + +#: conf/global_settings.py:65 +msgid "Brazilian" +msgstr "BrazÃlsky" + +#: conf/global_settings.py:66 +msgid "Romanian" +msgstr "Rumunsky" + +#: conf/global_settings.py:67 +msgid "Russian" +msgstr "Rusky" + +#: conf/global_settings.py:68 +msgid "Slovak" +msgstr "Slovensky" + +#: conf/global_settings.py:69 +msgid "Slovenian" +msgstr "Slovinsky" + +#: conf/global_settings.py:70 +msgid "Serbian" +msgstr "Srbsky" + +#: conf/global_settings.py:71 +msgid "Swedish" +msgstr "Å védsky" + +#: conf/global_settings.py:72 +msgid "Tamil" +msgstr "Tamilsky" + +#: conf/global_settings.py:73 +msgid "Telugu" +msgstr "Telugu" + +#: conf/global_settings.py:74 +msgid "Turkish" +msgstr "Turecky" + +#: conf/global_settings.py:75 +msgid "Ukrainian" +msgstr "Ukrajinsky" + +#: conf/global_settings.py:76 +msgid "Simplified Chinese" +msgstr "ÄŒÃnsky (zjednoduÅ¡ene)" + +#: conf/global_settings.py:77 +msgid "Traditional Chinese" +msgstr "ÄŒÃnsky (tradiÄne)" + +#: core/validators.py:64 +msgid "This value must contain only letters, numbers and underscores." +msgstr "Táto hodnota môže obsahovaÅ¥ len pÃsmená, ÄÃslice a podÄiarkovnÃky." + +#: core/validators.py:68 msgid "" -"Your Web browser doesn't appear to have cookies enabled. Cookies are " -"required for logging in." -msgstr "" -"Vyzerá, že tvoj web prehliadaÄ nedovoľuje prÃstup ku cookies. Cookies sú " -"nevýhnutné aby si sa mohol prihlásiÅ¥." +"This value must contain only letters, numbers, underscores, dashes or " +"slashes." +msgstr "Táto hodnota môže obsahovaÅ¥ len pÃsmena, ÄÃslice, podÄiarkovniky, pomlÄky a lomÃtka." + +#: core/validators.py:72 +msgid "This value must contain only letters, numbers, underscores or hyphens." +msgstr "Táto hodnota môže obsahovaÅ¥ len pÃsmená, ÄÃslice, poÄiarkovnÃky a pomlÄky." + +#: core/validators.py:76 +msgid "Uppercase letters are not allowed here." +msgstr "Veľké pÃsmená nie sú povolené." + +#: core/validators.py:80 +msgid "Lowercase letters are not allowed here." +msgstr "Malé pÃsmena nie sú povolené." + +#: core/validators.py:87 +msgid "Enter only digits separated by commas." +msgstr "Zadávajte len ÄÃslice oddelené Äiarkami." + +#: core/validators.py:99 +msgid "Enter valid e-mail addresses separated by commas." +msgstr "Zadajte platné e-mailové adresy oddelené Äiarkami." + +#: core/validators.py:103 +msgid "Please enter a valid IP address." +msgstr "ProsÃm, zadajte platnú IP adresu." + +#: core/validators.py:107 +msgid "Empty values are not allowed here." +msgstr "Prázdne hodnoty tu nie sú povolené." + +#: core/validators.py:111 +msgid "Non-numeric characters aren't allowed here." +msgstr "Iné ako numerické znaky tu nie sú povolené." + +#: core/validators.py:115 +msgid "This value can't be comprised solely of digits." +msgstr "Táto hodnota nemôže byÅ¥ Äisto numerická." + +#: core/validators.py:120 newforms/fields.py:126 +msgid "Enter a whole number." +msgstr "Zadajte celé ÄÃslo." + +#: core/validators.py:124 +msgid "Only alphabetical characters are allowed here." +msgstr "Tu sú povolené len alfanumerické znaky." + +#: core/validators.py:139 +msgid "Year must be 1900 or later." +msgstr "Rok musà byÅ¥ 1900 alebo neskôr." + +#: core/validators.py:143 +#, python-format +msgid "Invalid date: %s" +msgstr "Neplatný dátum: %s" -#: contrib/auth/forms.py:36 contrib/auth/forms.py:41 -#: contrib/admin/views/decorators.py:9 +#: core/validators.py:153 +msgid "Enter a valid time in HH:MM format." +msgstr "Zadajte platný Äas vo formáte HH:MM." + +#: core/validators.py:162 newforms/fields.py:269 +msgid "Enter a valid e-mail address." +msgstr "Zadajte platnú e-mailovú adresu." + +#: core/validators.py:178 msgid "" -"Please enter a correct username and password. Note that both fields are case-" -"sensitive." -msgstr "" -"ProsÃm, vlož spávne meno užvateľa ako aj heslo. PripomÃnam, že obe polia " -"rozliÅ¡ujú malé a veľké pÃsmena" +"Upload a valid image. The file you uploaded was either not an image or a " +"corrupted image." +msgstr "Nahrajte platný obrázok. Súbor, ktorý ste odoslali nebol obrázkový formát alebo bol poÅ¡kodený." + +#: core/validators.py:185 +#, python-format +msgid "The URL %s does not point to a valid image." +msgstr "URL %s neodkazuje na platný obrázok." + +#: core/validators.py:189 +#, python-format +msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." +msgstr "Telefónne ÄÃslo musà maÅ¥ formát XXX-XXX-XXXX. ÄŒÃslo \"%s\" je neplatné." + +#: core/validators.py:197 +#, python-format +msgid "The URL %s does not point to a valid QuickTime video." +msgstr "URL %s neodkazuje na platné QuickTime video." + +#: core/validators.py:201 +msgid "A valid URL is required." +msgstr "Je požadovaná platná adresa URL." + +#: core/validators.py:215 +#, python-format +msgid "" +"Valid HTML is required. Specific errors are:\n" +"%s" +msgstr "HTML kód musà zodpovedaÅ¥ Å¡pecifikácii. Zistené chyby sú:\n" +"%s" + +#: core/validators.py:222 +#, python-format +msgid "Badly formed XML: %s" +msgstr "Chybné XML nezodpovedajúce definÃcii: %s" + +#: core/validators.py:239 +#, python-format +msgid "Invalid URL: %s" +msgstr "Neplatná adresa URL: %s" + +#: core/validators.py:244 core/validators.py:246 +#, python-format +msgid "The URL %s is a broken link." +msgstr "Odkaz na URL %s je neplatný." + +#: core/validators.py:252 +msgid "Enter a valid U.S. state abbreviation." +msgstr "Zadajte platnú skratku Å¡tátu USA." + +#: core/validators.py:266 +#, python-format +msgid "Watch your mouth! The word %s is not allowed here." +msgstr "Vyjadrujte sa sluÅ¡ne! Slovo %s tu nie je dovolené použivaÅ¥." + +#: core/validators.py:273 +#, python-format +msgid "This field must match the '%s' field." +msgstr "Toto pole sa musà zhodovaÅ¥ s poľom '%s'. " + +#: core/validators.py:292 +msgid "Please enter something for at least one field." +msgstr "ProsÃm, vyplňte aspoň jedno pole." + +#: core/validators.py:301 core/validators.py:312 +msgid "Please enter both fields or leave them both empty." +msgstr "ProsÃm, vyplňte buÄ obidve polia, alebo ich nechajte prázdne." + +#: core/validators.py:320 +#, python-format +msgid "This field must be given if %(field)s is %(value)s" +msgstr "Toto pole musà byÅ¥ vyplnené ak, %(field)s je %(value)s" + +#: core/validators.py:333 +#, python-format +msgid "This field must be given if %(field)s is not %(value)s" +msgstr "Toto pole musà byÅ¥ vyplnené, ak %(field)s nie je %(value)s" + +#: core/validators.py:352 +msgid "Duplicate values are not allowed." +msgstr "Duplicitné hodnoty nie sú povolené." + +#: core/validators.py:367 +#, python-format +msgid "This value must be between %(lower)s and %(upper)s." +msgstr "Táto hodnota musà byÅ¥ medzi %(lower)s a %(upper)s." + +#: core/validators.py:369 +#, python-format +msgid "This value must be at least %s." +msgstr "Táto hodnota musà byÅ¥ prinajmenÅ¡om %s." + +#: core/validators.py:371 +#, python-format +msgid "This value must be no more than %s." +msgstr "Táto hodnota musà byÅ¥ väÄÅ¡ia ako %s." + +#: core/validators.py:407 +#, python-format +msgid "This value must be a power of %s." +msgstr "Táto hodnota musà byÅ¥ mocninou %s." + +#: core/validators.py:418 +msgid "Please enter a valid decimal number." +msgstr "ProsÃm, vložte platné desatinné ÄÃslo. " + +#: core/validators.py:422 +#, python-format +msgid "Please enter a valid decimal number with at most %s total digit." +"Please enter a valid decimal number with at most %s total digits." +msgstr "ProsÃm vlož platné desatinné ÄÃslo s najviac %s ÄÃslicou." +"ProsÃm vlož platné desatinné ÄÃslo s najviac %s ÄÃslicami." + +#: core/validators.py:425 +#, python-format +msgid "" +"Please enter a valid decimal number with a whole part of at most %s digit." +"Please enter a valid decimal number with a whole part of at most %s digits." +msgstr "ProsÃm, zadajte platné desatinné ÄÃslo s najviac %s ÄÃslicou pred desatinnou Äiarkou." +"ProsÃm, zadajte platné desatinné ÄÃslo s najviac %s ÄÃslicami pred desatinnou Äiarkou." + +#: core/validators.py:428 +#, python-format +msgid "Please enter a valid decimal number with at most %s decimal place." +"Please enter a valid decimal number with at most %s decimal places." +msgstr "ProsÃm, zadajte platné desatinné ÄÃslo s najviac %s desatinným miestom." +"ProsÃm, zadajte platné desatinné ÄÃslo s najviac %s desatinnými miestami." + +#: core/validators.py:438 +#, python-format +msgid "Make sure your uploaded file is at least %s bytes big." +msgstr "Uistite sa, že posielaný súbor nemá menej ako %s bajtov." + +#: core/validators.py:439 +#, python-format +msgid "Make sure your uploaded file is at most %s bytes big." +msgstr "Uistite sa, že posielaný súbor nemá viac ako %s bajtov." + +#: core/validators.py:456 +msgid "The format for this field is wrong." +msgstr "Formát pre toto pole je chybný." + +#: core/validators.py:471 +msgid "This field is invalid." +msgstr "Toto pole nie je platné." + +#: core/validators.py:507 +#, python-format +msgid "Could not retrieve anything from %s." +msgstr "Z %s niÄ nepriÅ¡lo." + +#: core/validators.py:510 +#, python-format +msgid "" +"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." +msgstr "Adresa URL %(url)s vrátila v hlaviÄke neplatný Content-Type '%(contenttype)s'." + +#: core/validators.py:543 +#, python-format +msgid "" +"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " +"\"%(start)s\".)" +msgstr "ProsÃm, uzatvorte tag %(tag)s na riadku %(line)s. (Riadok zaÄÃna " +"s \"%(start)s\".)" + +#: core/validators.py:547 +#, python-format +msgid "" +"Some text starting on line %(line)s is not allowed in that context. (Line " +"starts with \"%(start)s\".)" +msgstr "Text zaÄÃnajúci na riadku %(line)s nie je povolený v tomto kontexte. (Riadok zaÄÃna s \"%(start)s\".)" + +#: core/validators.py:552 +#, python-format +msgid "" +"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" +"(start)s\".)" +msgstr "\"%(attr)s\" na riadku %(line)s je neplatný atribút. (Riadok zaÄÃna s \"%" +"(start)s\".)" + +#: core/validators.py:557 +#, python-format +msgid "" +"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" +"(start)s\".)" +msgstr "\"<%(tag)s>\" na riadku %(line)s je neplatný tag. (Riadok zaÄÃna s \"%" +"(start)s\".)" + +#: core/validators.py:561 +#, python-format +msgid "" +"A tag on line %(line)s is missing one or more required attributes. (Line " +"starts with \"%(start)s\".)" +msgstr "V tagu na riadku %(line)s chýba jeden alebo viac atribútov. (Riadok " +"zaÄÃna s \"%(start)s\".)" + +#: core/validators.py:566 +#, python-format +msgid "" +"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " +"starts with \"%(start)s\".)" +msgstr "Atribút \"%(attr)s\" na riadku %(line)s má neplatnú hodnotu. (Riadok zaÄÃna " +"s \"%(start)s\".)" + +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "Objekt %(verbose_name)s bol úspeÅ¡ne vytvorený." + +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "Objekt %(verbose_name)s bol úspeÅ¡ne zmenený." + +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "Objekt %(verbose_name)s bol zmazaný." + +#: newforms/models.py:165 newforms/fields.py:360 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "Vyberte platnú možnosÅ¥. Vybraná položka nepatrà medzi platné možnosti." + +#: newforms/models.py:182 newforms/fields.py:378 newforms/fields.py:454 +msgid "Enter a list of values." +msgstr "Vložte zoznam hodnôt." + +#: newforms/models.py:188 newforms/fields.py:387 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "Vyberte platnú možnost. %s nepatrà medzi dostupné možnosti." + +#: newforms/fields.py:101 newforms/fields.py:254 +#, python-format +msgid "Ensure this value has at most %d characters." +msgstr "Uistite sa, že hodnota má najviac %d znakov." + +#: newforms/fields.py:103 newforms/fields.py:256 +#, python-format +msgid "Ensure this value has at least %d characters." +msgstr "Uistite sa, že zadaná hodnota má menej ako %d znakov." + +#: newforms/fields.py:128 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "Uistite sa, že táto hodnota je menÅ¡ia alebo rovná %s." + +#: newforms/fields.py:130 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "Uistite sa, že hodnota je väÄÅ¡ia alebo rovná %s." + +#: newforms/fields.py:163 +msgid "Enter a valid date." +msgstr "Zadajte platný dátum." + +#: newforms/fields.py:190 +msgid "Enter a valid time." +msgstr "Zadajte platný Äas." + +#: newforms/fields.py:226 +msgid "Enter a valid date/time." +msgstr "Zadajte platný dátum a Äas." + +#: newforms/fields.py:240 +msgid "Enter a valid value." +msgstr "Zadajte platnú hodnotu." + +#: newforms/fields.py:287 newforms/fields.py:309 +msgid "Enter a valid URL." +msgstr "Zadajte platnú adresu URL." + +#: newforms/fields.py:311 +msgid "This URL appears to be a broken link." +msgstr "Odkaz na URL neexistuje." + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "th" +msgstr "th" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "st" +msgstr "st" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "nd" +msgstr "nd" + +#: contrib/humanize/templatetags/humanize.py:17 +msgid "rd" +msgstr "rd" + +#: contrib/humanize/templatetags/humanize.py:47 +#, python-format +msgid "%(value).1f million" +msgstr "%(value).1f milión" + +#: contrib/humanize/templatetags/humanize.py:50 +#, python-format +msgid "%(value).1f billion" +msgstr "%(value).1f miliarda" + +#: contrib/humanize/templatetags/humanize.py:53 +#, python-format +msgid "%(value).1f trillion" +msgstr "%(value).1f bilión" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "one" +msgstr "jeden" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "two" +msgstr "dva" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "three" +msgstr "tri" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "four" +msgstr "Å¡tyri" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "five" +msgstr "päť" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "six" +msgstr "Å¡esÅ¥" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "seven" +msgstr "sedem" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "eight" +msgstr "osem" + +#: contrib/humanize/templatetags/humanize.py:68 +msgid "nine" +msgstr "deväť" #: contrib/redirects/models.py:7 msgid "redirect from" -msgstr "presmerovaný z" +msgstr "presmerovaÅ¥ z" #: contrib/redirects/models.py:8 msgid "" "This should be an absolute path, excluding the domain name. Example: '/" "events/search/'." -msgstr "" -"Tu by sa mala použiÅ¥ absolútna cesta, bez domény. Napr.: '/events/search/'." +msgstr "Tu by sa mala použiÅ¥ absolútna cesta bez názvu domény. NaprÃklad: '/events/search/'." #: contrib/redirects/models.py:9 msgid "redirect to" -msgstr "presmerovaný na " +msgstr "presmerovaÅ¥ na " #: contrib/redirects/models.py:10 msgid "" "This can be either an absolute path (as above) or a full URL starting with " "'http://'." -msgstr "" -"Tu môže byÅ¥ buÄ absolútna cesta (ako hore) alebo plné URL zaÄÃnajúce s " -"'http://'." +msgstr "Tu môže byÅ¥ buÄ absolútna cesta (ako je uvedené vyššie) alebo úplná adresa URL zaÄÃnajúca s 'http://'." -#: contrib/redirects/models.py:12 +#: contrib/redirects/models.py:13 msgid "redirect" msgstr "presmerovanie" -#: contrib/redirects/models.py:13 +#: contrib/redirects/models.py:14 msgid "redirects" msgstr "presmerovania" #: contrib/comments/models.py:67 contrib/comments/models.py:166 msgid "object ID" -msgstr "objekt ID" +msgstr "ID objektu" #: contrib/comments/models.py:68 msgid "headline" -msgstr "titulok" +msgstr "nadpis" #: contrib/comments/models.py:69 contrib/comments/models.py:90 #: contrib/comments/models.py:167 @@ -239,13 +785,13 @@ msgstr "je platné hodnotenie" #: contrib/comments/models.py:83 contrib/comments/models.py:169 msgid "date/time submitted" -msgstr "dátum/Äas poslania" +msgstr "dátum a Äas odoslania" #: contrib/comments/models.py:84 contrib/comments/models.py:170 msgid "is public" -msgstr "je zveréjnený" +msgstr "je verejný" -#: contrib/comments/models.py:85 contrib/admin/views/doc.py:292 +#: contrib/comments/models.py:85 contrib/admin/views/doc.py:304 msgid "IP address" msgstr "IP adresa" @@ -257,9 +803,7 @@ msgstr "je vymazaný" msgid "" "Check this box if the comment is inappropriate. A \"This comment has been " "removed\" message will be displayed instead." -msgstr "" -"Ak je tento komentár nevhodný, tu ho poznaÄ. \"Tento komentár bol vymazaný" -"\" táto správa sa objavà namiesto neho." +msgstr "ZaÅ¡krtnite toto pole, ak je komentár nevhodný. Správa \"Tento komenár bol zmazaný\" sa bude zobrazovaÅ¥ namiesto neho." #: contrib/comments/models.py:91 msgid "comments" @@ -278,7 +822,7 @@ msgid "" "\n" "http://%(domain)s%(url)s" msgstr "" -"Od %(user)s dňa %(date)s\n" +"Pridaný užÃvateľom %(user)s dňa %(date)s\n" "\n" "%(comment)s\n" "\n" @@ -286,7 +830,7 @@ msgstr "" #: contrib/comments/models.py:168 msgid "person's name" -msgstr "osobné meno" +msgstr "meno osoby" #: contrib/comments/models.py:171 msgid "ip address" @@ -306,24 +850,24 @@ msgstr "voľné komentáre" #: contrib/comments/models.py:233 msgid "score" -msgstr "stav" +msgstr "stav skóre" #: contrib/comments/models.py:234 msgid "score date" -msgstr "údaje stavu" +msgstr "dátum stavu skóre" #: contrib/comments/models.py:237 msgid "karma score" -msgstr "karma údaj" +msgstr "karma" #: contrib/comments/models.py:238 msgid "karma scores" -msgstr "karma údaje" +msgstr "karma" #: contrib/comments/models.py:242 #, python-format msgid "%(score)d rating by %(user)s" -msgstr "%(score)d hodnotiteľ %(user)s" +msgstr "%(score)d od hodnotiteľa %(user)s" #: contrib/comments/models.py:258 #, python-format @@ -331,22 +875,21 @@ msgid "" "This comment was flagged by %(user)s:\n" "\n" "%(text)s" -msgstr "" -"Tento komentár bol oznaÄený užÃvateľom %(user)s:\n" +msgstr "Tento komentár bol oznaÄený užÃvateľom %(user)s:\n" "\n" "%(text)s" #: contrib/comments/models.py:265 msgid "flag date" -msgstr "dátumové návestie" +msgstr "dátumové prÃznak" #: contrib/comments/models.py:268 msgid "user flag" -msgstr "návestie uživateľa" +msgstr "uživateľský prÃznak" #: contrib/comments/models.py:269 msgid "user flags" -msgstr "návestia užÃvateľa" +msgstr "užÃvateľské prÃznaky" #: contrib/comments/models.py:273 #, python-format @@ -355,20 +898,20 @@ msgstr " %r návestie" #: contrib/comments/models.py:278 msgid "deletion date" -msgstr "odstránené dátumy" +msgstr "dátum zmazania" #: contrib/comments/models.py:280 msgid "moderator deletion" -msgstr "moderátor odstránenia" +msgstr "zmazania moderátorom" #: contrib/comments/models.py:281 msgid "moderator deletions" -msgstr "moderátor odstránenÃ" +msgstr "Zmazané moderátorom" #: contrib/comments/models.py:285 #, python-format msgid "Moderator deletion by %r" -msgstr "Moderátor odstránenia %r" +msgstr "Zmazanané moderátorom %r" #: contrib/comments/views/karma.py:19 msgid "Anonymous users cannot vote" @@ -380,89 +923,71 @@ msgstr "Chybné ID komentára" #: contrib/comments/views/karma.py:25 msgid "No voting for yourself" -msgstr "NemôžeÅ¡ hlasovaÅ¥ za seba" +msgstr "Nemôžete hlasovaÅ¥ za samého seba" -#: contrib/comments/views/comments.py:28 +#: contrib/comments/views/comments.py:27 msgid "" "This rating is required because you've entered at least one other rating." msgstr "Toto hlasovanie je nevyhnutné, lebo súvisà s predchádzjúcou voľbou." -#: contrib/comments/views/comments.py:112 +#: contrib/comments/views/comments.py:111 #, python-format msgid "" "This comment was posted by a user who has posted fewer than %(count)s " "comment:\n" "\n" "%(text)s" -msgid_plural "" "This comment was posted by a user who has posted fewer than %(count)s " "comments:\n" "\n" "%(text)s" -msgstr[0] "" -"Tento komentár je od užÃvateľa, ktorý doteraz poslal minimálne %(count)s " +msgstr "" +"Tento komentár je od užÃvateľa, ktorý doteraz poslal menej ako %(count)s " "komentár:\n" "\n" "%(text)s" -msgstr[1] "" -"Tento komentár je od užÃvateľa, ktorý doteraz poslal najmenej %(count)s " +"Tento komentár je od užÃvateľa, ktorý doteraz poslal menej ako %(count)s " "komentárov:\n" "\n" "%(text)s" -#: contrib/comments/views/comments.py:117 +#: contrib/comments/views/comments.py:116 #, python-format msgid "" "This comment was posted by a sketchy user:\n" "\n" "%(text)s" -msgstr "" -"Tento komentár je od veľmi náznakového užÃvateľa:\n" +msgstr "Tento komentár je od užÃvateľa, ktorý sa rád vyjadruje v náznakoch:\n" "\n" "%(text)s" -#: contrib/comments/views/comments.py:189 +#: contrib/comments/views/comments.py:188 #: contrib/comments/views/comments.py:280 msgid "Only POSTs are allowed" msgstr "Dovolené sú len POST" -#: contrib/comments/views/comments.py:193 +#: contrib/comments/views/comments.py:192 #: contrib/comments/views/comments.py:284 msgid "One or more of the required fields wasn't submitted" msgstr "Jedno alebo viac povinných polà nebolo vložených" -#: contrib/comments/views/comments.py:197 +#: contrib/comments/views/comments.py:196 #: contrib/comments/views/comments.py:286 msgid "Somebody tampered with the comment form (security violation)" -msgstr "Niekto skúšal manipulovaÅ¥ s formulárom komentára (poruÅ¡ená bezpeÄnosÅ¥)" +msgstr "Niekto sa pokúšal manipulovaÅ¥ s formulárom komentára (poruÅ¡enie bezpeÄnosti)" -#: contrib/comments/views/comments.py:207 +#: contrib/comments/views/comments.py:206 #: contrib/comments/views/comments.py:292 msgid "" "The comment form had an invalid 'target' parameter -- the object ID was " "invalid" msgstr "" -"Formulár komentára ma chybný 'cieľový' parameter -- the objekt ID bol " -"poÅ¡kodený" +"Formulár komentára ma chybný 'target' parameter -- ID objektu je neplatné" #: contrib/comments/views/comments.py:257 #: contrib/comments/views/comments.py:321 msgid "The comment form didn't provide either 'preview' or 'post'" -msgstr "Formulár komentára neposkytuje odpoveÄ buÄ 'prezri' alebo 'poÅ¡li'" - -#: contrib/comments/templates/comments/freeform.html:4 -msgid "Your name:" -msgstr "Tvoje meno:" - -#: contrib/comments/templates/comments/freeform.html:5 -#: contrib/comments/templates/comments/form.html:27 -msgid "Comment:" -msgstr "Komentár:" - -#: contrib/comments/templates/comments/freeform.html:9 -#: contrib/comments/templates/comments/form.html:32 -msgid "Preview comment" -msgstr "Pozri komentár" +msgstr "Formulár komentára neobsahuje ani jednu z možnostà 'náhľad' alebo 'odoslaÅ¥'." #: contrib/comments/templates/comments/form.html:6 #: contrib/comments/templates/comments/form.html:8 @@ -471,35 +996,36 @@ msgid "Username:" msgstr "Meno:" #: contrib/comments/templates/comments/form.html:6 -#: contrib/admin/templates/admin/login.html:20 -msgid "Password:" -msgstr "Heslo:" - -#: contrib/comments/templates/comments/form.html:6 -msgid "Forgotten your password?" -msgstr "Zabudol si svoje heslo?" - -#: contrib/comments/templates/comments/form.html:8 -#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:23 #: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/missing_docutils.html:4 #: contrib/admin/templates/admin_doc/view_index.html:5 #: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/index.html:4 #: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 msgid "Log out" msgstr "Odhlásenie" +#: contrib/comments/templates/comments/form.html:8 +#: contrib/admin/templates/admin/login.html:20 +msgid "Password:" +msgstr "Heslo:" + +#: contrib/comments/templates/comments/form.html:8 +msgid "Forgotten your password?" +msgstr "Zabudli ste heslo?" + #: contrib/comments/templates/comments/form.html:12 msgid "Ratings" msgstr "Hodnotenia" @@ -512,87 +1038,29 @@ msgstr "Požadované" #: contrib/comments/templates/comments/form.html:12 #: contrib/comments/templates/comments/form.html:23 msgid "Optional" -msgstr "Voliteľné" +msgstr "Nepovinné" #: contrib/comments/templates/comments/form.html:23 msgid "Post a photo" msgstr "PoÅ¡li foto" -#: contrib/flatpages/models.py:7 contrib/admin/views/doc.py:303 -msgid "URL" -msgstr "URL" - -#: contrib/flatpages/models.py:8 -msgid "" -"Example: '/about/contact/'. Make sure to have leading and trailing slashes." -msgstr "" -"PrÃklad: '/about/contact/'. Uisti sa, že máš vložené ako úvodné tak aj " -"závereÄné lomÃtka." - -#: contrib/flatpages/models.py:9 -msgid "title" -msgstr "názov" - -#: contrib/flatpages/models.py:10 -msgid "content" -msgstr "obsah" - -#: contrib/flatpages/models.py:11 -msgid "enable comments" -msgstr "povolené komentáre" - -#: contrib/flatpages/models.py:12 -msgid "template name" -msgstr "meno predlohy" - -#: contrib/flatpages/models.py:13 -msgid "" -"Example: 'flatpages/contact_page'. If this isn't provided, the system will " -"use 'flatpages/default'." -msgstr "" -"PrÃklad: 'flatpages/contact_page'. Ak sa toto nevykonalo, systém použije " -"'flatpages/default'." - -#: contrib/flatpages/models.py:14 -msgid "registration required" -msgstr "musÃte byÅ¥ zaregistrovaný" - -#: contrib/flatpages/models.py:14 -msgid "If this is checked, only logged-in users will be able to view the page." -msgstr "" -"Ak je toto oznaÄené, potom len prihlásený užÃvateľ môže vidieÅ¥ túto stránku." - -#: contrib/flatpages/models.py:18 -msgid "flat page" -msgstr "plochá stránka" - -#: contrib/flatpages/models.py:19 -msgid "flat pages" -msgstr "ploché stránky" - -#: contrib/sessions/models.py:35 -msgid "session key" -msgstr "kÄ¾ÃºÄ sedenia" - -#: contrib/sessions/models.py:36 -msgid "session data" -msgstr "údaje sedenia" - -#: contrib/sessions/models.py:37 -msgid "expire date" -msgstr "dátum konca platnosti" +#: contrib/comments/templates/comments/form.html:28 +#: contrib/comments/templates/comments/freeform.html:5 +msgid "Comment:" +msgstr "Komentár:" -#: contrib/sessions/models.py:41 -msgid "session" -msgstr "sedenie" +#: contrib/comments/templates/comments/form.html:35 +#: contrib/comments/templates/comments/freeform.html:10 +msgid "Preview comment" +msgstr "Náhľad komentára" -#: contrib/sessions/models.py:42 -msgid "sessions" -msgstr "sedenia" +#: contrib/comments/templates/comments/freeform.html:4 +msgid "Your name:" +msgstr "Tvoje meno:" #: contrib/sites/models.py:10 msgid "domain name" -msgstr "meno domény" +msgstr "názov domény" #: contrib/sites/models.py:11 msgid "display name" @@ -616,7 +1084,7 @@ msgstr "" "<ul>\n" #: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 -#: contrib/admin/filterspecs.py:143 +#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 msgid "All" msgstr "VÅ¡etko" @@ -640,25 +1108,13 @@ msgstr "Tento mesiac" msgid "This year" msgstr "Tento rok" -#: contrib/admin/filterspecs.py:143 -msgid "Yes" -msgstr "Ãno" - -#: contrib/admin/filterspecs.py:143 -msgid "No" -msgstr "Nie" - -#: contrib/admin/filterspecs.py:150 -msgid "Unknown" -msgstr "Neznámy" - #: contrib/admin/models.py:16 msgid "action time" msgstr "Äas udalosti" #: contrib/admin/models.py:19 msgid "object id" -msgstr "objekt id" +msgstr "id objektu" #: contrib/admin/models.py:20 msgid "object repr" @@ -666,11 +1122,11 @@ msgstr "objekt repr" #: contrib/admin/models.py:21 msgid "action flag" -msgstr "návestie udalosti" +msgstr "prÃznak udalosti" #: contrib/admin/models.py:22 msgid "change message" -msgstr "zmeň zprávu" +msgstr "zmeniÅ¥ zprávu" #: contrib/admin/models.py:25 msgid "log entry" @@ -680,93 +1136,72 @@ msgstr "záznam priebehu" msgid "log entries" msgstr "záznamy priebehu" -#: contrib/admin/templatetags/admin_list.py:228 +#: contrib/admin/templatetags/admin_list.py:247 msgid "All dates" msgstr "VÅ¡etky dátumy" -#: contrib/admin/views/decorators.py:23 -#: contrib/admin/templates/admin/login.html:25 -msgid "Log in" -msgstr "Prihlásenie" +#: contrib/admin/views/auth.py:19 contrib/admin/views/main.py:257 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." +msgstr "Objekt %(name)s \"%(obj)s\" bol úspeÅ¡ne pridaný." -#: contrib/admin/views/decorators.py:61 -msgid "" -"Please log in again, because your session has expired. Don't worry: Your " -"submission has been saved." -msgstr "" -"ProsÃm prihlas sa znovu, lebo Äas tvojho sedenia vyprÅ¡al. Nemaj obavy: tvoje " -"údaje su uchované." +#: contrib/admin/views/auth.py:24 contrib/admin/views/main.py:261 +#: contrib/admin/views/main.py:347 +msgid "You may edit it again below." +msgstr "Môžete pokraÄovaÅ¥ v zmenách." -#: contrib/admin/views/decorators.py:68 -msgid "" -"Looks like your browser isn't configured to accept cookies. Please enable " -"cookies, reload this page, and try again." -msgstr "" -"Vyzerá, že tvoj prehliadaÄ nemá povolené cookies. ProsÃm, povoľ cookies, " -"znovu naÄÃtaj túto stránku a skús ÄinnosÅ¥ znovu." +#: contrib/admin/views/auth.py:30 +msgid "Add user" +msgstr "PridaÅ¥ užÃvateľa" -#: contrib/admin/views/decorators.py:82 -msgid "Usernames cannot contain the '@' character." -msgstr "Meno užÃvateľa nemože obsahovaÅ¥ znak '@' ." +#: contrib/admin/views/auth.py:57 +msgid "Password changed successfully." +msgstr "Heslo bolo úspeÅ¡ne zmenené." -#: contrib/admin/views/decorators.py:84 +#: contrib/admin/views/auth.py:64 #, python-format -msgid "Your e-mail address is not your username. Try '%s' instead." -msgstr "Tvoja e-mailova adresa nie je tvoje užÃvateľské meno. Skús '%s'." +msgid "Change password: %s" +msgstr "ZmeniÅ¥ heslo: %s" -#: contrib/admin/views/main.py:226 +#: contrib/admin/views/main.py:223 msgid "Site administration" -msgstr "Administrácia webu" - -#: contrib/admin/views/main.py:260 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." -msgstr "Objekt %(name)s \"%(obj)s\" bol úspeÅ¡ne pridaný." - -#: contrib/admin/views/main.py:264 contrib/admin/views/main.py:348 -msgid "You may edit it again below." -msgstr "MôžeÅ¡ urobiÅ¥ zmeny zase nižšie." +msgstr "Administrácia" -#: contrib/admin/views/main.py:272 contrib/admin/views/main.py:357 +#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 #, python-format msgid "You may add another %s below." -msgstr "MôžeÅ¡ pridaÅ¥ Äalšà %s nižšie." +msgstr "Môžete pokraÄovaÅ¥ v pridávanà ÄaľšÃch %s." -#: contrib/admin/views/main.py:290 +#: contrib/admin/views/main.py:289 #, python-format msgid "Add %s" msgstr "Pridaj %s" -#: contrib/admin/views/main.py:336 +#: contrib/admin/views/main.py:335 #, python-format msgid "Added %s." msgstr "Bol pridaný %s." -#: contrib/admin/views/main.py:336 contrib/admin/views/main.py:338 -#: contrib/admin/views/main.py:340 -msgid "and" -msgstr "a" - -#: contrib/admin/views/main.py:338 +#: contrib/admin/views/main.py:337 #, python-format msgid "Changed %s." msgstr "Bol zmenený %s" -#: contrib/admin/views/main.py:340 +#: contrib/admin/views/main.py:339 #, python-format msgid "Deleted %s." msgstr "Bol vymazaný %s." -#: contrib/admin/views/main.py:343 +#: contrib/admin/views/main.py:342 msgid "No fields changed." msgstr "Polia neboli zmenené." -#: contrib/admin/views/main.py:346 +#: contrib/admin/views/main.py:345 #, python-format msgid "The %(name)s \"%(obj)s\" was changed successfully." msgstr "Objekt %(name)s \"%(obj)s\" boli úspeÅ¡ne zmenený." -#: contrib/admin/views/main.py:354 +#: contrib/admin/views/main.py:353 #, python-format msgid "" "The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." @@ -774,120 +1209,221 @@ msgstr "" "Objekt %(name)s \"%(obj)s\" bol úspeÅ¡ne zmenený. ÄŽalÅ¡ie zmeny môžeÅ¡ urobiÅ¥ " "zase nižšie." -#: contrib/admin/views/main.py:392 +#: contrib/admin/views/main.py:391 #, python-format msgid "Change %s" -msgstr "Zmeň %s" +msgstr "ZmeniÅ¥ %s" -#: contrib/admin/views/main.py:470 +#: contrib/admin/views/main.py:476 #, python-format msgid "One or more %(fieldname)s in %(name)s: %(obj)s" msgstr "Jeden alebo viac %(fieldname)s v %(name)s: %(obj)s" -#: contrib/admin/views/main.py:475 +#: contrib/admin/views/main.py:481 #, python-format msgid "One or more %(fieldname)s in %(name)s:" msgstr "Jeden alebo viac %(fieldname)s v %(name)s:" -#: contrib/admin/views/main.py:508 +#: contrib/admin/views/main.py:514 #, python-format msgid "The %(name)s \"%(obj)s\" was deleted successfully." msgstr "Objekt %(name)s \"%(obj)s\" bol úspeÅ¡ne vymazaný." -#: contrib/admin/views/main.py:511 +#: contrib/admin/views/main.py:517 msgid "Are you sure?" -msgstr "Si si istý?" +msgstr "Ste si istý?" -#: contrib/admin/views/main.py:533 +#: contrib/admin/views/main.py:539 #, python-format msgid "Change history: %s" -msgstr "Zmeň históriu: %s" +msgstr "ZmeniÅ¥ históriu: %s" -#: contrib/admin/views/main.py:565 +#: contrib/admin/views/main.py:573 #, python-format msgid "Select %s" msgstr "Výber %s" -#: contrib/admin/views/main.py:565 +#: contrib/admin/views/main.py:573 #, python-format msgid "Select %s to change" msgstr "Ktorý %s sa má zmeniÅ¥?" -#: contrib/admin/views/doc.py:279 contrib/admin/views/doc.py:289 -#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:297 -#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:300 +#: contrib/admin/views/main.py:768 +msgid "Database error" +msgstr "Chyba databázy" + +#: contrib/admin/views/decorators.py:10 contrib/auth/forms.py:60 +msgid "" +"Please enter a correct username and password. Note that both fields are case-" +"sensitive." +msgstr "" +"ProsÃm, zadajte užÃvateľské meno a heslo. Pozor na malé a veľké pÃsmená." + +#: contrib/admin/views/decorators.py:24 +#: contrib/admin/templates/admin/login.html:25 +msgid "Log in" +msgstr "Prihlásenie" + +#: contrib/admin/views/decorators.py:62 +msgid "" +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." +msgstr "VaÅ¡a session vyprÅ¡ala. ProsÃm, prÃhlaste sa znovu. NemusÃte sa obávaÅ¥, vaÅ¡e údaje boli uchované." + +#: contrib/admin/views/decorators.py:69 +msgid "" +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." +msgstr "Vyzerá to tak, že váš prehliadaÄ nemá povolené cookies. ProsÃm, povoľte si cookies a skúste znova naÄÃtaÅ¥ stránku." + +#: contrib/admin/views/decorators.py:83 +msgid "Usernames cannot contain the '@' character." +msgstr "UžÃvateľské meno nemože obsahovaÅ¥ znak '@'." + +#: contrib/admin/views/decorators.py:85 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." +msgstr "VaÅ¡a e-mailová adresa nie je užÃvateľským menom. Skúste použiÅ¥ meno '%s'." + +#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 +#: contrib/admin/views/doc.py:50 +msgid "tag:" +msgstr "" + +#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 +#: contrib/admin/views/doc.py:81 +msgid "filter:" +msgstr "" + +#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 +#: contrib/admin/views/doc.py:139 +msgid "view:" +msgstr "" + +#: contrib/admin/views/doc.py:164 +#, python-format +msgid "App %r not found" +msgstr "Aplikáciu %r sa nepodarilo nájsÅ¥." + +#: contrib/admin/views/doc.py:171 +#, python-format +msgid "Model %(name)r not found in app %(label)r" +msgstr "Model %(name)r sa nenachádza v aplikácii %(label)r" + +#: contrib/admin/views/doc.py:183 +#, python-format +msgid "the related `%(label)s.%(type)s` object" +msgstr "Prepojenie na objekt `%(label)s.%(type)s`" + +#: contrib/admin/views/doc.py:183 contrib/admin/views/doc.py:205 +#: contrib/admin/views/doc.py:219 contrib/admin/views/doc.py:224 +msgid "model:" +msgstr "" + +#: contrib/admin/views/doc.py:214 +#, python-format +msgid "related `%(label)s.%(name)s` objects" +msgstr "súvisiace objekty `%(label)s.%(name)s`" + +#: contrib/admin/views/doc.py:219 +#, python-format +msgid "all %s" +msgstr "vÅ¡etky %s" + +#: contrib/admin/views/doc.py:224 +#, python-format +msgid "number of %s" +msgstr "poÄet %s" + +#: contrib/admin/views/doc.py:229 +#, python-format +msgid "Fields on %s objects" +msgstr "Polia objektu %s" + +#: contrib/admin/views/doc.py:291 contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:303 contrib/admin/views/doc.py:309 +#: contrib/admin/views/doc.py:310 contrib/admin/views/doc.py:312 msgid "Integer" -msgstr "CeloÄÃselná hodnota" +msgstr "Celé ÄÃslo" -#: contrib/admin/views/doc.py:280 +#: contrib/admin/views/doc.py:292 msgid "Boolean (Either True or False)" -msgstr "Logická hodnota (buÄ True alebo False)" +msgstr "Logická hodnota (True alebo False)" -#: contrib/admin/views/doc.py:281 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 #, python-format msgid "String (up to %(maxlength)s)" -msgstr "Dĺžka reÅ¥azca (maximálne do %(maxlength)s)" +msgstr "Dĺžka reÅ¥azca (maximálne do %(maxlength)s znakov)" -#: contrib/admin/views/doc.py:282 +#: contrib/admin/views/doc.py:294 msgid "Comma-separated integers" -msgstr "ÄŒiarka oddeľuje celé ÄÃsla" +msgstr "Celé ÄÃsla oddelené Äiarkou" -#: contrib/admin/views/doc.py:283 +#: contrib/admin/views/doc.py:295 msgid "Date (without time)" msgstr "Dátum (bez Äasu)" -#: contrib/admin/views/doc.py:284 +#: contrib/admin/views/doc.py:296 msgid "Date (with time)" -msgstr "Dátum ( a Äas)" +msgstr "Dátum (a Äas)" -#: contrib/admin/views/doc.py:285 +#: contrib/admin/views/doc.py:297 msgid "E-mail address" msgstr "E-mailová adresa" -#: contrib/admin/views/doc.py:286 contrib/admin/views/doc.py:287 -#: contrib/admin/views/doc.py:290 +#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 +#: contrib/admin/views/doc.py:302 msgid "File path" msgstr "Cesta k súboru" -#: contrib/admin/views/doc.py:288 +#: contrib/admin/views/doc.py:300 msgid "Decimal number" -msgstr "Desiatkové ÄÃslo" +msgstr "Desatinné ÄÃslo" -#: contrib/admin/views/doc.py:294 +#: contrib/admin/views/doc.py:306 msgid "Boolean (Either True, False or None)" -msgstr "Logická hodnota (buÄ True, False alebo None)" +msgstr "Logická hodnota (True, False alebo None)" -#: contrib/admin/views/doc.py:295 +#: contrib/admin/views/doc.py:307 msgid "Relation to parent model" -msgstr "Má vzÅ¥ah na rodiÄovský model" +msgstr "Má vzÅ¥ah k nadradenému modelu" -#: contrib/admin/views/doc.py:296 +#: contrib/admin/views/doc.py:308 msgid "Phone number" msgstr "ÄŒÃslo telefónu" -#: contrib/admin/views/doc.py:301 +#: contrib/admin/views/doc.py:313 msgid "Text" msgstr "Text" -#: contrib/admin/views/doc.py:302 +#: contrib/admin/views/doc.py:314 msgid "Time" msgstr "ÄŒas" -#: contrib/admin/views/doc.py:304 +#: contrib/admin/views/doc.py:315 contrib/flatpages/models.py:7 +msgid "URL" +msgstr "URL" + +#: contrib/admin/views/doc.py:316 msgid "U.S. state (two uppercase letters)" -msgstr "U.S. Å¡tát (dve veľké pÃsmena)" +msgstr "Å tát USA (dve veľké pÃsmena)" -#: contrib/admin/views/doc.py:305 +#: contrib/admin/views/doc.py:317 msgid "XML text" msgstr "XML text" +#: contrib/admin/views/doc.py:343 +#, python-format +msgid "%s does not appear to be a urlpattern object" +msgstr "%s nie je urlpattern objekt" + #: contrib/admin/templates/widget/file.html:2 msgid "Currently:" -msgstr "Aktuálny:" +msgstr "Aktuálne:" #: contrib/admin/templates/widget/file.html:3 msgid "Change:" -msgstr "Zmeň:" +msgstr "ZmeniÅ¥:" #: contrib/admin/templates/widget/date_time.html:3 msgid "Date:" @@ -897,43 +1433,49 @@ msgstr "Dátum:" msgid "Time:" msgstr "ÄŒas:" -#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:23 #: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 #: contrib/admin/templates/admin_doc/bookmarklets.html:3 msgid "Documentation" msgstr "Dokumentácia" -#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/object_history.html:3 #: contrib/admin/templates/admin/change_form.html:10 -#: contrib/admin/templates/admin/base.html:23 #: contrib/admin/templates/admin/delete_confirmation.html:3 +#: contrib/admin/templates/admin/base.html:25 +#: contrib/admin/templates/admin/auth/user/change_password.html:9 +#: contrib/admin/templates/admin/auth/user/change_password.html:15 +#: contrib/admin/templates/admin/auth/user/change_password.html:46 #: contrib/admin/templates/registration/password_change_done.html:3 #: contrib/admin/templates/registration/password_change_form.html:3 -#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/view_detail.html:4 -#: contrib/admin/templates/admin_doc/template_tag_index.html:5 +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 #: contrib/admin/templates/admin_doc/template_detail.html:4 -#: contrib/admin/templates/admin_doc/template_filter_index.html:5 +#: contrib/admin/templates/admin_doc/template_tag_index.html:5 #: contrib/admin/templates/admin_doc/missing_docutils.html:4 #: contrib/admin/templates/admin_doc/view_index.html:5 #: contrib/admin/templates/admin_doc/model_detail.html:3 #: contrib/admin/templates/admin_doc/index.html:4 #: contrib/admin/templates/admin_doc/model_index.html:5 +#: contrib/admin/templates/admin_doc/template_filter_index.html:5 msgid "Change password" -msgstr "Zmeň heslo" +msgstr "ZmeniÅ¥ heslo" -#: contrib/admin/templates/admin/object_history.html:5 #: contrib/admin/templates/admin/change_list.html:6 +#: contrib/admin/templates/admin/object_history.html:5 #: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/invalid_setup.html:4 #: contrib/admin/templates/admin/change_form.html:13 -#: contrib/admin/templates/admin/base.html:28 #: contrib/admin/templates/admin/delete_confirmation.html:6 +#: contrib/admin/templates/admin/base.html:30 +#: contrib/admin/templates/admin/auth/user/change_password.html:12 #: contrib/admin/templates/registration/password_change_done.html:4 #: contrib/admin/templates/registration/password_reset_form.html:4 #: contrib/admin/templates/registration/logged_out.html:4 @@ -943,14 +1485,24 @@ msgstr "Zmeň heslo" msgid "Home" msgstr "ZaÄiatok" +#: contrib/admin/templates/admin/change_list.html:12 +#, python-format +msgid "Add %(name)s" +msgstr "PridaÅ¥ %(name)s" + +#: contrib/admin/templates/admin/filter.html:2 +#, python-format +msgid " By %(filter_title)s " +msgstr "Podľa %(filter_title)s " + #: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/change_form.html:20 +#: contrib/admin/templates/admin/change_form.html:21 msgid "History" msgstr "História" #: contrib/admin/templates/admin/object_history.html:18 msgid "Date/time" -msgstr "Dátum/Äas" +msgstr "Dátum a Äas" #: contrib/admin/templates/admin/object_history.html:19 msgid "User" @@ -962,25 +1514,40 @@ msgstr "UdalosÅ¥" #: contrib/admin/templates/admin/object_history.html:26 msgid "DATE_WITH_TIME_FULL" -msgstr "PLNY_DATUM_AJ_CAS" +msgstr "DATE_WITH_TIME_FULL" #: contrib/admin/templates/admin/object_history.html:36 msgid "" "This object doesn't have a change history. It probably wasn't added via this " "admin site." msgstr "" -"Tento object nemá históriu zmien. Možno nebol pridaný prostrednÃctvom tohoto " -"web admina" +"Tento object nemá históriu vykonaných zmien. Možno nebol pridaný prostrednÃctvom tohoto administraÄného rozhrania." + +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" +msgstr "ChoÄ" -#: contrib/admin/templates/admin/change_list.html:11 +#: contrib/admin/templates/admin/search_form.html:10 #, python-format -msgid "Add %(name)s" -msgstr "Pridaj %(name)s" +msgid "1 result" +msgstr "1 výsledok" -#: contrib/admin/templates/admin/filter.html:2 +#: contrib/admin/templates/admin/search_form.html:10 #, python-format -msgid " By %(title)s " -msgstr " Od %(title)s " +msgid "%(full_result_count)s total" +msgstr "%(full_result_count)s spolu" + +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" +msgstr "ZobraziÅ¥ vÅ¡etky" + +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" +msgstr "Django administrácia" + +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" +msgstr "Administrácia Django" #: contrib/admin/templates/admin/500.html:4 msgid "Server error" @@ -998,39 +1565,37 @@ msgstr "Chyba servera <em>(500)</em>" msgid "" "There's been an error. It's been reported to the site administrators via e-" "mail and should be fixed shortly. Thanks for your patience." -msgstr "" -"Vznikla chyba. ProstrednÃctvom e-mailu bol o nej informovaný správca a táto " -"by mala byÅ¥ o chviľu odstránená. ÄŽakujeme za tvoju trpezlivosÅ¥." - -#: contrib/admin/templates/admin/search_form.html:8 -msgid "Go" -msgstr "ChoÄ" - -#: contrib/admin/templates/admin/base_site.html:4 -msgid "Django site admin" -msgstr "Django web admin" +msgstr "Vznikla neoÄakávaná chyba. ProstrednÃctvom e-mailu bol o nej informovaný správca a dá sa predpokladaÅ¥, že bude v krátkej dobe odstránená. ÄŽakujeme za pochopenie." -#: contrib/admin/templates/admin/base_site.html:7 -msgid "Django administration" -msgstr "Administrácia Django" +#: contrib/admin/templates/admin/invalid_setup.html:8 +msgid "" +"Something's wrong with your database installation. Make sure the appropriate " +"database tables have been created, and make sure the database is readable by " +"the appropriate user." +msgstr "S inÅ¡taláciou alebo nastavenÃm vaÅ¡ej databázy nie je nieÄo v poriadku. Uistite sa, že ste vytvorili potrebné databázové tabuľky. Taktiež skontrolujte, Äi má systémový užÃvateľ, pod ktorým bežà aplikácia, právo na prÃstup k databáze a ÄÃtanie súborov databázy." #: contrib/admin/templates/admin/index.html:17 #, python-format msgid "Models available in the %(name)s application." -msgstr "Model je prÃstupný v %(name)s aplikáciÃ." +msgstr "Modely dostupné v aplikácii %(name)s." + +#: contrib/admin/templates/admin/index.html:18 +#, python-format +msgid "%(name)s" +msgstr "%(name)s" #: contrib/admin/templates/admin/index.html:28 #: contrib/admin/templates/admin/change_form.html:15 msgid "Add" -msgstr "Pridaj" +msgstr "PridaÅ¥" #: contrib/admin/templates/admin/index.html:34 msgid "Change" -msgstr "Zmeň" +msgstr "ZmeniÅ¥" #: contrib/admin/templates/admin/index.html:44 msgid "You don't have permission to edit anything." -msgstr "Nemáš povolenie na zmeny ." +msgstr "Nemáte právo na vykonávanie zmien." #: contrib/admin/templates/admin/index.html:52 msgid "Recent Actions" @@ -1042,7 +1607,7 @@ msgstr "Moje udalosti" #: contrib/admin/templates/admin/index.html:57 msgid "None available" -msgstr "Nepovolené" +msgstr "Nedostupné" #: contrib/admin/templates/admin/404.html:4 #: contrib/admin/templates/admin/404.html:8 @@ -1053,32 +1618,27 @@ msgstr "Stránka nebola nájdená" msgid "We're sorry, but the requested page could not be found." msgstr "Ľutujeme, ale požadovaná stránka nebola nájdená." -#: contrib/admin/templates/admin/login.html:22 -msgid "Have you <a href=\"/password_reset/\">forgotten your password</a>?" -msgstr "Zabudol si<a href=\"/password_reset/\"> svoje heslo</a>?" +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" +msgstr "Filter" -#: contrib/admin/templates/admin/change_form.html:21 +#: contrib/admin/templates/admin/change_form.html:22 msgid "View on site" -msgstr "Pozri na webe" +msgstr "PozrieÅ¥ na stránke" -#: contrib/admin/templates/admin/change_form.html:30 +#: contrib/admin/templates/admin/change_form.html:32 +#: contrib/admin/templates/admin/auth/user/change_password.html:24 msgid "Please correct the error below." -msgid_plural "Please correct the errors below." -msgstr[0] "Oprav chybu, Äo je nižšie, prosÃm." -msgstr[1] "Oprav chyby, Äo sú nižšie, prosÃm." +msgstr "ProsÃm, opravte chyby uvedené nižšie." -#: contrib/admin/templates/admin/change_form.html:48 +#: contrib/admin/templates/admin/change_form.html:50 msgid "Ordering" -msgstr "UrÄenie" +msgstr "Radenie" -#: contrib/admin/templates/admin/change_form.html:51 +#: contrib/admin/templates/admin/change_form.html:53 msgid "Order:" msgstr "Poradie:" -#: contrib/admin/templates/admin/base.html:23 -msgid "Welcome," -msgstr "VÃtajte," - #: contrib/admin/templates/admin/delete_confirmation.html:9 #: contrib/admin/templates/admin/submit_line.html:3 msgid "Delete" @@ -1087,49 +1647,79 @@ msgstr "VymazaÅ¥" #: contrib/admin/templates/admin/delete_confirmation.html:14 #, python-format msgid "" -"Deleting the %(object_name)s '%(object)s' would result in deleting related " -"objects, but your account doesn't have permission to delete the following " -"types of objects:" -msgstr "" -"VymazanÃm objektu %(object_name)s '%(object)s' môžeÅ¡ spôsobiÅ¥ vymazanie " -"súvisiacich objektov, ale tvoj úÄet nemá povolenie na mazanie nasledujúcich " -"typov objektov:" +"Deleting the %(object_name)s '%(escaped_object)s' would result in deleting " +"related objects, but your account doesn't have permission to delete the " +"following types of objects:" +msgstr "Zmazanie objektu %(object_name)s '%(escaped_object)s' by spôsobilo zmazanie súvisiacich objektov, avÅ¡ak vaÅ¡e užÃvateľské práva vám neumožňujú zmazaÅ¥ nasledujúce typy objektov:" #: contrib/admin/templates/admin/delete_confirmation.html:21 #, python-format msgid "" -"Are you sure you want to delete the %(object_name)s \"%(object)s\"? All of " -"the following related items will be deleted:" -msgstr "" -"Si si istý, že chceÅ¡ vymazaÅ¥ %(object_name)s \"%(object)s\"? VÅ¡etky " -"nasledujúce objekty budú tiež vymazané :" +"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " +"All of the following related items will be deleted:" +msgstr "Ste si istý, že chcete zmazaÅ¥ objekt %(object_name)s \"%(escaped_object)s\"? " +"Zmazané budú aj vÅ¡etky tieto súvisiace objekty:" #: contrib/admin/templates/admin/delete_confirmation.html:26 msgid "Yes, I'm sure" -msgstr "Ano, som si istý" +msgstr "Ãno, som si istý" + +#: contrib/admin/templates/admin/base.html:25 +msgid "Welcome," +msgstr "Vitajte," #: contrib/admin/templates/admin/submit_line.html:4 msgid "Save as new" -msgstr "ZapÃsaÅ¥ ako nový" +msgstr "UložiÅ¥ ako nový" #: contrib/admin/templates/admin/submit_line.html:5 msgid "Save and add another" -msgstr "ZapÃsaÅ¥ a pridaÅ¥ ÄaÅ¡Ã" +msgstr "UložiÅ¥ a pridaÅ¥ ÄaľšÃ" #: contrib/admin/templates/admin/submit_line.html:6 msgid "Save and continue editing" -msgstr "ZapÃsaÅ¥ a pokraÄovaÅ¥ v zmenách" +msgstr "UložiÅ¥ a pokraÄovaÅ¥ v zmenách" #: contrib/admin/templates/admin/submit_line.html:7 msgid "Save" -msgstr "Zápis" +msgstr "UložiÅ¥" + +#: contrib/admin/templates/admin/auth/user/change_password.html:28 +#, python-format +msgid "Enter a new password for the user <strong>%(username)s</strong>." +msgstr "Zadajte nové heslo pre užÃvateľa <strong>%(username)s</strong>." + +#: contrib/admin/templates/admin/auth/user/change_password.html:34 +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +msgid "Password" +msgstr "Heslo" + +#: contrib/admin/templates/admin/auth/user/change_password.html:39 +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +msgid "Password (again)" +msgstr "Heslo (potvrdiÅ¥)" + +#: contrib/admin/templates/admin/auth/user/change_password.html:40 +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +msgid "Enter the same password as above, for verification." +msgstr "Znova zadajte heslo kvôli overeniu." + +#: contrib/admin/templates/admin/auth/user/add_form.html:6 +msgid "" +"First, enter a username and password. Then, you'll be able to edit more user " +"options." +msgstr "Najskôr zadajte užÃvateľské meno a heslo. Neskôr budete môcÅ¥ upraviÅ¥ ostatné užÃvateľské nastavnia." + +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" +msgstr "UžÃvateľské meno" #: contrib/admin/templates/registration/password_change_done.html:4 #: contrib/admin/templates/registration/password_change_form.html:4 #: contrib/admin/templates/registration/password_change_form.html:6 #: contrib/admin/templates/registration/password_change_form.html:10 msgid "Password change" -msgstr "Zmeň heslo" +msgstr "Zmena heslo" #: contrib/admin/templates/registration/password_change_done.html:6 #: contrib/admin/templates/registration/password_change_done.html:10 @@ -1138,22 +1728,20 @@ msgstr "Heslo bolo úspeÅ¡ne zmenené" #: contrib/admin/templates/registration/password_change_done.html:12 msgid "Your password was changed." -msgstr "Tvoje heslo bolo zmenené." +msgstr "VaÅ¡e heslo bolo zmenené." #: contrib/admin/templates/registration/password_reset_form.html:4 #: contrib/admin/templates/registration/password_reset_form.html:6 #: contrib/admin/templates/registration/password_reset_form.html:10 #: contrib/admin/templates/registration/password_reset_done.html:4 msgid "Password reset" -msgstr "Generácia nového hesla" +msgstr "Obnovenie hesla" #: contrib/admin/templates/registration/password_reset_form.html:12 msgid "" "Forgotten your password? Enter your e-mail address below, and we'll reset " "your password and e-mail the new one to you." -msgstr "" -"Zabudol si svoje heslo? Vlož nižšie tvoju e-mail adresu, a nové heslo ti " -"bude na ňu zaslané ." +msgstr "Zabudli ste svoje heslo? Zadajte svoju e-mailovú adresu, na ktorú vám bude zaslané nové heslo." #: contrib/admin/templates/registration/password_reset_form.html:16 msgid "E-mail address:" @@ -1165,32 +1753,28 @@ msgstr "Obnova môjho hesla" #: contrib/admin/templates/registration/logged_out.html:8 msgid "Thanks for spending some quality time with the Web site today." -msgstr "ÄŽakujeme ti, za stráveny Äas na naÅ¡ej stránke." +msgstr "ÄŽakujeme vám, za Äas strávený na naÅ¡ich stránkach." #: contrib/admin/templates/registration/logged_out.html:10 msgid "Log in again" -msgstr "Prihlás sa znovu" +msgstr "PrihlásiÅ¥ sa znovu" #: contrib/admin/templates/registration/password_reset_done.html:6 #: contrib/admin/templates/registration/password_reset_done.html:10 msgid "Password reset successful" -msgstr "Heslo bolo úspeÅ¡ne vygenerované" +msgstr "Heslo bolo úspeÅ¡ne obnovené" #: contrib/admin/templates/registration/password_reset_done.html:12 msgid "" "We've e-mailed a new password to the e-mail address you submitted. You " "should be receiving it shortly." -msgstr "" -"Poslali sme ti, nové heslo na tebou uvedenú emailovú adresu. Mal by si ho " -"dostaÅ¥ Äo najskôr." +msgstr "Bolo vám zaslané nové heslo na uvedenú adresu. Mali by ste ho obdržaÅ¥ v najbližšej dobe." #: contrib/admin/templates/registration/password_change_form.html:12 msgid "" "Please enter your old password, for security's sake, and then enter your new " "password twice so we can verify you typed it in correctly." -msgstr "" -"Kvôli bezpeÄnosti vlož prosÃm tvoje staré heslo, a potom dvakrát tvoje nové " -"heslo, tým môžeme skontrolovaÅ¥ jeho správnosÅ¥." +msgstr "Z bezpeÄnostných dôvodov zadajte najskôr staré heslo a potom dva krát nové heslo, tak aby sa mohlo overiÅ¥, Äi nevznikol preklep." #: contrib/admin/templates/registration/password_change_form.html:17 msgid "Old password:" @@ -1210,34 +1794,34 @@ msgstr "Zmeň svoje heslo" #: contrib/admin/templates/registration/password_reset_email.html:2 msgid "You're receiving this e-mail because you requested a password reset" -msgstr "Dostal si túto správu preto, lebo si požadoval vygenerovaÅ¥ tvoje heslo" +msgstr "Dostali ste túto správu, lebo ste si vyžiadali obnovu hesla." #: contrib/admin/templates/registration/password_reset_email.html:3 #, python-format msgid "for your user account at %(site_name)s" -msgstr "pre tvoj užÃvateľský úÄet na %(site_name)s" +msgstr "pre váš užÃvateľský úÄet na %(site_name)s" #: contrib/admin/templates/registration/password_reset_email.html:5 #, python-format msgid "Your new password is: %(new_password)s" -msgstr "Tvoje nové heslo je: %(new_password)s" +msgstr "VaÅ¡e nové heslo je: %(new_password)s" #: contrib/admin/templates/registration/password_reset_email.html:7 msgid "Feel free to change this password by going to this page:" -msgstr "MôžeÅ¡ zmeniÅ¥ toto heslo na nasledujúcej stránke:" +msgstr "Heslo si kľudne môžete zmeniÅ¥ na tejto stránke:" #: contrib/admin/templates/registration/password_reset_email.html:11 msgid "Your username, in case you've forgotten:" -msgstr "Tvoje užÃvateľské meno, ak si ho zabudol:" +msgstr "VaÅ¡e užÃvateľské meno, pre prÃpad, že ste zabudli:" #: contrib/admin/templates/registration/password_reset_email.html:13 msgid "Thanks for using our site!" -msgstr "ÄŽakujeme, že použÃvaÅ¡ naÅ¡e stránky!" +msgstr "ÄŽakujeme vám, že využÃvate služby naÅ¡ej stránky!" #: contrib/admin/templates/registration/password_reset_email.html:15 #, python-format msgid "The %(site_name)s team" -msgstr "Skupina %(site_name)s" +msgstr "TÃm %(site_name)s" #: contrib/admin/templates/admin_doc/bookmarklets.html:3 msgid "Bookmarklets" @@ -1256,70 +1840,509 @@ msgid "" "bookmarklets require you to be viewing the site from a computer designated\n" "as \"internal\" (talk to your system administrator if you aren't sure if\n" "your computer is \"internal\").</p>\n" -msgstr "" -"\n" -"<p class=\"help\">Na inÅ¡taláciu záložiek, potiahni linku do tvojho " -"bookmarks\n" -"toolbar, alebo klikni pravou myÅ¡ou na linku a pridaj ju do tvojho " -"bookmarks.\n" -"Teraz si môžeÅ¡ vybraÅ¥ záložku pre ľubovoľnú stránku na webe. Poznámka:\n" -"niektoré záložky vyžadujú aby si prezeral web z poÄÃtaÄa oznaÄeného \n" -"ako \"internal\" (opýtaj sa vášho systémového administrátora ak si si nie " -"istý/á, \n" -"že tvoj poÄÃtaÄ je oznaÄený ako \"internal\").</p>\n" +msgstr "\n" +"<p class=\"help\">Ak chete nainÅ¡talovaÅ¥ záložky, pretiahnite linku do vášho panela so záložkami\n" +"alebo kliknite pravým tlaÄidlom myÅ¡i na linku a pridajte ju do svojich záložiek.\n" +"Následne môžete záložky použiÅ¥ na stránkach. VÅ¡imnite si, že použitie niektorých záložiek vyžaduje, aby bol váš poÄÃtaÄ pridaný do zoznamu INTERNAL_IPS. Ak nie ste si istý, že ste v tomto zozname, oslovte vášho administrátora.</p>\n" #: contrib/admin/templates/admin_doc/bookmarklets.html:19 msgid "Documentation for this page" -msgstr "Dokumnentácia tejto stránky" +msgstr "Dokumentácia k tejto stránke" #: contrib/admin/templates/admin_doc/bookmarklets.html:20 msgid "" "Jumps you from any page to the documentation for the view that generates " "that page." msgstr "" -"SkoÄ z ľubovoľnej stránky do dokumentácie, kde je popÃsaná generácia tejto " -"stránky." +"SkoÄte z ľubovoľnej stránky do dokumentácie, kde je popÃsané, ako sa táto stránka generuje." #: contrib/admin/templates/admin_doc/bookmarklets.html:22 msgid "Show object ID" -msgstr "Ukáž objekt ID" +msgstr "ZobraziÅ¥ ID objektu." #: contrib/admin/templates/admin_doc/bookmarklets.html:23 msgid "" "Shows the content-type and unique ID for pages that represent a single " "object." -msgstr "" -"Ukáž typ obsahu a jednoznaÄné ID pre stránky, ktoré zatupujú jednoduché " -"objekty." +msgstr "Zobrazuje content-type a ID stránok, ktoré reprezentujú jediný objekt." #: contrib/admin/templates/admin_doc/bookmarklets.html:25 msgid "Edit this object (current window)" -msgstr "Edituj tento object (aktuálne okno)" +msgstr "Editácia tohoto objektu (v aktuálnom okne)" #: contrib/admin/templates/admin_doc/bookmarklets.html:26 msgid "Jumps to the admin page for pages that represent a single object." -msgstr "SkoÄ na stránku admina, ktorá zastupuje jednoduchý objekt" +msgstr "SkoÄiÅ¥ na stránku admina, ktorá reprezentuje tento jeden objekt." #: contrib/admin/templates/admin_doc/bookmarklets.html:28 msgid "Edit this object (new window)" -msgstr "Edituj tento objekt (nové okno)" +msgstr "Editácia tohoto objektu (v novom okne)" #: contrib/admin/templates/admin_doc/bookmarklets.html:29 msgid "As above, but opens the admin page in a new window." -msgstr "Ako vyššie, ale stranka admina sa otvorà v novom okne." +msgstr "To isté ako predtým, akurát otvorà administraÄnú stránku v novom okne." -#: utils/translation.py:363 -msgid "DATE_FORMAT" +#: contrib/contenttypes/models.py:36 +msgid "python model class name" +msgstr "pythonové meno triedy modelu" + +#: contrib/contenttypes/models.py:39 +msgid "content type" +msgstr "typ obsahu" + +#: contrib/contenttypes/models.py:40 +msgid "content types" +msgstr "typy obsahu" + +#: contrib/auth/views.py:39 +msgid "Logged out" +msgstr "Odhlásený" + +#: contrib/auth/models.py:38 contrib/auth/models.py:57 +msgid "name" +msgstr "meno" + +#: contrib/auth/models.py:40 +msgid "codename" +msgstr "codename" + +#: contrib/auth/models.py:42 +msgid "permission" +msgstr "povolenie" + +#: contrib/auth/models.py:43 contrib/auth/models.py:58 +msgid "permissions" +msgstr "práva" + +#: contrib/auth/models.py:60 +msgid "group" +msgstr "skupina" + +#: contrib/auth/models.py:61 contrib/auth/models.py:100 +msgid "groups" +msgstr "skupiny" + +#: contrib/auth/models.py:90 +msgid "username" +msgstr "užÃvateľské meno" + +#: contrib/auth/models.py:90 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." +msgstr "Povinná položka s dĺžkou 30 znakov alebo menej. Povolené sú len alfanumerické znaky (pÃsmená, ÄÃsla a podtržnÃk)." + +#: contrib/auth/models.py:91 +msgid "first name" +msgstr "krstné meno" + +#: contrib/auth/models.py:92 +msgid "last name" +msgstr "priezvisko" + +#: contrib/auth/models.py:93 +msgid "e-mail address" +msgstr "e-mailová adresa" + +#: contrib/auth/models.py:94 +msgid "password" +msgstr "heslo" + +#: contrib/auth/models.py:94 +msgid "" +"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " +"password form</a>." +msgstr "Použite '[algo]$[salt]$[hexdigest]' alebo <a href=\"password/\">formulár na zmenu hesla</a>." + +#: contrib/auth/models.py:95 +msgid "staff status" +msgstr "zamestnanec" + +#: contrib/auth/models.py:95 +msgid "Designates whether the user can log into this admin site." +msgstr "UrÄuje, Äi má užÃvateľ oprávnenie prihlásiÅ¥ sa do administraÄnej Äasti." + +#: contrib/auth/models.py:96 +msgid "active" +msgstr "aktÃvny" + +#: contrib/auth/models.py:96 +msgid "" +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." +msgstr "UrÄuje, Äi je úÄet aktÃvny. OdÅ¡krtnite, ak chcete deaktivovaÅ¥ užÃvateľský úÄet." + +#: contrib/auth/models.py:97 +msgid "superuser status" +msgstr "superužÃvateľ" + +#: contrib/auth/models.py:97 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." +msgstr "UrÄuje, Äi užÃvateľ zÃskava automaticky vÅ¡etky práva aj bez priameho priradenia." + +#: contrib/auth/models.py:98 +msgid "last login" +msgstr "naposledy prihlásený" + +#: contrib/auth/models.py:99 +msgid "date joined" +msgstr "dátum registrácie" + +#: contrib/auth/models.py:101 +msgid "" +"In addition to the permissions manually assigned, this user will also get " +"all permissions granted to each group he/she is in." +msgstr "Okrem ruÄne zadaných práv bude maÅ¥ užÃvateľ aj vÅ¡etky práva prislúchajúce skupinám, v ktorých sa nachádza." + +#: contrib/auth/models.py:102 +msgid "user permissions" +msgstr "užÃvateľské práva" + +#: contrib/auth/models.py:105 +msgid "user" +msgstr "uživateľ" + +#: contrib/auth/models.py:106 +msgid "users" +msgstr "užÃvatelia" + +#: contrib/auth/models.py:111 +msgid "Personal info" +msgstr "Osobné údaje" + +#: contrib/auth/models.py:112 +msgid "Permissions" +msgstr "Práva" + +#: contrib/auth/models.py:113 +msgid "Important dates" +msgstr "Dôležité dátumy" + +#: contrib/auth/models.py:114 +msgid "Groups" +msgstr "Skupiny" + +#: contrib/auth/models.py:258 +msgid "message" +msgstr "správa" + +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 +msgid "The two password fields didn't match." +msgstr "Pole hesla a jeho potvrdenie sa nezhodujú." + +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." +msgstr "UžÃvateľ s týmto užÃvateľským menom už existuje." + +#: contrib/auth/forms.py:53 +msgid "" +"Your Web browser doesn't appear to have cookies enabled. Cookies are " +"required for logging in." +msgstr "Váš prehliadaÄ nemá povolené cookies. Cookies sú potrebné pre úspeÅ¡né prihlásenie." + +#: contrib/auth/forms.py:62 +msgid "This account is inactive." +msgstr "ÚÄet je deaktivovaný." + +#: contrib/auth/forms.py:85 +msgid "" +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "K danej e-mailovej adrese neexistuje užÃvateľský úÄet. Ste si istý, že ste sa zaregistrovali?" + +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." +msgstr "Pole nového hesla a jeho potvrdenie sa nezhodujú." + +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." +msgstr "VaÅ¡e staré heslo nebolo zadané správne. ProsÃm, zadajte heslo znova." + +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "Zadajte britský poÅ¡tový kód (PSÄŒ). Medzera medzi dvomi ÄasÅ¥ami kódu je povinná." + +#: contrib/localflavor/fr/forms.py:17 contrib/localflavor/it/forms.py:15 +#: contrib/localflavor/fi/forms.py:14 +msgid "Enter a zip code in the format XXXXX." +msgstr "Vložte poÅ¡tové smerovacie ÄÃslo v tvare XXXXX." + +#: contrib/localflavor/usa/forms.py:17 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "Zadajte americký poÅ¡tový kód (ZIP) vo formáte XXXXX alebo XXXXX-XXXX." + +#: contrib/localflavor/jp/jp_prefectures.py:4 +msgid "Hokkaido" msgstr "" -#: utils/translation.py:364 -msgid "DATETIME_FORMAT" +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" msgstr "" -#: utils/translation.py:365 -msgid "TIME_FORMAT" +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" msgstr "" +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" +msgstr "" + +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" +msgstr "" + +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +msgstr "Zadajte poÅ¡tové smerovacie ÄÃslo v tvare XXXXXXX alebo XXX-XXXX." + +#: contrib/localflavor/no/forms.py:15 +msgid "Enter a zip code in the format XXXX." +msgstr "Vložte poÅ¡tové smerovacie ÄÃslo v tvare XXXX." + +#: contrib/localflavor/no/forms.py:36 +msgid "Enter a valid Norwegian social security number." +msgstr "Vložte platné nórske ÄÃslo sociálneho poistenia (social security number)." + +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:46 +msgid "Enter a valid Finnish social security number." +msgstr "Vložte platné fÃnske ÄÃslo sociálneho poistenia (social security number)." + +#: contrib/sessions/models.py:68 +msgid "session key" +msgstr "kÄ¾ÃºÄ session" + +#: contrib/sessions/models.py:69 +msgid "session data" +msgstr "údaje session" + +#: contrib/sessions/models.py:70 +msgid "expire date" +msgstr "dátum vyprÅ¡ania platnosti" + +#: contrib/sessions/models.py:74 +msgid "session" +msgstr "session" + +#: contrib/sessions/models.py:75 +msgid "sessions" +msgstr "sessions" + +#: contrib/flatpages/models.py:8 +msgid "" +"Example: '/about/contact/'. Make sure to have leading and trailing slashes." +msgstr "" +"PrÃklad: '/about/contact/'. Uistite sa, že adresa obsahuje na zaÄiatku a na konci.lomÃtka." + +#: contrib/flatpages/models.py:9 +msgid "title" +msgstr "názov" + +#: contrib/flatpages/models.py:10 +msgid "content" +msgstr "obsah" + +#: contrib/flatpages/models.py:11 +msgid "enable comments" +msgstr "povoliÅ¥ komentáre" + +#: contrib/flatpages/models.py:12 +msgid "template name" +msgstr "názov Å¡ablóny" + +#: contrib/flatpages/models.py:13 +msgid "" +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." +msgstr "" +"PrÃklad: 'flatpages/contact_page'. Ak táto Å¡ablóna neexistuje, systém použije " +"'flatpages/default'." + +#: contrib/flatpages/models.py:14 +msgid "registration required" +msgstr "je vyžadovaná registrácia" + +#: contrib/flatpages/models.py:14 +msgid "If this is checked, only logged-in users will be able to view the page." +msgstr "Ak je zaÅ¡krtnuté, tak sa stránka zobrazà len prihlásenému užÃvateľovi." + +#: contrib/flatpages/models.py:18 +msgid "flat page" +msgstr "statická stránka" + +#: contrib/flatpages/models.py:19 +msgid "flat pages" +msgstr "statické stránky" + #: utils/dates.py:6 msgid "Monday" msgstr "Pondelok" @@ -1398,19 +2421,19 @@ msgstr "December" #: utils/dates.py:19 msgid "jan" -msgstr "" +msgstr "jan" #: utils/dates.py:19 msgid "feb" -msgstr "" +msgstr "feb" #: utils/dates.py:19 msgid "mar" -msgstr "" +msgstr "mar" #: utils/dates.py:19 msgid "apr" -msgstr "" +msgstr "apr" #: utils/dates.py:19 msgid "may" @@ -1426,11 +2449,11 @@ msgstr "júl" #: utils/dates.py:20 msgid "aug" -msgstr "" +msgstr "aug" #: utils/dates.py:20 msgid "sep" -msgstr "" +msgstr "sep" #: utils/dates.py:20 msgid "oct" @@ -1438,11 +2461,11 @@ msgstr "okt" #: utils/dates.py:20 msgid "nov" -msgstr "" +msgstr "nov" #: utils/dates.py:20 msgid "dec" -msgstr "" +msgstr "dec" #: utils/dates.py:27 msgid "Jan." @@ -1474,529 +2497,73 @@ msgstr "Dec." #: utils/timesince.py:12 msgid "year" -msgid_plural "years" -msgstr[0] "rok" -msgstr[1] "rokov" +msgstr "rok" #: utils/timesince.py:13 msgid "month" -msgid_plural "months" -msgstr[0] "mesiac" -msgstr[1] "mesiacov" +msgstr "mesiac" #: utils/timesince.py:14 msgid "week" -msgid_plural "weeks" -msgstr[0] "" -msgstr[1] "" +msgstr "týždeň" #: utils/timesince.py:15 msgid "day" -msgid_plural "days" -msgstr[0] "Äeň" -msgstr[1] "dnÃ" +msgstr "deň" #: utils/timesince.py:16 msgid "hour" -msgid_plural "hours" -msgstr[0] "hodina" -msgstr[1] "hodÃn" +msgstr "hodina" #: utils/timesince.py:17 msgid "minute" -msgid_plural "minutes" -msgstr[0] "minúta" -msgstr[1] "minút" +msgstr "minúta" -#: conf/global_settings.py:37 -msgid "Bengali" -msgstr "Bengálsky" - -#: conf/global_settings.py:38 -msgid "Czech" -msgstr "ÄŒeský" - -#: conf/global_settings.py:39 -msgid "Welsh" -msgstr "Waleský" - -#: conf/global_settings.py:40 -msgid "Danish" -msgstr "Dánsky" - -#: conf/global_settings.py:41 -msgid "German" -msgstr "Nemecký" - -#: conf/global_settings.py:42 -msgid "Greek" -msgstr "Grécký" - -#: conf/global_settings.py:43 -msgid "English" -msgstr "Anglický" - -#: conf/global_settings.py:44 -msgid "Spanish" -msgstr "Å panielsky" - -#: conf/global_settings.py:45 -msgid "Argentinean Spanish" -msgstr "ArgentÃnska Å¡panielÄina" - -#: conf/global_settings.py:46 -msgid "French" -msgstr "Francúzsky" - -#: conf/global_settings.py:47 -msgid "Galician" -msgstr "Galicijský" - -#: conf/global_settings.py:48 -msgid "Hungarian" -msgstr "MaÄarský" - -#: conf/global_settings.py:49 -msgid "Hebrew" -msgstr "Hebrejský" - -#: conf/global_settings.py:50 -msgid "Icelandic" -msgstr "Islandský" - -#: conf/global_settings.py:51 -msgid "Italian" -msgstr "Taliansky" - -#: conf/global_settings.py:52 -msgid "Japanese" -msgstr "Japónsky" - -#: conf/global_settings.py:53 -msgid "Dutch" -msgstr "Holándsky" +#: utils/dateformat.py:40 +msgid "p.m." +msgstr "p.m." -#: conf/global_settings.py:54 -msgid "Norwegian" -msgstr "Nórsky" +#: utils/dateformat.py:41 +msgid "a.m." +msgstr "a.m." -#: conf/global_settings.py:55 -msgid "Brazilian" -msgstr "BrazÃlsky" - -#: conf/global_settings.py:56 -msgid "Romanian" -msgstr "Rumúnsky" - -#: conf/global_settings.py:57 -msgid "Russian" -msgstr "Ruský" - -#: conf/global_settings.py:58 -msgid "Slovak" -msgstr "Slovenský" - -#: conf/global_settings.py:59 -msgid "Slovenian" -msgstr "Slovinský" - -#: conf/global_settings.py:60 -msgid "Serbian" -msgstr "Srbský" - -#: conf/global_settings.py:61 -msgid "Swedish" -msgstr "Å védsky" - -#: conf/global_settings.py:62 -msgid "Ukrainian" -msgstr "UkrajÃnsky" - -#: conf/global_settings.py:63 -msgid "Simplified Chinese" -msgstr "ZjednoduÅ¡ená ÄinÅ¡tina " - -#: conf/global_settings.py:64 -msgid "Traditional Chinese" -msgstr "TradiÄná ÄÃnÅ¡tina" - -#: db/models/manipulators.py:302 -#, python-format -msgid "%(object)s with this %(type)s already exists for the given %(field)s." -msgstr "%(object)s s %(type)s už existuje pre prvok %(field)s." - -#: db/models/fields/__init__.py:40 -#, python-format -msgid "%(optname)s with this %(fieldname)s already exists." -msgstr "%(optname)s s %(fieldname)s už existuje." - -#: db/models/fields/__init__.py:114 db/models/fields/__init__.py:265 -#: db/models/fields/__init__.py:542 db/models/fields/__init__.py:553 -#: forms/__init__.py:346 -msgid "This field is required." -msgstr "Toto pole je nevyhnutné." - -#: db/models/fields/__init__.py:337 -msgid "This value must be an integer." -msgstr "Táto hodnota musà byÅ¥ integer." - -#: db/models/fields/__init__.py:369 -msgid "This value must be either True or False." -msgstr "Táto hodnota musà byÅ¥ buÄ True alebo False." - -#: db/models/fields/__init__.py:385 -msgid "This field cannot be null." -msgstr "Toto pole nemôže obsahovaÅ¥ null." - -#: db/models/fields/__init__.py:468 core/validators.py:132 -msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." -msgstr "Vlož platný dátum/Äas vo formáte RRRR-MM-DD HH:MM" - -#: db/models/fields/__init__.py:562 -msgid "Enter a valid filename." -msgstr "Vlož platné meno súboru." - -#: db/models/fields/related.py:43 -#, python-format -msgid "Please enter a valid %s." -msgstr "ProsÃm vlož platné %s." - -#: db/models/fields/related.py:579 -msgid "Separate multiple IDs with commas." -msgstr "Oddeľ viacnásobné ID Äiarkami." - -#: db/models/fields/related.py:581 -msgid "" -"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +#: utils/dateformat.py:46 +msgid "PM" msgstr "" -" Podržte \"Control\", alebo \"Command\" na Mac_u, na výber viac ako jednej " -"položky." -#: db/models/fields/related.py:625 -#, python-format -msgid "Please enter valid %(self)s IDs. The value %(value)r is invalid." -msgid_plural "" -"Please enter valid %(self)s IDs. The values %(value)r are invalid." -msgstr[0] "ProsÃm vlož platné %(self)s IDs. Hodnota %(value)r je neplatná." -msgstr[1] "ProsÃm vlož platné %(self)s IDs. Hodnoty %(value)r sú neplatné." - -#: forms/__init__.py:380 -#, python-format -msgid "Ensure your text is less than %s character." -msgid_plural "Ensure your text is less than %s characters." -msgstr[0] "ZabezpeÄ aby tvoj text bol menšà ako %s znak." -msgstr[1] "ZabezpeÄ aby tvoj text bol menšà ako %s znakov." - -#: forms/__init__.py:385 -msgid "Line breaks are not allowed here." -msgstr "Nový riadok tu nieje povolený." - -#: forms/__init__.py:480 forms/__init__.py:551 forms/__init__.py:589 -#, python-format -msgid "Select a valid choice; '%(data)s' is not in %(choices)s." -msgstr "Vyber si platnú voľbu; '%(data)s' nie je v %(choices)s." - -#: forms/__init__.py:645 -msgid "The submitted file is empty." -msgstr "Poslaný súbor je prázdný." - -#: forms/__init__.py:699 -msgid "Enter a whole number between -32,768 and 32,767." -msgstr "Vlož celé ÄÃslo s hodnotou medzi -32768 a 32767." - -#: forms/__init__.py:708 -msgid "Enter a positive number." -msgstr "Vlož celé kladné ÄÃslo." - -#: forms/__init__.py:717 -msgid "Enter a whole number between 0 and 32,767." -msgstr "Vlož celé ÄÃslo s hodnotou medzi 0 a 32767." - -#: core/validators.py:60 -msgid "This value must contain only letters, numbers and underscores." -msgstr "Toto môže obsahovaÅ¥ len pÃsmená, ÄÃslice a podÄiarkovnÃky." - -#: core/validators.py:64 -msgid "" -"This value must contain only letters, numbers, underscores, dashes or " -"slashes." +#: utils/dateformat.py:47 +msgid "AM" msgstr "" -"Toto môže obsahovaÅ¥ len pÃsmena, ÄÃslice, podÄiarkovniky, pomlÄky a lomÃtka." -#: core/validators.py:72 -msgid "Uppercase letters are not allowed here." -msgstr "Veľké pÃsmená tu nie sú povolené." +#: utils/dateformat.py:95 +msgid "midnight" +msgstr "polnoc" -#: core/validators.py:76 -msgid "Lowercase letters are not allowed here." -msgstr "Malé pÃsmena tu nie sú povolené." - -#: core/validators.py:83 -msgid "Enter only digits separated by commas." -msgstr "Vlož len ÄÃslice, oddelené Äiarkami." - -#: core/validators.py:95 -msgid "Enter valid e-mail addresses separated by commas." -msgstr "Vlož platné e-mail adresy oddelené Äiarkami." +#: utils/dateformat.py:97 +msgid "noon" +msgstr "poludnie" -#: core/validators.py:99 -msgid "Please enter a valid IP address." -msgstr "ProsÃm vlož platnú IP adresu." - -#: core/validators.py:103 -msgid "Empty values are not allowed here." -msgstr "Prázdne hodnoty tu nie sú povolené." - -#: core/validators.py:107 -msgid "Non-numeric characters aren't allowed here." -msgstr "Znaky, ktoré nie sú ÄÃslicami, tu nie sú povolené." - -#: core/validators.py:111 -msgid "This value can't be comprised solely of digits." -msgstr "Tento údaj nemôže byÅ¥ vytvorený len z ÄÃslic." - -#: core/validators.py:116 -msgid "Enter a whole number." -msgstr "Vlož celé ÄÃslo." - -#: core/validators.py:120 -msgid "Only alphabetical characters are allowed here." -msgstr "Tu sú povolené len alfanumerické znaky." - -#: core/validators.py:124 -msgid "Enter a valid date in YYYY-MM-DD format." -msgstr "Vlož platný dátum vo formáte RRRR-MM-DD." - -#: core/validators.py:128 -msgid "Enter a valid time in HH:MM format." -msgstr "Vlož platný Äas vo formáte HH:MM." - -#: core/validators.py:136 -msgid "Enter a valid e-mail address." -msgstr "Vlož platnú e-mail adresu." - -#: core/validators.py:148 -msgid "" -"Upload a valid image. The file you uploaded was either not an image or a " -"corrupted image." -msgstr "" -"Nahraj platný obrázok. Súbor, ktorý si nahral buÄ nebol obrázok alebo je " -"nahratý poÅ¡kodený obrázok." - -#: core/validators.py:155 -#, python-format -msgid "The URL %s does not point to a valid image." -msgstr "URL %s neukazuje na platný obrázok." - -#: core/validators.py:159 -#, python-format -msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." -msgstr "" -"Telefónne ÄÃslo musà maÅ¥ formát XXX-XXX-XXXX. ÄŒÃslo \"%s\" je neplatné." - -#: core/validators.py:167 -#, python-format -msgid "The URL %s does not point to a valid QuickTime video." -msgstr "URL %s neukazuje na platné QuickTime video." - -#: core/validators.py:171 -msgid "A valid URL is required." -msgstr "Platné URL je požadované." - -#: core/validators.py:185 -#, python-format -msgid "" -"Valid HTML is required. Specific errors are:\n" -"%s" -msgstr "" -"Je požadovaná bezchybná stránka HTML. Zistené chyby sú:\n" -"%s" - -#: core/validators.py:192 -#, python-format -msgid "Badly formed XML: %s" -msgstr "Chybne formované XML: %s" - -#: core/validators.py:202 -#, python-format -msgid "Invalid URL: %s" -msgstr "Neplatné URL: %s" - -#: core/validators.py:206 core/validators.py:208 -#, python-format -msgid "The URL %s is a broken link." -msgstr "Odkaz na URL %s je neplatný." - -#: core/validators.py:214 -msgid "Enter a valid U.S. state abbreviation." -msgstr "Vlož platnú skratku U.S. Å¡tátu." - -#: core/validators.py:229 -#, python-format -msgid "Watch your mouth! The word %s is not allowed here." -msgid_plural "Watch your mouth! The words %s are not allowed here." -msgstr[0] "Vyjadruj sa sluÅ¡ne! Slovo %s tu nie je dovolené použivaÅ¥." -msgstr[1] "Vyjadruj sa sluÅ¡ne! Slová %s tu nie je dovolené použivaÅ¥." - -#: core/validators.py:236 -#, python-format -msgid "This field must match the '%s' field." -msgstr "Toto pole sa musà zhodovaÅ¥ s poľom '%s'. " - -#: core/validators.py:255 -msgid "Please enter something for at least one field." -msgstr "ProsÃm vlož nieÄo aspoň pre jedno pole." - -#: core/validators.py:264 core/validators.py:275 -msgid "Please enter both fields or leave them both empty." -msgstr "ProsÃm vlož obidve polia, alebo nechaj ich obe prázdne. " - -#: core/validators.py:282 -#, python-format -msgid "This field must be given if %(field)s is %(value)s" -msgstr "Toto pole musà byÅ¥ vyplnené tak, že %(field)s obsahuje %(value)s" - -#: core/validators.py:294 -#, python-format -msgid "This field must be given if %(field)s is not %(value)s" -msgstr "" -"Toto pole musà byÅ¥ vyplnené tak, že %(field)s nesmie obsahovaÅ¥ %(value)s" - -#: core/validators.py:313 -msgid "Duplicate values are not allowed." -msgstr "Duplicitné hodnoty nie sú povolené." - -#: core/validators.py:336 -#, python-format -msgid "This value must be a power of %s." -msgstr "Táto hodnota musà byÅ¥ mocninou %s." - -#: core/validators.py:347 -msgid "Please enter a valid decimal number." -msgstr "ProsÃm vlož platné desiatkové ÄÃslo. " - -#: core/validators.py:349 -#, python-format -msgid "Please enter a valid decimal number with at most %s total digit." -msgid_plural "" -"Please enter a valid decimal number with at most %s total digits." -msgstr[0] "ProsÃm vlož platné desiatkové ÄÃslo s najviac %s ÄÃslicou." -msgstr[1] "ProsÃm vlož platné desiatkové ÄÃslo s najviac %s ÄÃslicami." - -#: core/validators.py:352 -#, python-format -msgid "Please enter a valid decimal number with at most %s decimal place." -msgid_plural "" -"Please enter a valid decimal number with at most %s decimal places." -msgstr[0] "ProsÃm vlož platné desatinné ÄÃslo s najviac %s desatinným miestom." -msgstr[1] "" -"ProsÃm vlož platné desatinné ÄÃslo s najviac %s desatinnými miestami." - -#: core/validators.py:362 -#, python-format -msgid "Make sure your uploaded file is at least %s bytes big." -msgstr "PresvedÄ sa, že posielaný súbor nemá menej ako %s bytov." - -#: core/validators.py:363 -#, python-format -msgid "Make sure your uploaded file is at most %s bytes big." -msgstr "PresvedÄ sa, že posielaný súbor nemá viac ako %s bytov." - -#: core/validators.py:376 -msgid "The format for this field is wrong." -msgstr "Formát pre toto pole je chybný." - -#: core/validators.py:391 -msgid "This field is invalid." -msgstr "Toto pole nie je platné." - -#: core/validators.py:426 -#, python-format -msgid "Could not retrieve anything from %s." -msgstr "NiÄ som nemohol zÃskaÅ¥ z %s." - -#: core/validators.py:429 -#, python-format -msgid "" -"The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." -msgstr "" -" URL %(url)s vrátilo neplatnú hlaviÄku Content-Type '%(contenttype)s'." - -#: core/validators.py:462 -#, python-format -msgid "" -"Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " -"\"%(start)s\".)" -msgstr "" -"ProsÃm zavri nezavretý %(tag)s popisovaÄ v riadku %(line)s. (Riadok zaÄÃna " -"s \"%(start)s\".)" - -#: core/validators.py:466 -#, python-format -msgid "" -"Some text starting on line %(line)s is not allowed in that context. (Line " -"starts with \"%(start)s\".)" +#: utils/translation/trans_real.py:362 +msgid "DATE_FORMAT" msgstr "" -"Nejaký text zaÄÃnajúci na riadku %(line)s nie je povolený v tomto kontexte. " -"(Riadok zaÄÃna s \"%(start)s\".)" -#: core/validators.py:471 -#, python-format -msgid "" -"\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" -"(start)s\".)" +#: utils/translation/trans_real.py:363 +msgid "DATETIME_FORMAT" msgstr "" -"\"%(attr)s\" na riadku %(line)s je neplatný atribút. (Riadok zaÄÃna s \"%" -"(start)s\".)" -#: core/validators.py:476 -#, python-format -msgid "" -"\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" -"(start)s\".)" +#: utils/translation/trans_real.py:364 +msgid "TIME_FORMAT" msgstr "" -"\"<%(tag)s>\" na riadku %(line)s je neplatný popisovaÄ. (Riadok zaÄÃna s \"%" -"(start)s\".)" -#: core/validators.py:480 -#, python-format -msgid "" -"A tag on line %(line)s is missing one or more required attributes. (Line " -"starts with \"%(start)s\".)" +#: utils/translation/trans_real.py:380 +msgid "YEAR_MONTH_FORMAT" msgstr "" -"PopisovaÄu na riadku %(line)s chýba jeden alebo viac atribútov. (Riadok " -"zaÄÃna s \"%(start)s\".)" -#: core/validators.py:485 -#, python-format -msgid "" -"The \"%(attr)s\" attribute on line %(line)s has an invalid value. (Line " -"starts with \"%(start)s\".)" +#: utils/translation/trans_real.py:381 +msgid "MONTH_DAY_FORMAT" msgstr "" -"Atribút \"%(attr)s\" na riadku %(line)s má neplatnú hodnotu. (Riadok zaÄÃna " -"s \"%(start)s\".)" -#: template/defaultfilters.py:383 +#: template/defaultfilters.py:491 msgid "yes,no,maybe" -msgstr "ano,nie,možno" - -#~ msgid "Comment" -#~ msgstr "Komentár" - -#~ msgid "Comments" -#~ msgstr "Komentáre" - -#~ msgid "Delete this file." -#~ msgstr "Vymaž tento súbor." - -#~ msgid "label" -#~ msgstr "popis" - -#~ msgid "package" -#~ msgstr "balÃk" - -#~ msgid "packages" -#~ msgstr "balÃky" +msgstr "áno,nie,možno" -#~ msgid "String (up to 50)" -#~ msgstr "ReÅ¥azec (do 50 )" diff --git a/django/conf/locale/sk/LC_MESSAGES/djangojs.mo b/django/conf/locale/sk/LC_MESSAGES/djangojs.mo Binary files differindex a4f5b84a53..1a168078c6 100644 --- a/django/conf/locale/sk/LC_MESSAGES/djangojs.mo +++ b/django/conf/locale/sk/LC_MESSAGES/djangojs.mo diff --git a/django/conf/locale/sk/LC_MESSAGES/djangojs.po b/django/conf/locale/sk/LC_MESSAGES/djangojs.po index df24a19442..f442a15ff1 100644 --- a/django/conf/locale/sk/LC_MESSAGES/djangojs.po +++ b/django/conf/locale/sk/LC_MESSAGES/djangojs.po @@ -1,20 +1,15 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# VLADO LABATH <vlado@labath.org>, 2005. -# -#, fuzzy +# msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: Django 1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-12-18 19:38-0500\n" -"PO-Revision-Date: 2005-12-18 19:26-0500\n" -"Last-Translator: VLADO LABATH <vlado@labath.org>\n" -"Language-Team: LANGUAGE <sk@li.org>\n" +"POT-Creation-Date: 2007-04-01 19:21+0200\n" +"PO-Revision-Date: 2007-04-03 21:48+0200\n" +"Last-Translator: <>\n" +"Language-Team: \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit" #: contrib/admin/media/js/SelectFilter2.js:33 #, perl-format @@ -23,15 +18,15 @@ msgstr "Možný %s" #: contrib/admin/media/js/SelectFilter2.js:41 msgid "Choose all" -msgstr "Vyber vÅ¡etko" +msgstr "VybraÅ¥ vÅ¡etko" #: contrib/admin/media/js/SelectFilter2.js:46 msgid "Add" -msgstr "Pridaj" +msgstr "PridaÅ¥" #: contrib/admin/media/js/SelectFilter2.js:48 msgid "Remove" -msgstr "Vymaž" +msgstr "VymazaÅ¥" #: contrib/admin/media/js/SelectFilter2.js:53 #, perl-format @@ -40,13 +35,13 @@ msgstr "Vybrané %s" #: contrib/admin/media/js/SelectFilter2.js:54 msgid "Select your choice(s) and click " -msgstr "Vyber si svoju voľbu a klikni" +msgstr "Vyberte položku a kliknite" #: contrib/admin/media/js/SelectFilter2.js:59 msgid "Clear all" -msgstr "VyÄisti vÅ¡etko" +msgstr "OdstrániÅ¥ vybrané" -#: contrib/admin/media/js/dateparse.js:26 +#: contrib/admin/media/js/dateparse.js:32 #: contrib/admin/media/js/calendar.js:24 msgid "" "January February March April May June July August September October November " @@ -55,7 +50,7 @@ msgstr "" "Január Február Marec AprÃl Máj Jún Júl August September Október November " "December" -#: contrib/admin/media/js/dateparse.js:27 +#: contrib/admin/media/js/dateparse.js:33 msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" msgstr "Nedeľa Pondelok Utorok Streda Å tvrtok Piatok Sobota" @@ -63,49 +58,59 @@ msgstr "Nedeľa Pondelok Utorok Streda Å tvrtok Piatok Sobota" msgid "S M T W T F S" msgstr "N P U S Å P S" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:45 -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:80 +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:34 +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:72 +msgid "Show" +msgstr "ZobraziÅ¥" + +#: contrib/admin/media/js/admin/CollapsedFieldsets.js:63 +msgid "Hide" +msgstr "SkryÅ¥" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:47 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 msgid "Now" msgstr "Práve teraz" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:48 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:51 msgid "Clock" msgstr "Hodiny" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:77 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:78 msgid "Choose a time" -msgstr "Vyber Äas" +msgstr "VybraÅ¥ Äas" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 msgid "Midnight" msgstr "Polnoc" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 msgid "6 a.m." msgstr "6 ráno" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:84 msgid "Noon" msgstr "Poludnie" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:87 -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:168 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:88 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:183 msgid "Cancel" -msgstr "ZruÅ¡" +msgstr "ZruÅ¡iÅ¥" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:111 -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:162 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:128 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:177 msgid "Today" msgstr "Dnes" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:114 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:132 msgid "Calendar" msgstr "Kalendár" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:160 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:175 msgid "Yesterday" msgstr "VÄera" -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:164 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:179 msgid "Tomorrow" msgstr "Zajtra" + diff --git a/django/conf/locale/sl/LC_MESSAGES/djangojs.mo b/django/conf/locale/sl/LC_MESSAGES/djangojs.mo Binary files differnew file mode 100644 index 0000000000..9288529a3f --- /dev/null +++ b/django/conf/locale/sl/LC_MESSAGES/djangojs.mo diff --git a/django/conf/locale/sl/LC_MESSAGES/djangojs.po b/django/conf/locale/sl/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000..ef5edccda4 --- /dev/null +++ b/django/conf/locale/sl/LC_MESSAGES/djangojs.po @@ -0,0 +1,107 @@ +# Copyright (C) 2007 +# This file is distributed under the same license as the PACKAGE package. +# +msgid "" +msgstr "" +"Project-Id-Version: DJANGO-JS\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-12-09 11:51+0100\n" +"PO-Revision-Date: 2007-03-31 21:29+0100\n" +"Last-Translator: Gasper Koren <skrat@owca.info>\n" +"Language-Team: SLOVENIAN <lugos-slo@lugos.si>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Slovenian\n" +"X-Poedit-Country: SLOVENIA\n" + +#: contrib/admin/media/js/SelectFilter2.js:33 +#, perl-format +msgid "Available %s" +msgstr "Možne %s" + +#: contrib/admin/media/js/SelectFilter2.js:41 +msgid "Choose all" +msgstr "Izberi vse" + +#: contrib/admin/media/js/SelectFilter2.js:46 +msgid "Add" +msgstr "Dodaj" + +#: contrib/admin/media/js/SelectFilter2.js:48 +msgid "Remove" +msgstr "Odstrani" + +#: contrib/admin/media/js/SelectFilter2.js:53 +#, perl-format +msgid "Chosen %s" +msgstr "Izberite %s" + +#: contrib/admin/media/js/SelectFilter2.js:54 +msgid "Select your choice(s) and click " +msgstr "Izberite in kliknite" + +#: contrib/admin/media/js/SelectFilter2.js:59 +msgid "Clear all" +msgstr "IzbriÅ¡i vse" + +#: contrib/admin/media/js/dateparse.js:26 +#: contrib/admin/media/js/calendar.js:24 +msgid "January February March April May June July August September October November December" +msgstr "Januar Februar Marec April Maj Junij Julij Avgust September Oktober November December" + +#: contrib/admin/media/js/dateparse.js:27 +msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" +msgstr "Nedelja Ponedeljek Torek Sreda ÄŒetrtek Petek Sobota" + +#: contrib/admin/media/js/calendar.js:25 +msgid "S M T W T F S" +msgstr "N P T S ÄŒ P S" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:45 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:80 +msgid "Now" +msgstr "Sedaj" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:48 +msgid "Clock" +msgstr "URA" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:77 +msgid "Choose a time" +msgstr "Izberite Äas" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:81 +msgid "Midnight" +msgstr "PolnoÄ" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:82 +msgid "6 a.m." +msgstr "Ob 6h" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:83 +msgid "Noon" +msgstr "Opoldne" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:87 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:168 +msgid "Cancel" +msgstr "PrekliÄi" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:111 +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:162 +msgid "Today" +msgstr "Danes" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:114 +msgid "Calendar" +msgstr "Koledar" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:160 +msgid "Yesterday" +msgstr "VÄeraj" + +#: contrib/admin/media/js/admin/DateTimeShortcuts.js:164 +msgid "Tomorrow" +msgstr "Jutri" + diff --git a/django/conf/locale/zh_CN/LC_MESSAGES/django.mo b/django/conf/locale/zh_CN/LC_MESSAGES/django.mo Binary files differindex 0d6bf90c0e..3b04920654 100644 --- a/django/conf/locale/zh_CN/LC_MESSAGES/django.mo +++ b/django/conf/locale/zh_CN/LC_MESSAGES/django.mo diff --git a/django/conf/locale/zh_CN/LC_MESSAGES/django.po b/django/conf/locale/zh_CN/LC_MESSAGES/django.po index 2552b677bd..1f30a08b15 100644 --- a/django/conf/locale/zh_CN/LC_MESSAGES/django.po +++ b/django/conf/locale/zh_CN/LC_MESSAGES/django.po @@ -1344,7 +1344,7 @@ msgstr "四月" #: utils/dates.py:19 msgid "may" -msgstr "三月" +msgstr "五月" #: utils/dates.py:19 msgid "jun" diff --git a/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo b/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo Binary files differindex ec7580a862..f0127a55a0 100644 --- a/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo +++ b/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.mo diff --git a/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.po b/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.po index 610e61d17a..03abe3708c 100644 --- a/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.po +++ b/django/conf/locale/zh_CN/LC_MESSAGES/djangojs.po @@ -46,7 +46,7 @@ msgstr "清除全部" #: contrib/admin/media/js/dateparse.js:32 #: contrib/admin/media/js/calendar.js:24 msgid "January February March April May June July August September October November December" -msgstr "一月 二月 三月 四月 五月 å…æœˆ å…æœˆ 七月 八月 乿œˆ åæœˆ å一月 å二月" +msgstr "一月 二月 三月 四月 五月 å…æœˆ 七月 八月 乿œˆ åæœˆ å一月 å二月" #: contrib/admin/media/js/dateparse.js:33 msgid "Sunday Monday Tuesday Wednesday Thursday Friday Saturday" diff --git a/django/conf/urls/defaults.py b/django/conf/urls/defaults.py index 49bc176ef3..1e87ea708a 100644 --- a/django/conf/urls/defaults.py +++ b/django/conf/urls/defaults.py @@ -11,9 +11,10 @@ def patterns(prefix, *args): pattern_list = [] for t in args: if isinstance(t, (list, tuple)): - pattern_list.append(url(prefix=prefix, *t)) - else: - pattern_list.append(t) + t = url(prefix=prefix, *t) + elif isinstance(t, RegexURLPattern): + t.add_prefix(prefix) + pattern_list.append(t) return pattern_list def url(regex, view, kwargs=None, name=None, prefix=''): @@ -21,5 +22,7 @@ def url(regex, view, kwargs=None, name=None, prefix=''): # For include(...) processing. return RegexURLResolver(regex, view[0], kwargs) else: - return RegexURLPattern(regex, prefix and (prefix + '.' + view) or view, kwargs, name) + if prefix and isinstance(view, basestring): + view = prefix + '.' + view + return RegexURLPattern(regex, view, kwargs, name) diff --git a/django/contrib/admin/media/css/forms.css b/django/contrib/admin/media/css/forms.css index 0cfe2ff28e..72e57501e9 100644 --- a/django/contrib/admin/media/css/forms.css +++ b/django/contrib/admin/media/css/forms.css @@ -26,7 +26,7 @@ form .aligned p, form .aligned ul { margin-left:7em; padding-left:30px; } form .aligned table p { margin-left:0; padding-left:0; } form .aligned p.help { padding-left:38px; } .aligned .vCheckboxLabel { float:none !important; display:inline; padding-left:4px; } -.colM .aligned .vLargeTextField, colM .aligned .vXMLLargeTextField { width:610px; } +.colM .aligned .vLargeTextField, .colM .aligned .vXMLLargeTextField { width:610px; } .checkbox-row p.help { margin-left:0; padding-left:0 !important; } /* WIDE FIELDSETS */ diff --git a/django/contrib/admin/templatetags/admin_modify.py b/django/contrib/admin/templatetags/admin_modify.py index e7a6cff262..ff189a405a 100644 --- a/django/contrib/admin/templatetags/admin_modify.py +++ b/django/contrib/admin/templatetags/admin_modify.py @@ -42,7 +42,7 @@ class FieldWidgetNode(template.Node): self.bound_field_var = bound_field_var def get_nodelist(cls, klass): - if not cls.nodelists.has_key(klass): + if klass not in cls.nodelists: try: field_class_name = klass.__name__ template_name = "widget/%s.html" % class_name_to_underscored(field_class_name) diff --git a/django/contrib/admin/templatetags/log.py b/django/contrib/admin/templatetags/log.py index 5caba2b795..8d52d2e944 100644 --- a/django/contrib/admin/templatetags/log.py +++ b/django/contrib/admin/templatetags/log.py @@ -11,9 +11,12 @@ class AdminLogNode(template.Node): return "<GetAdminLog Node>" def render(self, context): - if self.user is not None and not self.user.isdigit(): - self.user = context[self.user].id - context[self.varname] = LogEntry.objects.filter(user__id__exact=self.user).select_related()[:self.limit] + if self.user is None: + context[self.varname] = LogEntry.objects.all().select_related()[:self.limit] + else: + if not self.user.isdigit(): + self.user = context[self.user].id + context[self.varname] = LogEntry.objects.filter(user__id__exact=self.user).select_related()[:self.limit] return '' class DoGetAdminLog: diff --git a/django/contrib/admin/views/auth.py b/django/contrib/admin/views/auth.py index c5dfaf7141..7ab34a24ee 100644 --- a/django/contrib/admin/views/auth.py +++ b/django/contrib/admin/views/auth.py @@ -17,7 +17,7 @@ def user_add_stage(request): if not errors: new_user = manipulator.save(new_data) msg = _('The %(name)s "%(obj)s" was added successfully.') % {'name': 'user', 'obj': new_user} - if request.POST.has_key("_addanother"): + if "_addanother" in request.POST: request.user.message_set.create(message=msg) return HttpResponseRedirect(request.path) else: @@ -29,7 +29,7 @@ def user_add_stage(request): return render_to_response('admin/auth/user/add_form.html', { 'title': _('Add user'), 'form': form, - 'is_popup': request.REQUEST.has_key('_popup'), + 'is_popup': '_popup' in request.REQUEST, 'add': True, 'change': False, 'has_delete_permission': False, @@ -61,7 +61,7 @@ def user_change_password(request, id): return render_to_response('admin/auth/user/change_password.html', { 'title': _('Change password: %s') % escape(user.username), 'form': form, - 'is_popup': request.REQUEST.has_key('_popup'), + 'is_popup': '_popup' in request.REQUEST, 'add': True, 'change': False, 'has_delete_permission': False, diff --git a/django/contrib/admin/views/decorators.py b/django/contrib/admin/views/decorators.py index 9dfe651fe6..5389ca4dff 100644 --- a/django/contrib/admin/views/decorators.py +++ b/django/contrib/admin/views/decorators.py @@ -12,7 +12,7 @@ LOGIN_FORM_KEY = 'this_is_the_login_form' def _display_login_form(request, error_message=''): request.session.set_test_cookie() - if request.POST and request.POST.has_key('post_data'): + if request.POST and 'post_data' in request.POST: # User has failed login BUT has previously saved post data. post_data = request.POST['post_data'] elif request.POST: @@ -48,7 +48,7 @@ def staff_member_required(view_func): def _checklogin(request, *args, **kwargs): if request.user.is_authenticated() and request.user.is_staff: # The user is valid. Continue to the admin page. - if request.POST.has_key('post_data'): + if 'post_data' in request.POST: # User must have re-authenticated through a different window # or tab. request.POST = _decode_post_data(request.POST['post_data']) @@ -57,7 +57,7 @@ def staff_member_required(view_func): assert hasattr(request, 'session'), "The Django admin requires session middleware to be installed. Edit your MIDDLEWARE_CLASSES setting to insert 'django.contrib.sessions.middleware.SessionMiddleware'." # If this isn't already the login page, display it. - if not request.POST.has_key(LOGIN_FORM_KEY): + if LOGIN_FORM_KEY not in request.POST: if request.POST: message = _("Please log in again, because your session has expired. Don't worry: Your submission has been saved.") else: @@ -90,11 +90,9 @@ def staff_member_required(view_func): if user.is_active and user.is_staff: login(request, user) # TODO: set last_login with an event. - user.last_login = datetime.datetime.now() - user.save() - if request.POST.has_key('post_data'): + if 'post_data' in request.POST: post_data = _decode_post_data(request.POST['post_data']) - if post_data and not post_data.has_key(LOGIN_FORM_KEY): + if post_data and LOGIN_FORM_KEY not in post_data: # overwrite request.POST with the saved post_data, and continue request.POST = post_data request.user = user diff --git a/django/contrib/admin/views/main.py b/django/contrib/admin/views/main.py index e2011f04c5..e715fdf063 100644 --- a/django/contrib/admin/views/main.py +++ b/django/contrib/admin/views/main.py @@ -200,7 +200,7 @@ def _get_deleted_objects(deleted_objects, perms_needed, user, obj, opts, current opts_seen.append(related.opts) rel_opts_name = related.get_accessor_name() has_related_objs = False - + # related.get_accessor_name() could return None for symmetrical relationships if rel_opts_name: rel_objs = getattr(obj, rel_opts_name, None) @@ -247,12 +247,12 @@ class ChangeList(object): self.page_num = int(request.GET.get(PAGE_VAR, 0)) except ValueError: self.page_num = 0 - self.show_all = request.GET.has_key(ALL_VAR) - self.is_popup = request.GET.has_key(IS_POPUP_VAR) + self.show_all = ALL_VAR in request.GET + self.is_popup = IS_POPUP_VAR in request.GET self.params = dict(request.GET.items()) - if self.params.has_key(PAGE_VAR): + if PAGE_VAR in self.params: del self.params[PAGE_VAR] - if self.params.has_key(ERROR_FLAG): + if ERROR_FLAG in self.params: del self.params[ERROR_FLAG] self.order_field, self.order_type = self.get_ordering() @@ -282,7 +282,7 @@ class ChangeList(object): if k.startswith(r): del p[k] for k, v in new_params.items(): - if p.has_key(k) and v is None: + if k in p and v is None: del p[k] elif v is not None: p[k] = v @@ -344,7 +344,7 @@ class ChangeList(object): order_field, order_type = ordering[0][1:], 'desc' else: order_field, order_type = ordering[0], 'asc' - if params.has_key(ORDER_VAR): + if ORDER_VAR in params: try: field_name = self.list_display[int(params[ORDER_VAR])] try: @@ -362,7 +362,7 @@ class ChangeList(object): order_field = f.name except (IndexError, ValueError): pass # Invalid ordering specified. Just use the default. - if params.has_key(ORDER_TYPE_VAR) and params[ORDER_TYPE_VAR] in ('asc', 'desc'): + if ORDER_TYPE_VAR in params and params[ORDER_TYPE_VAR] in ('asc', 'desc'): order_type = params[ORDER_TYPE_VAR] return order_field, order_type @@ -370,7 +370,7 @@ class ChangeList(object): qs = self.root_query_set lookup_params = self.params.copy() # a dictionary of the query string for i in (ALL_VAR, ORDER_VAR, ORDER_TYPE_VAR, SEARCH_VAR, IS_POPUP_VAR): - if lookup_params.has_key(i): + if i in lookup_params: del lookup_params[i] # Apply lookup parameters from the query string. diff --git a/django/contrib/auth/__init__.py b/django/contrib/auth/__init__.py index dd3b8152e6..d37450805f 100644 --- a/django/contrib/auth/__init__.py +++ b/django/contrib/auth/__init__.py @@ -1,8 +1,8 @@ +import datetime from django.core.exceptions import ImproperlyConfigured SESSION_KEY = '_auth_user_id' BACKEND_SESSION_KEY = '_auth_user_backend' -LOGIN_URL = '/accounts/login/' REDIRECT_FIELD_NAME = 'next' def load_backend(path): @@ -49,6 +49,8 @@ def login(request, user): if user is None: user = request.user # TODO: It would be nice to support different login methods, like signed cookies. + user.last_login = datetime.datetime.now() + user.save() request.session[SESSION_KEY] = user.id request.session[BACKEND_SESSION_KEY] = user.backend diff --git a/django/contrib/auth/decorators.py b/django/contrib/auth/decorators.py index 37e948f8fe..2fb4a6f510 100644 --- a/django/contrib/auth/decorators.py +++ b/django/contrib/auth/decorators.py @@ -1,13 +1,16 @@ -from django.contrib.auth import LOGIN_URL, REDIRECT_FIELD_NAME +from django.contrib.auth import REDIRECT_FIELD_NAME from django.http import HttpResponseRedirect from urllib import quote -def user_passes_test(test_func, login_url=LOGIN_URL): +def user_passes_test(test_func, login_url=None): """ Decorator for views that checks that the user passes the given test, redirecting to the log-in page if necessary. The test should be a callable that takes the user object and returns True if the user passes. """ + if not login_url: + from django.conf import settings + login_url = settings.LOGIN_URL def _dec(view_func): def _checklogin(request, *args, **kwargs): if test_func(request.user): @@ -27,7 +30,7 @@ login_required.__doc__ = ( """ ) -def permission_required(perm, login_url=LOGIN_URL): +def permission_required(perm, login_url=None): """ Decorator for views that checks whether a user has a particular permission enabled, redirecting to the log-in page if necessary. diff --git a/django/contrib/auth/models.py b/django/contrib/auth/models.py index f92d6d7413..c653cdf156 100644 --- a/django/contrib/auth/models.py +++ b/django/contrib/auth/models.py @@ -17,6 +17,12 @@ def check_password(raw_password, enc_password): elif algo == 'sha1': import sha return hsh == sha.new(salt+raw_password).hexdigest() + elif algo == 'crypt': + try: + import crypt + except ImportError: + raise ValueError, "Crypt password algorithm not supported in this environment." + return hsh == crypt.crypt(raw_password, salt) raise ValueError, "Got unknown password algorithm type in password." class SiteProfileNotAvailable(Exception): @@ -95,8 +101,8 @@ class User(models.Model): is_staff = models.BooleanField(_('staff status'), default=False, help_text=_("Designates whether the user can log into this admin site.")) is_active = models.BooleanField(_('active'), default=True, help_text=_("Designates whether this user can log into the Django admin. Unselect this instead of deleting accounts.")) is_superuser = models.BooleanField(_('superuser status'), default=False, help_text=_("Designates that this user has all permissions without explicitly assigning them.")) - last_login = models.DateTimeField(_('last login'), default=models.LazyDate()) - date_joined = models.DateTimeField(_('date joined'), default=models.LazyDate()) + last_login = models.DateTimeField(_('last login'), default=datetime.datetime.now) + date_joined = models.DateTimeField(_('date joined'), default=datetime.datetime.now) groups = models.ManyToManyField(Group, verbose_name=_('groups'), blank=True, help_text=_("In addition to the permissions manually assigned, this user will also get all permissions granted to each group he/she is in.")) user_permissions = models.ManyToManyField(Permission, verbose_name=_('user permissions'), blank=True) @@ -258,7 +264,7 @@ class AnonymousUser(object): pass def __str__(self): - return 'AnonymousUser' + return _('AnonymousUser') def __eq__(self, other): return isinstance(other, self.__class__) diff --git a/django/contrib/auth/views.py b/django/contrib/auth/views.py index fda17b91fb..77350b9a8f 100644 --- a/django/contrib/auth/views.py +++ b/django/contrib/auth/views.py @@ -6,7 +6,7 @@ from django.template import RequestContext from django.contrib.sites.models import Site from django.http import HttpResponseRedirect from django.contrib.auth.decorators import login_required -from django.contrib.auth import LOGIN_URL, REDIRECT_FIELD_NAME +from django.contrib.auth import REDIRECT_FIELD_NAME def login(request, template_name='registration/login.html'): "Displays the login form and handles the login action." @@ -17,7 +17,8 @@ def login(request, template_name='registration/login.html'): if not errors: # Light security check -- make sure redirect_to isn't garbage. if not redirect_to or '://' in redirect_to or ' ' in redirect_to: - redirect_to = '/accounts/profile/' + from django.conf import settings + redirect_to = settings.LOGIN_REDIRECT_URL from django.contrib.auth import login login(request, manipulator.get_user()) request.session.delete_test_cookie() @@ -41,12 +42,18 @@ def logout(request, next_page=None, template_name='registration/logged_out.html' # Redirect to this page until the session has been cleared. return HttpResponseRedirect(next_page or request.path) -def logout_then_login(request, login_url=LOGIN_URL): +def logout_then_login(request, login_url=None): "Logs out the user if he is logged in. Then redirects to the log-in page." + if not login_url: + from django.conf import settings + login_url = settings.LOGIN_URL return logout(request, login_url) -def redirect_to_login(next, login_url=LOGIN_URL): +def redirect_to_login(next, login_url=None): "Redirects the user to the login page, passing the given 'next' page" + if not login_url: + from django.conf import settings + login_url = settings.LOGIN_URL return HttpResponseRedirect('%s?%s=%s' % (login_url, REDIRECT_FIELD_NAME, next)) def password_reset(request, is_admin_site=False, template_name='registration/password_reset_form.html', diff --git a/django/contrib/comments/templates/comments/form.html b/django/contrib/comments/templates/comments/form.html index c5aa7686a3..11eaa8d00d 100644 --- a/django/contrib/comments/templates/comments/form.html +++ b/django/contrib/comments/templates/comments/form.html @@ -3,7 +3,7 @@ <form {% if photos_optional or photos_required %}enctype="multipart/form-data" {% endif %}action="/comments/post/" method="post"> {% if user.is_authenticated %} -<p>{% trans "Username:" %} <strong>{{ user.username }}</strong> (<a href="/accounts/logout/">{% trans "Log out" %}</a>)</p> +<p>{% trans "Username:" %} <strong>{{ user.username }}</strong> (<a href="{{ logout_url }}">{% trans "Log out" %}</a>)</p> {% else %} <p><label for="id_username">{% trans "Username:" %}</label> <input type="text" name="username" id="id_username" /><br />{% trans "Password:" %} <input type="password" name="password" id="id_password" /> (<a href="/accounts/password_reset/">{% trans "Forgotten your password?" %}</a>)</p> {% endif %} diff --git a/django/contrib/comments/templatetags/comments.py b/django/contrib/comments/templatetags/comments.py index c3a2fd40d8..5c02c16f95 100644 --- a/django/contrib/comments/templatetags/comments.py +++ b/django/contrib/comments/templatetags/comments.py @@ -25,6 +25,7 @@ class CommentFormNode(template.Node): self.is_public = is_public def render(self, context): + from django.conf import settings from django.utils.text import normalize_newlines import base64 context.push() @@ -64,6 +65,7 @@ class CommentFormNode(template.Node): if self.rating_options: context['rating_range'], context['rating_choices'] = Comment.objects.get_rating_options(self.rating_options) context['hash'] = Comment.objects.get_security_hash(context['options'], context['photo_options'], context['rating_options'], context['target']) + context['logout_url'] = settings.LOGOUT_URL default_form = loader.get_template(COMMENT_FORM) output = default_form.render(context) context.pop() @@ -114,7 +116,7 @@ class CommentListNode(template.Node): comment_list = get_list_function(**kwargs).order_by(self.ordering + 'submit_date').select_related() if not self.free: - if context.has_key('user') and context['user'].is_authenticated(): + if 'user' in context and context['user'].is_authenticated(): user_id = context['user'].id context['user_can_moderate_comments'] = Comment.objects.user_is_moderator(context['user']) else: diff --git a/django/contrib/comments/views/comments.py b/django/contrib/comments/views/comments.py index 12330afe41..73a9b2c480 100644 --- a/django/contrib/comments/views/comments.py +++ b/django/contrib/comments/views/comments.py @@ -217,10 +217,10 @@ def post_comment(request): errors = manipulator.get_validation_errors(new_data) # If user gave correct username/password and wasn't already logged in, log them in # so they don't have to enter a username/password again. - if manipulator.get_user() and not manipulator.get_user().is_authenticated() and new_data.has_key('password') and manipulator.get_user().check_password(new_data['password']): + if manipulator.get_user() and not manipulator.get_user().is_authenticated() and 'password' in new_data and manipulator.get_user().check_password(new_data['password']): from django.contrib.auth import login login(request, manipulator.get_user()) - if errors or request.POST.has_key('preview'): + if errors or 'preview' in request.POST: class CommentFormWrapper(oldforms.FormWrapper): def __init__(self, manipulator, new_data, errors, rating_choices): oldforms.FormWrapper.__init__(self, manipulator, new_data, errors) @@ -244,7 +244,7 @@ def post_comment(request): 'rating_range': rating_range, 'rating_choices': rating_choices, }, context_instance=RequestContext(request)) - elif request.POST.has_key('post'): + elif 'post' in request.POST: # If the IP is banned, mail the admins, do NOT save the comment, and # serve up the "Thanks for posting" page as if the comment WAS posted. if request.META['REMOTE_ADDR'] in settings.BANNED_IPS: @@ -298,7 +298,7 @@ def post_free_comment(request): new_data['is_public'] = IS_PUBLIC in option_list manipulator = PublicFreeCommentManipulator() errors = manipulator.get_validation_errors(new_data) - if errors or request.POST.has_key('preview'): + if errors or 'preview' in request.POST: comment = errors and '' or manipulator.get_comment(new_data) return render_to_response('comments/free_preview.html', { 'comment': comment, @@ -307,7 +307,7 @@ def post_free_comment(request): 'target': target, 'hash': security_hash, }, context_instance=RequestContext(request)) - elif request.POST.has_key('post'): + elif 'post' in request.POST: # If the IP is banned, mail the admins, do NOT save the comment, and # serve up the "Thanks for posting" page as if the comment WAS posted. if request.META['REMOTE_ADDR'] in settings.BANNED_IPS: @@ -330,7 +330,7 @@ def comment_was_posted(request): The object the comment was posted on """ obj = None - if request.GET.has_key('c'): + if 'c' in request.GET: content_type_id, object_id = request.GET['c'].split(':') try: content_type = ContentType.objects.get(pk=content_type_id) diff --git a/django/db/models/fields/generic.py b/django/contrib/contenttypes/generic.py index 1b0661dbe9..f995ab2044 100644 --- a/django/db/models/fields/generic.py +++ b/django/contrib/contenttypes/generic.py @@ -16,18 +16,18 @@ class GenericForeignKey(object): Provides a generic relation to any object through content-type/object-id fields. """ - + def __init__(self, ct_field="content_type", fk_field="object_id"): self.ct_field = ct_field self.fk_field = fk_field - + def contribute_to_class(self, cls, name): - # Make sure the fields exist (these raise FieldDoesNotExist, + # Make sure the fields exist (these raise FieldDoesNotExist, # which is a fine error to raise here) self.name = name self.model = cls self.cache_attr = "_%s_cache" % name - + # For some reason I don't totally understand, using weakrefs here doesn't work. dispatcher.connect(self.instance_pre_init, signal=signals.pre_init, sender=cls, weak=False) @@ -35,18 +35,18 @@ class GenericForeignKey(object): setattr(cls, name, self) def instance_pre_init(self, signal, sender, args, kwargs): - # Handle initalizing an object with the generic FK instaed of - # content-type/object-id fields. - if kwargs.has_key(self.name): + # Handle initalizing an object with the generic FK instaed of + # content-type/object-id fields. + if self.name in kwargs: value = kwargs.pop(self.name) kwargs[self.ct_field] = self.get_content_type(value) kwargs[self.fk_field] = value._get_pk_val() - + def get_content_type(self, obj): # Convenience function using get_model avoids a circular import when using this model ContentType = get_model("contenttypes", "contenttype") return ContentType.objects.get_for_model(obj) - + def __get__(self, instance, instance_type=None): if instance is None: raise AttributeError, "%s must be accessed via instance" % self.name @@ -77,21 +77,21 @@ class GenericForeignKey(object): setattr(instance, self.ct_field, ct) setattr(instance, self.fk_field, fk) setattr(instance, self.cache_attr, value) - + class GenericRelation(RelatedField, Field): """Provides an accessor to generic related objects (i.e. comments)""" def __init__(self, to, **kwargs): kwargs['verbose_name'] = kwargs.get('verbose_name', None) - kwargs['rel'] = GenericRel(to, + kwargs['rel'] = GenericRel(to, related_name=kwargs.pop('related_name', None), limit_choices_to=kwargs.pop('limit_choices_to', None), symmetrical=kwargs.pop('symmetrical', True)) - + # Override content-type/object-id field names on the related class self.object_id_field_name = kwargs.pop("object_id_field", "object_id") - self.content_type_field_name = kwargs.pop("content_type_field", "content_type") - + self.content_type_field_name = kwargs.pop("content_type_field", "content_type") + kwargs['blank'] = True kwargs['editable'] = False kwargs['serialize'] = False @@ -116,7 +116,7 @@ class GenericRelation(RelatedField, Field): def m2m_column_name(self): return self.object_id_field_name - + def m2m_reverse_name(self): return self.object_id_field_name @@ -131,13 +131,13 @@ class GenericRelation(RelatedField, Field): def contribute_to_related_class(self, cls, related): pass - + def set_attributes_from_rel(self): pass def get_internal_type(self): return "ManyToManyField" - + class ReverseGenericRelatedObjectsDescriptor(object): """ This class provides the functionality that makes the related-object @@ -191,12 +191,12 @@ def create_generic_related_manager(superclass): Factory function for a manager that subclasses 'superclass' (which is a Manager) and adds behavior for generic related objects. """ - + class GenericRelatedObjectManager(superclass): def __init__(self, model=None, core_filters=None, instance=None, symmetrical=None, join_table=None, source_col_name=None, target_col_name=None, content_type=None, content_type_field_name=None, object_id_field_name=None): - + super(GenericRelatedObjectManager, self).__init__() self.core_filters = core_filters or {} self.model = model @@ -210,10 +210,10 @@ def create_generic_related_manager(superclass): self.content_type_field_name = content_type_field_name self.object_id_field_name = object_id_field_name self.pk_val = self.instance._get_pk_val() - + def get_query_set(self): query = { - '%s__pk' % self.content_type_field_name : self.content_type.id, + '%s__pk' % self.content_type_field_name : self.content_type.id, '%s__exact' % self.object_id_field_name : self.pk_val, } return superclass.get_query_set(self).filter(**query) @@ -250,7 +250,11 @@ class GenericRel(ManyToManyRel): self.to = to self.num_in_admin = 0 self.related_name = related_name + self.filter_interface = None self.limit_choices_to = limit_choices_to or {} self.edit_inline = False + self.raw_id_admin = False self.symmetrical = symmetrical self.multiple = True + assert not (self.raw_id_admin and self.filter_interface), \ + "Generic relations may not use both raw_id_admin and filter_interface" diff --git a/django/contrib/databrowse/__init__.py b/django/contrib/databrowse/__init__.py new file mode 100644 index 0000000000..e2f48ac822 --- /dev/null +++ b/django/contrib/databrowse/__init__.py @@ -0,0 +1 @@ +from django.contrib.databrowse.sites import DatabrowsePlugin, ModelDatabrowse, DatabrowseSite, site diff --git a/django/contrib/databrowse/datastructures.py b/django/contrib/databrowse/datastructures.py new file mode 100644 index 0000000000..24f2e68f46 --- /dev/null +++ b/django/contrib/databrowse/datastructures.py @@ -0,0 +1,192 @@ +""" +These classes are light wrappers around Django's database API that provide +convenience functionality and permalink functions for the databrowse app. +""" + +from django.db import models +from django.utils import dateformat +from django.utils.text import capfirst +from django.utils.translation import get_date_formats + +EMPTY_VALUE = '(None)' + +class EasyModel(object): + def __init__(self, site, model): + self.site = site + self.model = model + self.model_list = site.registry.keys() + self.verbose_name = model._meta.verbose_name + self.verbose_name_plural = model._meta.verbose_name_plural + + def __repr__(self): + return '<EasyModel for %s>' % self.model._meta.object_name + + def model_databrowse(self): + "Returns the ModelDatabrowse class for this model." + return self.site.registry[self.model] + + def url(self): + return '%s%s/%s/' % (self.site.root_url, self.model._meta.app_label, self.model._meta.module_name) + + def objects(self, **kwargs): + for obj in self.model._default_manager.filter(**kwargs): + yield EasyInstance(self, obj) + + def object_by_pk(self, pk): + return EasyInstance(self, self.model._default_manager.get(pk=pk)) + + def sample_objects(self): + for obj in self.model._default_manager.all()[:3]: + yield EasyInstance(self, obj) + + def field(self, name): + try: + f = self.model._meta.get_field(name) + except models.FieldDoesNotExist: + return None + return EasyField(self, f) + + def fields(self): + return [EasyField(self, f) for f in (self.model._meta.fields + self.model._meta.many_to_many)] + +class EasyField(object): + def __init__(self, easy_model, field): + self.model, self.field = easy_model, field + + def __repr__(self): + return '<EasyField for %s.%s>' % (self.model.model._meta.object_name, self.field.name) + + def choices(self): + for value, label in self.field.choices: + yield EasyChoice(self.model, self, value, label) + + def url(self): + if self.field.choices: + return '%s%s/%s/%s/' % (self.model.site.root_url, self.model.model._meta.app_label, self.model.model._meta.module_name, self.field.name) + elif self.field.rel: + return '%s%s/%s/' % (self.model.site.root_url, self.model.model._meta.app_label, self.model.model._meta.module_name) + +class EasyChoice(object): + def __init__(self, easy_model, field, value, label): + self.model, self.field = easy_model, field + self.value, self.label = value, label + + def __repr__(self): + return '<EasyChoice for %s.%s>' % (self.model.model._meta.object_name, self.field.name) + + def url(self): + return '%s%s/%s/%s/%s/' % (self.model.site.root_url, self.model.model._meta.app_label, self.model.model._meta.module_name, self.field.field.name, self.value) + +class EasyInstance(object): + def __init__(self, easy_model, instance): + self.model, self.instance = easy_model, instance + + def __repr__(self): + return '<EasyInstance for %s (%s)>' % (self.model.model._meta.object_name, self.instance._get_pk_val()) + + def __str__(self): + val = str(self.instance) + if len(val) > 30: + return val[:30] + '...' + return val + + def pk(self): + return self.instance._get_pk_val() + + def url(self): + return '%s%s/%s/objects/%s/' % (self.model.site.root_url, self.model.model._meta.app_label, self.model.model._meta.module_name, self.pk()) + + def fields(self): + """ + Generator that yields EasyInstanceFields for each field in this + EasyInstance's model. + """ + for f in self.model.model._meta.fields + self.model.model._meta.many_to_many: + yield EasyInstanceField(self.model, self, f) + + def related_objects(self): + """ + Generator that yields dictionaries of all models that have this + EasyInstance's model as a ForeignKey or ManyToManyField, along with + lists of related objects. + """ + for rel_object in self.model.model._meta.get_all_related_objects() + self.model.model._meta.get_all_related_many_to_many_objects(): + if rel_object.model not in self.model.model_list: + continue # Skip models that aren't in the model_list + em = EasyModel(self.model.site, rel_object.model) + yield { + 'model': em, + 'related_field': rel_object.field.verbose_name, + 'object_list': [EasyInstance(em, i) for i in getattr(self.instance, rel_object.get_accessor_name()).all()], + } + +class EasyInstanceField(object): + def __init__(self, easy_model, instance, field): + self.model, self.field, self.instance = easy_model, field, instance + self.raw_value = getattr(instance.instance, field.name) + + def __repr__(self): + return '<EasyInstanceField for %s.%s>' % (self.model.model._meta.object_name, self.field.name) + + def values(self): + """ + Returns a list of values for this field for this instance. It's a list + so we can accomodate many-to-many fields. + """ + # This import is deliberately inside the function because it causes + # some settings to be imported, and we don't want to do that at the + # module level. + if self.field.rel: + if isinstance(self.field.rel, models.ManyToOneRel): + objs = getattr(self.instance.instance, self.field.name) + elif isinstance(self.field.rel, models.ManyToManyRel): # ManyToManyRel + return list(getattr(self.instance.instance, self.field.name).all()) + elif self.field.choices: + objs = dict(self.field.choices).get(self.raw_value, EMPTY_VALUE) + elif isinstance(self.field, models.DateField) or isinstance(self.field, models.TimeField): + if self.raw_value: + date_format, datetime_format, time_format = get_date_formats() + if isinstance(self.field, models.DateTimeField): + objs = capfirst(dateformat.format(self.raw_value, datetime_format)) + elif isinstance(self.field, models.TimeField): + objs = capfirst(dateformat.time_format(self.raw_value, time_format)) + else: + objs = capfirst(dateformat.format(self.raw_value, date_format)) + else: + objs = EMPTY_VALUE + elif isinstance(self.field, models.BooleanField) or isinstance(self.field, models.NullBooleanField): + objs = {True: 'Yes', False: 'No', None: 'Unknown'}[self.raw_value] + else: + objs = self.raw_value + return [objs] + + def urls(self): + "Returns a list of (value, URL) tuples." + # First, check the urls() method for each plugin. + plugin_urls = [] + for plugin_name, plugin in self.model.model_databrowse().plugins.items(): + urls = plugin.urls(plugin_name, self) + if urls is not None: + #plugin_urls.append(urls) + values = self.values() + return zip(self.values(), urls) + if self.field.rel: + m = EasyModel(self.model.site, self.field.rel.to) + if self.field.rel.to in self.model.model_list: + lst = [] + for value in self.values(): + url = '%s%s/%s/objects/%s/' % (self.model.site.root_url, m.model._meta.app_label, m.model._meta.module_name, value._get_pk_val()) + lst.append((str(value), url)) + else: + lst = [(value, None) for value in self.values()] + elif self.field.choices: + lst = [] + for value in self.values(): + url = '%s%s/%s/fields/%s/%s/' % (self.model.site.root_url, self.model.model._meta.app_label, self.model.model._meta.module_name, self.field.name, self.raw_value) + lst.append((value, url)) + elif isinstance(self.field, models.URLField): + val = self.values()[0] + lst = [(val, val)] + else: + lst = [(self.values()[0], None)] + return lst diff --git a/django/contrib/databrowse/plugins/__init__.py b/django/contrib/databrowse/plugins/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/django/contrib/databrowse/plugins/__init__.py diff --git a/django/contrib/databrowse/plugins/calendars.py b/django/contrib/databrowse/plugins/calendars.py new file mode 100644 index 0000000000..7977524cdb --- /dev/null +++ b/django/contrib/databrowse/plugins/calendars.py @@ -0,0 +1,84 @@ +from django import http +from django.db import models +from django.contrib.databrowse.datastructures import EasyModel +from django.contrib.databrowse.sites import DatabrowsePlugin +from django.shortcuts import render_to_response +from django.utils.text import capfirst +from django.utils.translation import get_date_formats +from django.views.generic import date_based +import datetime +import time + +class CalendarPlugin(DatabrowsePlugin): + def __init__(self, field_names=None): + self.field_names = field_names + + def field_dict(self, model): + """ + Helper function that returns a dictionary of all DateFields or + DateTimeFields in the given model. If self.field_names is set, it takes + take that into account when building the dictionary. + """ + if self.field_names is None: + return dict([(f.name, f) for f in model._meta.fields if isinstance(f, models.DateField)]) + else: + return dict([(f.name, f) for f in model._meta.fields if isinstance(f, models.DateField) and f.name in self.field_names]) + + def model_index_html(self, request, model, site): + fields = self.field_dict(model) + if not fields: + return '' + return '<p class="filter"><strong>View calendar by:</strong> %s</p>' % \ + ', '.join(['<a href="calendars/%s/">%s</a>' % (f.name, capfirst(f.verbose_name)) for f in fields.values()]) + + def urls(self, plugin_name, easy_instance_field): + if isinstance(easy_instance_field.field, models.DateField): + return ['%s%s/%s/%s/%s/%s/' % (easy_instance_field.model.url(), + plugin_name, easy_instance_field.field.name, + easy_instance_field.raw_value.year, + easy_instance_field.raw_value.strftime('%b').lower(), + easy_instance_field.raw_value.day)] + + def model_view(self, request, model_databrowse, url): + self.model, self.site = model_databrowse.model, model_databrowse.site + self.fields = self.field_dict(self.model) + + # If the model has no DateFields, there's no point in going further. + if not self.fields: + raise http.Http404('The requested model has no calendars.') + + if url is None: + return self.homepage_view(request) + url_bits = url.split('/') + if self.fields.has_key(url_bits[0]): + return self.calendar_view(request, self.fields[url_bits[0]], *url_bits[1:]) + + raise http.Http404('The requested page does not exist.') + + def homepage_view(self, request): + easy_model = EasyModel(self.site, self.model) + field_list = self.fields.values() + field_list.sort(lambda x, y: cmp(x.verbose_name, y.verbose_name)) + return render_to_response('databrowse/calendar_homepage.html', {'root_url': self.site.root_url, 'model': easy_model, 'field_list': field_list}) + + def calendar_view(self, request, field, year=None, month=None, day=None): + easy_model = EasyModel(self.site, self.model) + extra_context = {'root_url': self.site.root_url, 'model': easy_model, 'field': field} + if day is not None: + # TODO: The objects in this template should be EasyInstances + return date_based.archive_day(request, year, month, day, self.model.objects.all(), field.name, + template_name='databrowse/calendar_day.html', allow_empty=False, allow_future=True, + extra_context=extra_context) + elif month is not None: + return date_based.archive_month(request, year, month, self.model.objects.all(), field.name, + template_name='databrowse/calendar_month.html', allow_empty=False, allow_future=True, + extra_context=extra_context) + elif year is not None: + return date_based.archive_year(request, year, self.model.objects.all(), field.name, + template_name='databrowse/calendar_year.html', allow_empty=False, allow_future=True, + extra_context=extra_context) + else: + return date_based.archive_index(request, self.model.objects.all(), field.name, + template_name='databrowse/calendar_main.html', allow_empty=True, allow_future=True, + extra_context=extra_context) + assert False, ('%s, %s, %s, %s' % (field, year, month, day)) diff --git a/django/contrib/databrowse/plugins/fieldchoices.py b/django/contrib/databrowse/plugins/fieldchoices.py new file mode 100644 index 0000000000..49d17ff148 --- /dev/null +++ b/django/contrib/databrowse/plugins/fieldchoices.py @@ -0,0 +1,72 @@ +from django import http +from django.db import models +from django.contrib.databrowse.datastructures import EasyModel +from django.contrib.databrowse.sites import DatabrowsePlugin +from django.shortcuts import render_to_response +from django.utils.text import capfirst +from django.views.generic import date_based +import datetime +import time + +class FieldChoicePlugin(DatabrowsePlugin): + def __init__(self, field_filter=None): + # If field_filter is given, it should be a callable that takes a + # Django database Field instance and returns True if that field should + # be included. If field_filter is None, that all fields will be used. + self.field_filter = field_filter + + def field_dict(self, model): + """ + Helper function that returns a dictionary of all fields in the given + model. If self.field_filter is set, it only includes the fields that + match the filter. + """ + if self.field_filter: + return dict([(f.name, f) for f in model._meta.fields if self.field_filter(f)]) + else: + return dict([(f.name, f) for f in model._meta.fields if not f.rel and not f.primary_key and not f.unique and not isinstance(f, (models.AutoField, models.TextField))]) + + def model_index_html(self, request, model, site): + fields = self.field_dict(model) + if not fields: + return '' + return '<p class="filter"><strong>View by:</strong> %s</p>' % \ + ', '.join(['<a href="fields/%s/">%s</a>' % (f.name, capfirst(f.verbose_name)) for f in fields.values()]) + + def urls(self, plugin_name, easy_instance_field): + if easy_instance_field.field in self.field_dict(easy_instance_field.model.model).values(): + return ['%s%s/%s/%s/' % (easy_instance_field.model.url(), + plugin_name, easy_instance_field.field.name, + easy_instance_field.raw_value)] + + def model_view(self, request, model_databrowse, url): + self.model, self.site = model_databrowse.model, model_databrowse.site + self.fields = self.field_dict(self.model) + + # If the model has no fields with choices, there's no point in going + # further. + if not self.fields: + raise http.Http404('The requested model has no fields.') + + if url is None: + return self.homepage_view(request) + url_bits = url.split('/', 1) + if self.fields.has_key(url_bits[0]): + return self.field_view(request, self.fields[url_bits[0]], *url_bits[1:]) + + raise http.Http404('The requested page does not exist.') + + def homepage_view(self, request): + easy_model = EasyModel(self.site, self.model) + field_list = self.fields.values() + field_list.sort(lambda x, y: cmp(x.verbose_name, y.verbose_name)) + return render_to_response('databrowse/fieldchoice_homepage.html', {'root_url': self.site.root_url, 'model': easy_model, 'field_list': field_list}) + + def field_view(self, request, field, value=None): + easy_model = EasyModel(self.site, self.model) + easy_field = easy_model.field(field.name) + if value is not None: + obj_list = easy_model.objects(**{field.name: value}) + return render_to_response('databrowse/fieldchoice_detail.html', {'root_url': self.site.root_url, 'model': easy_model, 'field': easy_field, 'value': value, 'object_list': obj_list}) + obj_list = [v[field.name] for v in self.model._default_manager.distinct().order_by(field.name).values(field.name)] + return render_to_response('databrowse/fieldchoice_list.html', {'root_url': self.site.root_url, 'model': easy_model, 'field': easy_field, 'object_list': obj_list}) diff --git a/django/contrib/databrowse/plugins/objects.py b/django/contrib/databrowse/plugins/objects.py new file mode 100644 index 0000000000..7326566655 --- /dev/null +++ b/django/contrib/databrowse/plugins/objects.py @@ -0,0 +1,14 @@ +from django import http +from django.contrib.databrowse.datastructures import EasyModel +from django.contrib.databrowse.sites import DatabrowsePlugin +from django.shortcuts import render_to_response +import urlparse + +class ObjectDetailPlugin(DatabrowsePlugin): + def model_view(self, request, model_databrowse, url): + # If the object ID wasn't provided, redirect to the model page, which is one level up. + if url is None: + return http.HttpResponseRedirect(urlparse.urljoin(request.path, '../')) + easy_model = EasyModel(model_databrowse.site, model_databrowse.model) + obj = easy_model.object_by_pk(url) + return render_to_response('databrowse/object_detail.html', {'object': obj, 'root_url': model_databrowse.site.root_url}) diff --git a/django/contrib/databrowse/sites.py b/django/contrib/databrowse/sites.py new file mode 100644 index 0000000000..8521343e50 --- /dev/null +++ b/django/contrib/databrowse/sites.py @@ -0,0 +1,148 @@ +from django import http +from django.db import models +from django.contrib.databrowse.datastructures import EasyModel, EasyChoice +from django.shortcuts import render_to_response + +class AlreadyRegistered(Exception): + pass + +class NotRegistered(Exception): + pass + +class DatabrowsePlugin(object): + def urls(self, plugin_name, easy_instance_field): + """ + Given an EasyInstanceField object, returns a list of URLs for this + plugin's views of this object. These URLs should be absolute. + + Returns None if the EasyInstanceField object doesn't get a + list of plugin-specific URLs. + """ + return None + + def model_index_html(self, request, model, site): + """ + Returns a snippet of HTML to include on the model index page. + """ + return '' + + def model_view(self, request, model_databrowse, url): + """ + Handles main URL routing for a plugin's model-specific pages. + """ + raise NotImplementedError + +class ModelDatabrowse(object): + plugins = {} + + def __init__(self, model, site): + self.model = model + self.site = site + + def root(self, request, url): + """ + Handles main URL routing for the databrowse app. + + `url` is the remainder of the URL -- e.g. 'objects/3'. + """ + # Delegate to the appropriate method, based on the URL. + if url is None: + return self.main_view(request) + try: + plugin_name, rest_of_url = url.split('/', 1) + except ValueError: # need more than 1 value to unpack + plugin_name, rest_of_url = url, None + try: + plugin = self.plugins[plugin_name] + except KeyError: + raise http.Http404('A plugin with the requested name does not exist.') + return plugin.model_view(request, self, rest_of_url) + + def main_view(self, request): + easy_model = EasyModel(self.site, self.model) + html_snippets = '\n'.join([p.model_index_html(request, self.model, self.site) for p in self.plugins.values()]) + return render_to_response('databrowse/model_detail.html', { + 'model': easy_model, + 'root_url': self.site.root_url, + 'plugin_html': html_snippets, + }) + +class DatabrowseSite(object): + def __init__(self): + self.registry = {} # model_class -> databrowse_class + self.root_url = None + + def register(self, model_or_iterable, databrowse_class=None, **options): + """ + Registers the given model(s) with the given databrowse site. + + The model(s) should be Model classes, not instances. + + If a databrowse class isn't given, it will use DefaultModelDatabrowse + (the default databrowse options). + + If a model is already registered, this will raise AlreadyRegistered. + """ + databrowse_class = databrowse_class or DefaultModelDatabrowse + if issubclass(model_or_iterable, models.Model): + model_or_iterable = [model_or_iterable] + for model in model_or_iterable: + if model in self.registry: + raise AlreadyRegistered('The model %s is already registered' % model.__class__.__name__) + self.registry[model] = databrowse_class + + def unregister(self, model_or_iterable): + """ + Unregisters the given model(s). + + If a model isn't already registered, this will raise NotRegistered. + """ + if issubclass(model_or_iterable, models.Model): + model_or_iterable = [model_or_iterable] + for model in model_or_iterable: + if model not in self.registry: + raise NotRegistered('The model %s is not registered' % model.__class__.__name__) + del self.registry[model] + + def root(self, request, url): + """ + Handles main URL routing for the databrowse app. + + `url` is the remainder of the URL -- e.g. 'comments/comment/'. + """ + self.root_url = request.path[:len(request.path) - len(url)] + url = url.rstrip('/') # Trim trailing slash, if it exists. + + if url == '': + return self.index(request) + elif '/' in url: + return self.model_page(request, *url.split('/', 2)) + + raise http.Http404('The requested databrowse page does not exist.') + + def index(self, request): + m_list = [EasyModel(self, m) for m in self.registry.keys()] + return render_to_response('databrowse/homepage.html', {'model_list': m_list, 'root_url': self.root_url}) + + def model_page(self, request, app_label, model_name, rest_of_url=None): + """ + Handles the model-specific functionality of the databrowse site, delegating + to the appropriate ModelDatabrowse class. + """ + model = models.get_model(app_label, model_name) + if model is None: + raise http.Http404("App %r, model %r, not found." % (app_label, model_name)) + try: + databrowse_class = self.registry[model] + except KeyError: + raise http.Http404("This model exists but has not been registered with databrowse.") + return databrowse_class(model, self).root(request, rest_of_url) + +site = DatabrowseSite() + +from django.contrib.databrowse.plugins.calendars import CalendarPlugin +from django.contrib.databrowse.plugins.objects import ObjectDetailPlugin +from django.contrib.databrowse.plugins.fieldchoices import FieldChoicePlugin + +class DefaultModelDatabrowse(ModelDatabrowse): + plugins = {'objects': ObjectDetailPlugin(), 'calendars': CalendarPlugin(), 'fields': FieldChoicePlugin()} diff --git a/django/contrib/databrowse/templates/databrowse/base.html b/django/contrib/databrowse/templates/databrowse/base.html new file mode 100644 index 0000000000..30ba5bb2fc --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/base.html @@ -0,0 +1,58 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" lang="{{ LANGUAGE_CODE }}" xml:lang="{{ LANGUAGE_CODE }}" {% if LANGUAGE_BIDI %}dir="rtl"{% endif %}> +<head> +<title>{% block title %}{% endblock %}</title> +<style type="text/css"> +* { margin:0; padding:0; } +body { background:#eee; color:#333; font:76%/1.6 "Lucida Grande","Bitstream Vera Sans",Verdana,sans-serif; } +a { color: #5b80b2; text-decoration:none; } +a:hover { text-decoration:underline; } +a img { border:none; } +h1 { font-size:1.8em; color:#666; margin:0.4em 0 0.2em 0; } +h2 { font-size:1.5em; color:#666; margin:1em 0 0.2em 0; } +p { margin:0.5em 0 1em 0; } +.odd { background-color:#EDF3FE; } +.quiet { color:#666; } +/* FILTERS */ +.filter { color:#999; font-size:0.9em; float:left; margin-bottom:10px; margin-right:20px; } +.filter strong { color:#666; } +/* OBJECT LISTS */ +.objectlist { clear:both; margin:0 -20px; color:#666; } +.objectlist li a { display:block; padding:1em 20px; } +.objectlist li a:hover { background:#5b80b2; color:#3B5572; color:#fff; text-decoration:none; } +.related h2 { font-size: 1em; margin-bottom: 0.6em; } +.related .objectlist li a { padding: 0.6em 20px; } +.related .objectlist li.odd { background:#eee; } +/* OBJECT DETAIL */ +.objectinfo { border-collapse:collapse; color:#666; margin:0 -20px; } +.objectinfo td, .objectinfo th { padding:1em 20px; vertical-align:top; } +.objectinfo td { width:100%; } +.objectinfo th { text-align:left; white-space:nowrap; } +/* MODEL GROUPS */ +.modelgroup { color:#999; font-size:0.9em; margin:0 -20px; } +.modelgroup h2 { font-size:1.2em; margin:0; } +.modelgroup h2 a { display: block; padding: 0.83em 20px; } +.modelgroup h2 a:hover { text-decoration: none; color: #fff; } +.modelgroup p { float:left; margin:-2.65em 0 0 14em; position:relative; } +.modelgroup p a { white-space:nowrap; } +.modelgroup a.more { color:#999; } +.modelgroup:hover { background:#5b80b2; color:#becfe5; } +.modelgroup:hover p a { color:#becfe5; } +.modelgroup:hover a { color:#fff; } +.modelgroup:hover a.more { color:#fff; } +/* BREADCRUMBS */ +#breadcrumbs { padding:10px 0; color:#999; font-size:0.9em; } +/* HEADER */ +#header a { display:block; background:#eee; color:#676868; padding:10px 20px; font-weight:bold; font-size:1em; text-decoration:none; border-bottom:1px solid #ddd; } +#header a:hover { text-decoration:underline; } +/* CONTENT */ +#content { background:#fff; border-bottom:1px solid #ddd; padding:0 20px; } +</style> +</head> +<body id="{% block bodyid %}page{% endblock %}"> +<div id="header"><a href="{{ root_url }}">Databrowse</a></div> +<div id="content"> +{% block content %}{% endblock %} +</div> +</body> +</html> diff --git a/django/contrib/databrowse/templates/databrowse/calendar_day.html b/django/contrib/databrowse/templates/databrowse/calendar_day.html new file mode 100644 index 0000000000..d45fb3e768 --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/calendar_day.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst }} with {{ field.verbose_name }} {{ day|date:"F j, Y" }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="../../../../">Calendars</a> / <a href="../../../">By {{ field.verbose_name }}</a> / <a href="../../">{{ day.year }}</a> / <a href="../">{{ day|date:"F" }}</a> / {{ day.day }}</div> + +<h1>{{ model.verbose_name_plural|capfirst }} with {{ field.verbose_name }} on {{ day|date:"F j, Y" }}</h1> + +<ul class="objectlist"> +{% for object in object_list %} +<li class="{% cycle odd,even %}"><a href="{{ object.url }}">{{ object }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/calendar_homepage.html b/django/contrib/databrowse/templates/databrowse/calendar_homepage.html new file mode 100644 index 0000000000..5bbc42e353 --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/calendar_homepage.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}Calendars{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / Calendars</div> + +<h1>Calendars</h1> + +<ul class="objectlist"> +{% for field in field_list %} +<li class="{% cycle odd,even %}"><a href="{{ field.name }}/">{{ model.verbose_name_plural|capfirst }} by {{ field.verbose_name }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/calendar_main.html b/django/contrib/databrowse/templates/databrowse/calendar_main.html new file mode 100644 index 0000000000..7f9ba03bbe --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/calendar_main.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ field.verbose_name|capfirst }} calendar{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="../">Calendars</a> / By {{ field.verbose_name }}</div> + +<h1>{{ model.verbose_name_plural|capfirst }} by {{ field.verbose_name }}</h1> + +<ul class="objectlist"> +{% for year in date_list %} +<li class="{% cycle odd,even %}"><a href="{{ year.year }}/">{{ year.year }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/calendar_month.html b/django/contrib/databrowse/templates/databrowse/calendar_month.html new file mode 100644 index 0000000000..51a25967f8 --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/calendar_month.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst }} with {{ field.verbose_name }} in {{ month|date:"F Y" }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="../../../">Calendars</a> / <a href="../../">By {{ field.verbose_name }}</a> / <a href="../">{{ month.year }}</a> / {{ month|date:"F" }}</div> + +<h1>{{ model.verbose_name_plural|capfirst }} with {{ field.verbose_name }} in {{ month|date:"F Y" }}</h1> + +<ul class="objectlist"> +{% for object in object_list %} +<li class="{% cycle odd,even %}"><a href="{{ object.url }}">{{ object }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/calendar_year.html b/django/contrib/databrowse/templates/databrowse/calendar_year.html new file mode 100644 index 0000000000..676ae88e27 --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/calendar_year.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst }} with {{ field.verbose_name }} in {{ year }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="../../">Calendars</a> / <a href="../">By {{ field.verbose_name }}</a> / {{ year }}</div> + +<h1>{{ model.verbose_name_plural|capfirst }} with {{ field.verbose_name }} in {{ year }}</h1> + +<ul class="objectlist"> +{% for month in date_list %} +<li class="{% cycle odd,even %}"><a href="{{ month|date:"M"|lower }}/">{{ month|date:"F" }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/choice_detail.html b/django/contrib/databrowse/templates/databrowse/choice_detail.html new file mode 100644 index 0000000000..977a4a482f --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/choice_detail.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst }} by {{ field.field.verbose_name }}: {{ value|escape }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="{{ field.url }}">By {{ field.field.verbose_name }}</a> / {{ value|escape }}</div> + +<h1>{{ model.verbose_name_plural|capfirst }} by {{ field.field.verbose_name }}: {{ value|escape }}</h1> + +<ul class="objectlist"> +{% for object in object_list %} +<li class="{% cycle odd,even %}"><a href="{{ object.url }}">{{ object }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/choice_list.html b/django/contrib/databrowse/templates/databrowse/choice_list.html new file mode 100644 index 0000000000..b15531a0fd --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/choice_list.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst }} by {{ field.field.verbose_name }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / By {{ field.field.verbose_name }}</div> + +<h1>{{ model.verbose_name_plural|capfirst }} by {{ field.field.verbose_name }}</h1> + +<ul class="objectlist"> +{% for choice in field.choices %} +<li class="{% cycle odd,even %}"><a href="{{ choice.url }}">{{ choice.label }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/fieldchoice_detail.html b/django/contrib/databrowse/templates/databrowse/fieldchoice_detail.html new file mode 100644 index 0000000000..a620ec931c --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/fieldchoice_detail.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst|escape }} with {{ field.field.verbose_name|escape }} {{ value|escape }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="../../">Fields</a> / <a href="../">By {{ field.field.verbose_name|escape }}</a> / {{ value|escape }}</div> + +<h1>{{ model.verbose_name_plural|capfirst|escape }} with {{ field.field.verbose_name|escape }} {{ value|escape }}</h1> + +<ul class="objectlist"> +{% for object in object_list %} +<li class="{% cycle odd,even %}"><a href="{{ object.url }}">{{ object|escape }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/fieldchoice_homepage.html b/django/contrib/databrowse/templates/databrowse/fieldchoice_homepage.html new file mode 100644 index 0000000000..ad842c1e6d --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/fieldchoice_homepage.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}Browsable fields in {{ model.verbose_name_plural|escape }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / Fields</div> + +<h1>Browsable fields in {{ model.verbose_name_plural }}</h1> + +<ul class="objectlist"> +{% for field in field_list %} +<li class="{% cycle odd,even %}"><a href="{{ field.name }}/">{{ model.verbose_name_plural|capfirst }} by {{ field.verbose_name }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/fieldchoice_list.html b/django/contrib/databrowse/templates/databrowse/fieldchoice_list.html new file mode 100644 index 0000000000..686e6bc533 --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/fieldchoice_list.html @@ -0,0 +1,17 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst|escape }} by {{ field.field.verbose_name|escape }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a> / <a href="../">Fields</a> / By {{ field.field.verbose_name|escape }}</div> + +<h1>{{ model.verbose_name_plural|capfirst|escape }} by {{ field.field.verbose_name|escape }}</h1> + +<ul class="objectlist"> +{% for object in object_list %} +<li class="{% cycle odd,even %}"><a href="{{ object }}/">{{ object|escape }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/homepage.html b/django/contrib/databrowse/templates/databrowse/homepage.html new file mode 100644 index 0000000000..ebf3ceca80 --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/homepage.html @@ -0,0 +1,21 @@ +{% extends "databrowse/base.html" %} + +{% block title %}Databrowse{% endblock %} + +{% block bodyid %}homepage{% endblock %} + +{% block content %} + +{% for model in model_list %} + <div class="modelgroup {% cycle even,odd %}"> + <h2><a href="{{ model.url }}">{{ model.verbose_name_plural|capfirst }}</a></h2> + <p> + {% for object in model.sample_objects %} + <a href="{{ object.url }}">{{ object }}</a>, + {% endfor %} + <a class="more" href="{{ model.url }}">More →</a> + </p> + </div> +{% endfor %} + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/model_detail.html b/django/contrib/databrowse/templates/databrowse/model_detail.html new file mode 100644 index 0000000000..24cd766a3d --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/model_detail.html @@ -0,0 +1,19 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ model.verbose_name_plural|capfirst }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / {{ model.verbose_name_plural|capfirst }}</div> + +<h1>{{ model.verbose_name_plural|capfirst }}</h1> + +{{ plugin_html }} + +<ul class="objectlist"> +{% for object in model.objects %} + <li class="{% cycle odd,even %}"><a href="{{ object.url }}">{{ object }}</a></li> +{% endfor %} +</ul> + +{% endblock %} diff --git a/django/contrib/databrowse/templates/databrowse/object_detail.html b/django/contrib/databrowse/templates/databrowse/object_detail.html new file mode 100644 index 0000000000..0096178cd2 --- /dev/null +++ b/django/contrib/databrowse/templates/databrowse/object_detail.html @@ -0,0 +1,41 @@ +{% extends "databrowse/base.html" %} + +{% block title %}{{ object.model.verbose_name|capfirst }}: {{ object }}{% endblock %} + +{% block content %} + +<div id="breadcrumbs"><a href="{{ root_url }}">Home</a> / <a href="{{ object.model.url }}">{{ object.model.verbose_name_plural|capfirst }}</a> / {{ object }}</div> + +<h1>{{ object.model.verbose_name|capfirst }}: {{ object }}</h1> + +<table class="objectinfo"> +{% for field in object.fields %} +<tr class="{% cycle odd,even %}"> +<th>{{ field.field.verbose_name|capfirst }}</th> +<td> +{% if field.urls %} +{% for urlvalue in field.urls %} +{% if urlvalue.1 %}<a href="{{ urlvalue.1 }}">{% endif %}{{ urlvalue.0 }}{% if urlvalue.1 %}</a>{% endif %}{% if not forloop.last %}, {% endif %} +{% endfor %} +{% else %}None{% endif %} +</td> +</tr> +{% endfor %} +</table> + +{% for related_object in object.related_objects %} + <div class="related"> + <h2>Appears in "{{ related_object.related_field }}" in the following {{ related_object.model.verbose_name_plural }}:</h2> + {% if related_object.object_list %} + <ul class="objectlist"> + {% for object in related_object.object_list %} + <li class="{% cycle odd,even %}"><a href="{{ object.url }}">{{ object }}</a></li> + {% endfor %} + </ul> + </div> + {% else %} + <p class="quiet">(None)</p> + {% endif %} +{% endfor %} + +{% endblock %} diff --git a/django/contrib/databrowse/urls.py b/django/contrib/databrowse/urls.py new file mode 100644 index 0000000000..9b85d142a2 --- /dev/null +++ b/django/contrib/databrowse/urls.py @@ -0,0 +1,20 @@ +from django.conf.urls.defaults import * +from django.contrib.databrowse import views + +# Note: The views in this URLconf all require a 'models' argument, +# which is a list of model classes (*not* instances). + +urlpatterns = patterns('', + #(r'^$', views.homepage), + #(r'^([^/]+)/([^/]+)/$', views.model_detail), + + (r'^([^/]+)/([^/]+)/fields/(\w+)/$', views.choice_list), + (r'^([^/]+)/([^/]+)/fields/(\w+)/(.*)/$', views.choice_detail), + + #(r'^([^/]+)/([^/]+)/calendars/(\w+)/$', views.calendar_main), + #(r'^([^/]+)/([^/]+)/calendars/(\w+)/(\d{4})/$', views.calendar_year), + #(r'^([^/]+)/([^/]+)/calendars/(\w+)/(\d{4})/(\w{3})/$', views.calendar_month), + #(r'^([^/]+)/([^/]+)/calendars/(\w+)/(\d{4})/(\w{3})/(\d{1,2})/$', views.calendar_day), + + #(r'^([^/]+)/([^/]+)/objects/(.*)/$', views.object_detail), +) diff --git a/django/contrib/databrowse/views.py b/django/contrib/databrowse/views.py new file mode 100644 index 0000000000..d493f9dad3 --- /dev/null +++ b/django/contrib/databrowse/views.py @@ -0,0 +1,23 @@ +from django.db.models import FieldDoesNotExist, DateTimeField +from django.http import Http404 +from django.shortcuts import render_to_response +from django.contrib.databrowse.datastructures import EasyModel, EasyChoice +import datetime +import time + +########### +# CHOICES # +########### + +def choice_list(request, app_label, module_name, field_name, models): + m, f = lookup_field(app_label, module_name, field_name, models) + return render_to_response('databrowse/choice_list.html', {'model': m, 'field': f}) + +def choice_detail(request, app_label, module_name, field_name, field_val, models): + m, f = lookup_field(app_label, module_name, field_name, models) + try: + label = dict(f.field.choices)[field_val] + except KeyError: + raise Http404('Invalid choice value given') + obj_list = m.objects(**{f.field.name: field_val}) + return render_to_response('databrowse/choice_detail.html', {'model': m, 'field': f, 'value': label, 'object_list': obj_list}) diff --git a/django/contrib/localflavor/br/br_states.py b/django/contrib/localflavor/br/br_states.py index c6ce0a1bb7..98e54bca2c 100644 --- a/django/contrib/localflavor/br/br_states.py +++ b/django/contrib/localflavor/br/br_states.py @@ -1,11 +1,9 @@ # -*- coding: utf-8 -*- """ -A brazilian mapping of state misspellings/abbreviations to normalized -abbreviations, and an alphabetical list of states for use as `choices -in a formfield. +An alphabetical list of Brazilian states for use as `choices` in a formfield. -This exists in this standalone file so that it's only imported into -memory when explicitly needed. +This exists in this standalone file so that it's only imported into memory +when explicitly needed. """ STATE_CHOICES = ( diff --git a/django/contrib/localflavor/br/forms.py b/django/contrib/localflavor/br/forms.py index 29ad4df53d..3487787643 100644 --- a/django/contrib/localflavor/br/forms.py +++ b/django/contrib/localflavor/br/forms.py @@ -4,7 +4,7 @@ BR-specific Form helpers """ from django.newforms import ValidationError -from django.newforms.fields import Field, RegexField, Select, EMPTY_VALUES +from django.newforms.fields import Field, RegexField, CharField, Select, EMPTY_VALUES from django.utils.encoding import smart_unicode from django.utils.translation import gettext import re @@ -15,7 +15,7 @@ class BRZipCodeField(RegexField): def __init__(self, *args, **kwargs): super(BRZipCodeField, self).__init__(r'^\d{5}-\d{3}$', max_length=None, min_length=None, - error_message=gettext(u'Enter a zip code in the format XXXXX-XXX.'), + error_message=gettext('Enter a zip code in the format XXXXX-XXX.'), *args, **kwargs) class BRPhoneNumberField(Field): @@ -31,9 +31,89 @@ class BRPhoneNumberField(Field): class BRStateSelect(Select): """ - A Select widget that uses a list of brazilian states/territories + A Select widget that uses a list of Brazilian states/territories as its choices. """ def __init__(self, attrs=None): from br_states import STATE_CHOICES # relative import super(BRStateSelect, self).__init__(attrs, choices=STATE_CHOICES) + + +def DV_maker(v): + if v >= 2: + return 11 - v + return 0 + +class BRCPFField(CharField): + """ + This field validate a CPF number or a CPF string. A CPF number is + compounded by XXX.XXX.XXX-VD. The two last digits are check digits. + + More information: + http://en.wikipedia.org/wiki/Cadastro_de_Pessoas_F%C3%ADsicas + """ + def __init__(self, *args, **kwargs): + super(BRCPFField, self).__init__(max_length=14, min_length=11, *args, **kwargs) + + def clean(self, value): + """ + Value can be either a string in the format XXX.XXX.XXX-XX or an + 11-digit number. + """ + value = super(BRCPFField, self).clean(value) + if value in EMPTY_VALUES: + return u'' + orig_value = value[:] + if not value.isdigit(): + value = re.sub("[-\.]", "", value) + try: + int(value) + except ValueError: + raise ValidationError(gettext("This field requires only numbers.")) + if len(value) != 11: + raise ValidationError(gettext("This field requires at most 11 digits or 14 characters.")) + orig_dv = value[-2:] + + new_1dv = sum([i * int(value[idx]) for idx, i in enumerate(range(10, 1, -1))]) + new_1dv = DV_maker(new_1dv % 11) + value = value[:-2] + str(new_1dv) + value[-1] + new_2dv = sum([i * int(value[idx]) for idx, i in enumerate(range(11, 1, -1))]) + new_2dv = DV_maker(new_2dv % 11) + value = value[:-1] + str(new_2dv) + if value[-2:] != orig_dv: + raise ValidationError(gettext("Invalid CPF number.")) + + return orig_value + +class BRCNPJField(Field): + def clean(self, value): + """ + Value can be either a string in the format XX.XXX.XXX/XXXX-XX or a + group of 14 characters. + """ + value = super(BRCNPJField, self).clean(value) + if value in EMPTY_VALUES: + return u'' + orig_value = value[:] + if not value.isdigit(): + value = re.sub("[-/\.]", "", value) + try: + int(value) + except ValueError: + raise ValidationError("This field requires only numbers.") + if len(value) != 14: + raise ValidationError( + gettext("This field requires at least 14 digits")) + orig_dv = value[-2:] + + new_1dv = sum([i * int(value[idx]) for idx, i in enumerate(range(5, 1, -1) + range(9, 1, -1))]) + new_1dv = DV_maker(new_1dv % 11) + value = value[:-2] + str(new_1dv) + value[-1] + new_2dv = sum([i * int(value[idx]) for idx, i in enumerate(range(6, 1, -1) + range(9, 1, -1))]) + new_2dv = DV_maker(new_2dv % 11) + value = value[:-1] + str(new_2dv) + if value[-2:] != orig_dv: + raise ValidationError(gettext("Invalid CNPJ number.")) + + return orig_value + diff --git a/django/contrib/localflavor/ch/__init__.py b/django/contrib/localflavor/ch/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/django/contrib/localflavor/ch/__init__.py diff --git a/django/contrib/localflavor/ch/ch_states.py b/django/contrib/localflavor/ch/ch_states.py new file mode 100644 index 0000000000..e9bbcc6268 --- /dev/null +++ b/django/contrib/localflavor/ch/ch_states.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -* +from django.utils.translation import gettext_lazy as _ + +STATE_CHOICES = ( + ('AG', _('Aargau')), + ('AI', _('Appenzell Innerrhoden')), + ('AR', _('Appenzell Ausserrhoden')), + ('BS', _('Basel-Stadt')), + ('BL', _('Basel-Land')), + ('BE', _('Berne')), + ('FR', _('Fribourg')), + ('GE', _('Geneva')), + ('GL', _('Glarus')), + ('GR', _('Graubuenden')), + ('JU', _('Jura')), + ('LU', _('Lucerne')), + ('NE', _('Neuchatel')), + ('NW', _('Nidwalden')), + ('OW', _('Obwalden')), + ('SH', _('Schaffhausen')), + ('SZ', _('Schwyz')), + ('SO', _('Solothurn')), + ('SG', _('St. Gallen')), + ('TG', _('Thurgau')), + ('TI', _('Ticino')), + ('UR', _('Uri')), + ('VS', _('Valais')), + ('VD', _('Vaud')), + ('ZG', _('Zug')), + ('ZH', _('Zurich')) +) diff --git a/django/contrib/localflavor/ch/forms.py b/django/contrib/localflavor/ch/forms.py new file mode 100644 index 0000000000..51e52dc0e9 --- /dev/null +++ b/django/contrib/localflavor/ch/forms.py @@ -0,0 +1,109 @@ +""" +Swiss-specific Form helpers +""" + +from django.newforms import ValidationError +from django.newforms.fields import Field, RegexField, Select, EMPTY_VALUES +from django.utils.encoding import smart_unicode +from django.utils.translation import gettext +import re + +id_re = re.compile(r"^(?P<idnumber>\w{8})(?P<pos9>(\d{1}|<))(?P<checksum>\d{1})$") +phone_digits_re = re.compile(r'^0([1-9]{1})\d{8}$') + +class CHZipCodeField(RegexField): + def __init__(self, *args, **kwargs): + super(CHZipCodeField, self).__init__(r'^\d{4}$', + max_length=None, min_length=None, + error_message=gettext('Enter a zip code in the format XXXX.'), + *args, **kwargs) + +class CHPhoneNumberField(Field): + """ + Validate local Swiss phone number (not international ones) + The correct format is '0XX XXX XX XX'. + '0XX.XXX.XX.XX' and '0XXXXXXXXX' validate but are corrected to + '0XX XXX XX XX'. + """ + def clean(self, value): + super(CHPhoneNumberField, self).clean(value) + if value in EMPTY_VALUES: + return u'' + value = re.sub('(\.|\s|/|-)', '', smart_unicode(value)) + m = phone_digits_re.search(value) + if m: + return u'%s %s %s %s' % (value[0:3], value[3:6], value[6:8], value[8:10]) + raise ValidationError('Phone numbers must be in 0XX XXX XX XX format.') + +class CHStateSelect(Select): + """ + A Select widget that uses a list of CH states as its choices. + """ + def __init__(self, attrs=None): + from ch_states import STATE_CHOICES # relative import + super(CHStateSelect, self).__init__(attrs, choices=STATE_CHOICES) + +class CHIdentityCardNumberField(Field): + """ + A Swiss identity card number. + + Checks the following rules to determine whether the number is valid: + + * Conforms to the X1234567<0 or 1234567890 format. + * Included checksums match calculated checksums + + Algorithm is documented at http://adi.kousz.ch/artikel/IDCHE.htm + """ + def has_valid_checksum(self, number): + given_number, given_checksum = number[:-1], number[-1] + new_number = given_number + calculated_checksum = 0 + fragment = "" + parameter = 7 + + first = str(number[:1]) + if first.isalpha(): + num = ord(first.upper()) - 65 + if num < 0 or num > 8: + return False + new_number = str(num) + new_number[1:] + new_number = new_number[:8] + '0' + + if not new_number.isdigit(): + return False + + for i in range(len(new_number)): + fragment = int(new_number[i])*parameter + calculated_checksum += fragment + + if parameter == 1: + parameter = 7 + elif parameter == 3: + parameter = 1 + elif parameter ==7: + parameter = 3 + + return str(calculated_checksum)[-1] == given_checksum + + def clean(self, value): + super(CHIdentityCardNumberField, self).clean(value) + error_msg = gettext('Enter a valid Swiss identity or passport card number in X1234567<0 or 1234567890 format.') + if value in EMPTY_VALUES: + return u'' + + match = re.match(id_re, value) + if not match: + raise ValidationError(error_msg) + + idnumber, pos9, checksum = match.groupdict()['idnumber'], match.groupdict()['pos9'], match.groupdict()['checksum'] + + if idnumber == '00000000' or \ + idnumber == 'A0000000': + raise ValidationError(error_msg) + + all_digits = "%s%s%s" % (idnumber, pos9, checksum) + if not self.has_valid_checksum(all_digits): + raise ValidationError(error_msg) + + return u'%s%s%s' % (idnumber, pos9, checksum) + diff --git a/django/contrib/localflavor/cl/__init__.py b/django/contrib/localflavor/cl/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/django/contrib/localflavor/cl/__init__.py diff --git a/django/contrib/localflavor/cl/forms.py b/django/contrib/localflavor/cl/forms.py new file mode 100644 index 0000000000..87c8093407 --- /dev/null +++ b/django/contrib/localflavor/cl/forms.py @@ -0,0 +1,78 @@ +""" +Chile specific form helpers. +""" + +from django.newforms import ValidationError +from django.newforms.fields import RegexField, EMPTY_VALUES +from django.utils.translation import gettext + +class CLRutField(RegexField): + """ + Chilean "Rol Unico Tributario" (RUT) field. This is the Chilean national + identification number. + + Samples for testing are available from + https://palena.sii.cl/cvc/dte/ee_empresas_emisoras.html + """ + def __init__(self, *args, **kwargs): + if 'strict' in kwargs: + del kwargs['strict'] + super(CLRutField, self).__init__(r'^(\d{1,2}\.)?\d{3}\.\d{3}-[\dkK]$', + error_message=gettext('Enter valid a Chilean RUT. The format is XX.XXX.XXX-X.'), + *args, **kwargs) + else: + # In non-strict mode, accept RUTs that validate but do not exist in + # the real world. + super(CLRutField, self).__init__(r'^[\d\.]{1,11}-?[\dkK]$', error_message=gettext(u'Enter valid a Chilean RUT'), *args, **kwargs) + + def clean(self, value): + """ + Check and clean the Chilean RUT. + """ + super(CLRutField, self).clean(value) + if value in EMPTY_VALUES: + return u'' + rut, verificador = self._canonify(value) + if self._algorithm(rut) == verificador: + return self._format(rut, verificador) + else: + raise ValidationError(u'The Chilean RUT is not valid.') + + def _algorithm(self, rut): + """ + Takes RUT in pure canonical form, calculates the verifier digit. + """ + suma = 0 + multi = 2 + for r in rut[::-1]: + suma += int(r) * multi + multi += 1 + if multi == 8: + multi = 2 + return '0123456789K0'[11 - suma % 11] + + def _canonify(self, rut): + """ + Turns the RUT into one normalized format. Returns a (rut, verifier) + tuple. + """ + rut = str(rut).replace(' ', '').replace('.', '').replace('-', '') + return rut[:-1], rut[-1] + + def _format(self, code, verifier=None): + """ + Formats the RUT from canonical form to the common string representation. + If verifier=None, then the last digit in 'code' is the verifier. + """ + if verifier is None: + verifier = code[-1] + code = code[:-1] + while len(code) > 3 and '.' not in code[:3]: + pos = code.find('.') + if pos == -1: + new_dot = -3 + else: + new_dot = pos - 3 + code = code[:new_dot] + '.' + code[new_dot:] + return '%s-%s' % (code, verifier) + diff --git a/django/contrib/localflavor/fi/forms.py b/django/contrib/localflavor/fi/forms.py index a2b2eed5c2..da5cb5f2a8 100644 --- a/django/contrib/localflavor/fi/forms.py +++ b/django/contrib/localflavor/fi/forms.py @@ -26,8 +26,8 @@ class FISocialSecurityNumber(Field): def clean(self, value): super(FISocialSecurityNumber, self).clean(value) if value in EMPTY_VALUES: - return u'' - + return u'' + checkmarks = "0123456789ABCDEFHJKLMNPRSTUVWXY" result = re.match(r"""^ (?P<date>([0-2]\d|3[01]) @@ -35,13 +35,11 @@ class FISocialSecurityNumber(Field): (\d{2})) [A+-] (?P<serial>(\d{3})) - (?P<chechsum>[%s])$""" % checkmarks, value, re.VERBOSE | re.IGNORECASE) + (?P<checksum>[%s])$""" % checkmarks, value, re.VERBOSE | re.IGNORECASE) if not result: raise ValidationError(gettext(u'Enter a valid Finnish social security number.')) - checksum = int(result.groupdict()['date'] + result.groupdict()['serial']) - - if checkmarks[checksum % len(checkmarks)] == result.groupdict()['chechsum'].upper(): + gd = result.groupdict() + checksum = int(gd['date'] + gd['serial']) + if checkmarks[checksum % len(checkmarks)] == gd['checksum'].upper(): return u'%s' % value.upper() - raise ValidationError(gettext(u'Enter a valid Finnish social security number.')) - diff --git a/django/contrib/localflavor/is_/__init__.py b/django/contrib/localflavor/is_/__init__.py new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/django/contrib/localflavor/is_/__init__.py diff --git a/django/contrib/localflavor/is_/forms.py b/django/contrib/localflavor/is_/forms.py new file mode 100644 index 0000000000..d052acf579 --- /dev/null +++ b/django/contrib/localflavor/is_/forms.py @@ -0,0 +1,77 @@ +""" +Iceland specific form helpers. +""" + +from django.newforms import ValidationError +from django.newforms.fields import RegexField, EMPTY_VALUES +from django.newforms.widgets import Select +from django.utils.translation import gettext + +class ISIdNumberField(RegexField): + """ + Icelandic identification number (kennitala). This is a number every citizen + of Iceland has. + """ + def __init__(self, *args, **kwargs): + error_msg = gettext(u'Enter a valid Icelandic identification number. The format is XXXXXX-XXXX.') + kwargs['min_length'],kwargs['max_length'] = 10,11 + super(ISIdNumberField, self).__init__(r'^\d{6}(-| )?\d{4}$', error_message=error_msg, *args, **kwargs) + + def clean(self, value): + value = super(ISIdNumberField, self).clean(value) + + if value in EMPTY_VALUES: + return u'' + + value = self._canonify(value) + if self._validate(value): + return self._format(value) + else: + raise ValidationError(gettext(u'The Icelandic identification number is not valid.')) + + def _canonify(self, value): + """ + Returns the value as only digits. + """ + return value.replace('-', '').replace(' ', '') + + def _validate(self, value): + """ + Takes in the value in canonical form and checks the verifier digit. The + method is modulo 11. + """ + check = [3, 2, 7, 6, 5, 4, 3, 2, 1, 0] + return sum(int(value[i]) * check[i] for i in range(10)) % 11 == 0 + + def _format(self, value): + """ + Takes in the value in canonical form and returns it in the common + display format. + """ + return value[:6]+'-'+value[6:] + +class ISPhoneNumberField(RegexField): + """ + Icelandic phone number. Seven digits with an optional hyphen or space after + the first three digits. + """ + def __init__(self, *args, **kwargs): + kwargs['min_length'], kwargs['max_length'] = 7,8 + super(ISPhoneNumberField, self).__init__(r'^\d{3}(-| )?\d{4}$', *args, **kwargs) + + def clean(self, value): + value = super(ISPhoneNumberField, self).clean(value) + + if value in EMPTY_VALUES: + return u'' + + return value.replace('-', '').replace(' ', '') + +class ISPostalCodeSelect(Select): + """ + A Select widget that uses a list of Icelandic postal codes as its choices. + """ + def __init__(self, attrs=None): + from is_postalcodes import IS_POSTALCODES + super(ISPostalCodeSelect, self).__init__(attrs, choices=IS_POSTALCODES) + diff --git a/django/contrib/localflavor/is_/is_postalcodes.py b/django/contrib/localflavor/is_/is_postalcodes.py new file mode 100644 index 0000000000..4feca9c013 --- /dev/null +++ b/django/contrib/localflavor/is_/is_postalcodes.py @@ -0,0 +1,151 @@ +# -*- coding: utf-8 -*- + +IS_POSTALCODES = ( + ('101', u'101 ReykjavÃk'), + ('103', u'103 ReykjavÃk'), + ('104', u'104 ReykjavÃk'), + ('105', u'105 ReykjavÃk'), + ('107', u'107 ReykjavÃk'), + ('108', u'108 ReykjavÃk'), + ('109', u'109 ReykjavÃk'), + ('110', u'110 ReykjavÃk'), + ('111', u'111 ReykjavÃk'), + ('112', u'112 ReykjavÃk'), + ('113', u'113 ReykjavÃk'), + ('116', u'116 Kjalarnes'), + ('121', u'121 ReykjavÃk'), + ('123', u'123 ReykjavÃk'), + ('124', u'124 ReykjavÃk'), + ('125', u'125 ReykjavÃk'), + ('127', u'127 ReykjavÃk'), + ('128', u'128 ReykjavÃk'), + ('129', u'129 ReykjavÃk'), + ('130', u'130 ReykjavÃk'), + ('132', u'132 ReykjavÃk'), + ('150', u'150 ReykjavÃk'), + ('155', u'155 ReykjavÃk'), + ('170', u'170 Seltjarnarnes'), + ('172', u'172 Seltjarnarnes'), + ('190', u'190 Vogar'), + ('200', u'200 Kópavogur'), + ('201', u'201 Kópavogur'), + ('202', u'202 Kópavogur'), + ('203', u'203 Kópavogur'), + ('210', u'210 Garðabær'), + ('212', u'212 Garðabær'), + ('220', u'220 Hafnarfjörður'), + ('221', u'221 Hafnarfjörður'), + ('222', u'222 Hafnarfjörður'), + ('225', u'225 Ãlftanes'), + ('230', u'230 Reykjanesbær'), + ('232', u'232 Reykjanesbær'), + ('233', u'233 Reykjanesbær'), + ('235', u'235 KeflavÃkurflugvöllur'), + ('240', u'240 GrindavÃk'), + ('245', u'245 Sandgerði'), + ('250', u'250 Garður'), + ('260', u'260 Reykjanesbær'), + ('270', u'270 Mosfellsbær'), + ('300', u'300 Akranes'), + ('301', u'301 Akranes'), + ('302', u'302 Akranes'), + ('310', u'310 Borgarnes'), + ('311', u'311 Borgarnes'), + ('320', u'320 Reykholt à Borgarfirði'), + ('340', u'340 Stykkishólmur'), + ('345', u'345 Flatey á Breiðafirði'), + ('350', u'350 Grundarfjörður'), + ('355', u'355 ÓlafsvÃk'), + ('356', u'356 Snæfellsbær'), + ('360', u'360 Hellissandur'), + ('370', u'370 Búðardalur'), + ('371', u'371 Búðardalur'), + ('380', u'380 Reykhólahreppur'), + ('400', u'400 Ãsafjörður'), + ('401', u'401 Ãsafjörður'), + ('410', u'410 HnÃfsdalur'), + ('415', u'415 BolungarvÃk'), + ('420', u'420 SúðavÃk'), + ('425', u'425 Flateyri'), + ('430', u'430 Suðureyri'), + ('450', u'450 Patreksfjörður'), + ('451', u'451 Patreksfjörður'), + ('460', u'460 Tálknafjörður'), + ('465', u'465 BÃldudalur'), + ('470', u'470 Þingeyri'), + ('471', u'471 Þingeyri'), + ('500', u'500 Staður'), + ('510', u'510 HólmavÃk'), + ('512', u'512 HólmavÃk'), + ('520', u'520 Drangsnes'), + ('522', u'522 Kjörvogur'), + ('523', u'523 Bær'), + ('524', u'524 Norðurfjörður'), + ('530', u'530 Hvammstangi'), + ('531', u'531 Hvammstangi'), + ('540', u'540 Blönduós'), + ('541', u'541 Blönduós'), + ('545', u'545 Skagaströnd'), + ('550', u'550 Sauðárkrókur'), + ('551', u'551 Sauðárkrókur'), + ('560', u'560 VarmahlÃð'), + ('565', u'565 Hofsós'), + ('566', u'566 Hofsós'), + ('570', u'570 Fljót'), + ('580', u'580 Siglufjörður'), + ('600', u'600 Akureyri'), + ('601', u'601 Akureyri'), + ('602', u'602 Akureyri'), + ('603', u'603 Akureyri'), + ('610', u'610 GrenivÃk'), + ('611', u'611 GrÃmsey'), + ('620', u'620 DalvÃk'), + ('621', u'621 DalvÃk'), + ('625', u'625 Ólafsfjörður'), + ('630', u'630 HrÃsey'), + ('640', u'640 HúsavÃk'), + ('641', u'641 HúsavÃk'), + ('645', u'645 Fosshóll'), + ('650', u'650 Laugar'), + ('660', u'660 Mývatn'), + ('670', u'670 Kópasker'), + ('671', u'671 Kópasker'), + ('675', u'675 Raufarhöfn'), + ('680', u'680 Þórshöfn'), + ('681', u'681 Þórshöfn'), + ('685', u'685 Bakkafjörður'), + ('690', u'690 Vopnafjörður'), + ('700', u'700 Egilsstaðir'), + ('701', u'701 Egilsstaðir'), + ('710', u'710 Seyðisfjörður'), + ('715', u'715 Mjóifjörður'), + ('720', u'720 Borgarfjörður eystri'), + ('730', u'730 Reyðarfjörður'), + ('735', u'735 Eskifjörður'), + ('740', u'740 Neskaupstaður'), + ('750', u'750 Fáskrúðsfjörður'), + ('755', u'755 Stöðvarfjörður'), + ('760', u'760 BreiðdalsvÃk'), + ('765', u'765 Djúpivogur'), + ('780', u'780 Höfn à Hornafirði'), + ('781', u'781 Höfn à Hornafirði'), + ('785', u'785 Öræfi'), + ('800', u'800 Selfoss'), + ('801', u'801 Selfoss'), + ('802', u'802 Selfoss'), + ('810', u'810 Hveragerði'), + ('815', u'815 Þorlákshöfn'), + ('820', u'820 Eyrarbakki'), + ('825', u'825 Stokkseyri'), + ('840', u'840 Laugarvatn'), + ('845', u'845 Flúðir'), + ('850', u'850 Hella'), + ('851', u'851 Hella'), + ('860', u'860 Hvolsvöllur'), + ('861', u'861 Hvolsvöllur'), + ('870', u'870 VÃk'), + ('871', u'871 VÃk'), + ('880', u'880 Kirkjubæjarklaustur'), + ('900', u'900 Vestmannaeyjar'), + ('902', u'902 Vestmannaeyjar') +) diff --git a/django/contrib/localflavor/it/forms.py b/django/contrib/localflavor/it/forms.py index 8e9d8bc11d..bb1bb2e6a4 100644 --- a/django/contrib/localflavor/it/forms.py +++ b/django/contrib/localflavor/it/forms.py @@ -5,13 +5,15 @@ IT-specific Form helpers from django.newforms import ValidationError from django.newforms.fields import Field, RegexField, Select, EMPTY_VALUES from django.utils.translation import gettext +from django.utils.encoding import smart_unicode +from django.contrib.localflavor.it.util import ssn_check_digit, vat_number_check_digit import re class ITZipCodeField(RegexField): def __init__(self, *args, **kwargs): super(ITZipCodeField, self).__init__(r'^\d{5}$', max_length=None, min_length=None, - error_message=gettext(u'Enter a zip code in the format XXXXX.'), + error_message=gettext(u'Enter a valid zip code.'), *args, **kwargs) class ITRegionSelect(Select): @@ -29,3 +31,47 @@ class ITProvinceSelect(Select): def __init__(self, attrs=None): from it_province import PROVINCE_CHOICES # relative import super(ITProvinceSelect, self).__init__(attrs, choices=PROVINCE_CHOICES) + +class ITSocialSecurityNumberField(RegexField): + """ + A form field that validates Italian Social Security numbers (codice fiscale). + For reference see http://www.agenziaentrate.it/ and search for + 'Informazioni sulla codificazione delle persone fisiche'. + """ + err_msg = gettext(u'Enter a valid Social Security number.') + def __init__(self, *args, **kwargs): + super(ITSocialSecurityNumberField, self).__init__(r'^\w{3}\s*\w{3}\s*\w{5}\s*\w{5}$', + max_length=None, min_length=None, error_message=self.err_msg, + *args, **kwargs) + + def clean(self, value): + value = super(ITSocialSecurityNumberField, self).clean(value) + if value == u'': + return value + value = re.sub('\s', u'', value).upper() + try: + check_digit = ssn_check_digit(value) + except ValueError: + raise ValidationError(self.err_msg) + if not value[15] == check_digit: + raise ValidationError(self.err_msg) + return value + +class ITVatNumberField(Field): + """ + A form field that validates Italian VAT numbers (partita IVA). + """ + def clean(self, value): + value = super(ITVatNumberField, self).clean(value) + if value == u'': + return value + err_msg = gettext(u'Enter a valid VAT number.') + try: + vat_number = int(value) + except ValueError: + raise ValidationError(err_msg) + vat_number = str(vat_number).zfill(11) + check_digit = vat_number_check_digit(vat_number[0:10]) + if not vat_number[10] == check_digit: + raise ValidationError(err_msg) + return smart_unicode(vat_number) diff --git a/django/contrib/localflavor/it/util.py b/django/contrib/localflavor/it/util.py new file mode 100644 index 0000000000..49b607f160 --- /dev/null +++ b/django/contrib/localflavor/it/util.py @@ -0,0 +1,40 @@ +def ssn_check_digit(value): + "Calculate Italian social security number check digit." + ssn_even_chars = { + '0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9, + 'A': 0, 'B': 1, 'C': 2, 'D': 3, 'E': 4, 'F': 5, 'G': 6, 'H': 7, 'I': 8, 'J': 9, + 'K': 10, 'L': 11, 'M': 12, 'N': 13, 'O': 14, 'P': 15, 'Q': 16, 'R': 17, 'S': 18, + 'T': 19, 'U': 20, 'V': 21, 'W': 22, 'X': 23, 'Y': 24, 'Z': 25 + } + ssn_odd_chars = { + '0': 1, '1': 0, '2': 5, '3': 7, '4': 9, '5': 13, '6': 15, '7': 17, '8': 19, '9': 21, + 'A': 1, 'B': 0, 'C': 5, 'D': 7, 'E': 9, 'F': 13, 'G': 15, 'H': 17, 'I': 19, 'J': 21, + 'K': 2, 'L': 4, 'M': 18, 'N': 20, 'O': 11, 'P': 3, 'Q': 6, 'R': 8, 'S': 12, + 'T': 14, 'U': 16, 'V': 10, 'W': 22, 'X': 25, 'Y': 24, 'Z': 23 + } + # Chars from 'A' to 'Z' + ssn_check_digits = [chr(x) for x in range(65, 91)] + + ssn = value.upper() + total = 0 + for i in range(0,15): + try: + if i % 2 == 0: + total += ssn_odd_chars[ssn[i]] + else: + total += ssn_even_chars[ssn[i]] + except KeyError: + msg = "Character '%(char)s' is not allowed." % {'char': ssn[i]} + raise ValueError(msg) + return ssn_check_digits[total % 26] + +def vat_number_check_digit(vat_number): + "Calculate Italian VAT number check digit." + normalized_vat_number = str(vat_number).zfill(10) + total = 0 + for i in range(0, 10, 2): + total += int(normalized_vat_number[i]) + for i in range(1, 11, 2): + quotient , remainder = divmod(int(normalized_vat_number[i]) * 2, 10) + total += quotient + remainder + return str((10 - total % 10) % 10) diff --git a/django/contrib/localflavor/us/us_states.py b/django/contrib/localflavor/us/us_states.py index 89124a4b69..c84facc219 100644 --- a/django/contrib/localflavor/us/us_states.py +++ b/django/contrib/localflavor/us/us_states.py @@ -15,7 +15,7 @@ STATE_CHOICES = ( ('CA', 'California'), ('CO', 'Colorado'), ('CT', 'Connecticut'), - ('DE', 'Deleware'), + ('DE', 'Delaware'), ('DC', 'District of Columbia'), ('FM', 'Federated States of Micronesia'), ('FL', 'Florida'), @@ -97,6 +97,7 @@ STATES_NORMALIZED = { 'de': 'DE', 'del': 'DE', 'delaware': 'DE', + 'deleware': 'DE', 'district of columbia': 'DC', 'federated states of micronesia': 'FM', 'fl': 'FL', diff --git a/django/contrib/sitemaps/views.py b/django/contrib/sitemaps/views.py index 576e3d0bb8..d615c8e661 100644 --- a/django/contrib/sitemaps/views.py +++ b/django/contrib/sitemaps/views.py @@ -16,7 +16,7 @@ def index(request, sitemaps): def sitemap(request, sitemaps, section=None): maps, urls = [], [] if section is not None: - if not sitemaps.has_key(section): + if section not in sitemaps: raise Http404("No sitemap available for section: %r" % section) maps.append(sitemaps[section]) else: diff --git a/django/contrib/syndication/feeds.py b/django/contrib/syndication/feeds.py index cdb4e8170f..af00bdc3e9 100644 --- a/django/contrib/syndication/feeds.py +++ b/django/contrib/syndication/feeds.py @@ -70,6 +70,7 @@ class Feed(object): feed = self.feed_type( title = self.__get_dynamic_attr('title', obj), + subtitle = self.__get_dynamic_attr('subtitle', obj), link = link, description = self.__get_dynamic_attr('description', obj), language = settings.LANGUAGE_CODE.decode(), diff --git a/django/contrib/webdesign/lorem_ipsum.py b/django/contrib/webdesign/lorem_ipsum.py index b5a3d3b5db..6226bbef1b 100644 --- a/django/contrib/webdesign/lorem_ipsum.py +++ b/django/contrib/webdesign/lorem_ipsum.py @@ -1,66 +1,69 @@ -"""
-Utility functions for generating "lorem ipsum" Latin text.
-"""
-
-import random
-
-COMMON_P = 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
-WORDS = ('exercitationem', 'perferendis', 'perspiciatis', 'laborum', 'eveniet', 'sunt', 'iure', 'nam', 'nobis', 'eum', 'cum', 'officiis', 'excepturi', 'odio', 'consectetur', 'quasi', 'aut', 'quisquam', 'vel', 'eligendi', 'itaque', 'non', 'odit', 'tempore', 'quaerat', 'dignissimos', 'facilis', 'neque', 'nihil', 'expedita', 'vitae', 'vero', 'ipsum', 'nisi', 'animi', 'cumque', 'pariatur', 'velit', 'modi', 'natus', 'iusto', 'eaque', 'sequi', 'illo', 'sed', 'ex', 'et', 'voluptatibus', 'tempora', 'veritatis', 'ratione', 'assumenda', 'incidunt', 'nostrum', 'placeat', 'aliquid', 'fuga', 'provident', 'praesentium', 'rem', 'necessitatibus', 'suscipit', 'adipisci', 'quidem', 'possimus', 'voluptas', 'debitis', 'sint', 'accusantium', 'unde', 'sapiente', 'voluptate', 'qui', 'aspernatur', 'laudantium', 'soluta', 'amet', 'quo', 'aliquam', 'saepe', 'culpa', 'libero', 'ipsa', 'dicta', 'reiciendis', 'nesciunt', 'doloribus', 'autem', 'impedit', 'minima', 'maiores', 'repudiandae', 'ipsam', 'obcaecati', 'ullam', 'enim', 'totam', 'delectus', 'ducimus', 'quis', 'voluptates', 'dolores', 'molestiae', 'harum', 'dolorem', 'quia', 'voluptatem', 'molestias', 'magni', 'distinctio', 'omnis', 'illum', 'dolorum', 'voluptatum', 'ea', 'quas', 'quam', 'corporis', 'quae', 'blanditiis', 'atque', 'deserunt', 'laboriosam', 'earum', 'consequuntur', 'hic', 'cupiditate', 'quibusdam', 'accusamus', 'ut', 'rerum', 'error', 'minus', 'eius', 'ab', 'ad', 'nemo', 'fugit', 'officia', 'at', 'in', 'id', 'quos', 'reprehenderit', 'numquam', 'iste', 'fugiat', 'sit', 'inventore', 'beatae', 'repellendus', 'magnam', 'recusandae', 'quod', 'explicabo', 'doloremque', 'aperiam', 'consequatur', 'asperiores', 'commodi', 'optio', 'dolor', 'labore', 'temporibus', 'repellat', 'veniam', 'architecto', 'est', 'esse', 'mollitia', 'nulla', 'a', 'similique', 'eos', 'alias', 'dolore', 'tenetur', 'deleniti', 'porro', 'facere', 'maxime', 'corrupti')
-COMMON_WORDS = ('lorem', 'ipsum', 'dolor', 'sit', 'amet', 'consectetur', 'adipisicing', 'elit', 'sed', 'do', 'eiusmod', 'tempor', 'incididunt', 'ut', 'labore', 'et', 'dolore', 'magna', 'aliqua')
-
-def sentence():
- """
- Returns a randomly generated sentence of lorem ipsum text.
-
- The first word is capitalized, and the sentence ends in either a period or
- question mark. Commas are added at random.
- """
- # Determine the number of comma-separated sections and number of words in
- # each section for this sentence.
- sections = [' '.join(random.sample(WORDS, random.randint(3, 12))) for i in range(random.randint(1, 5))]
- s = ', '.join(sections)
- # Convert to sentence case and add end punctuation.
- return '%s%s%s' % (s[0].upper(), s[1:], random.choice('?.'))
-
-def paragraph():
- """
- Returns a randomly generated paragraph of lorem ipsum text.
-
- The paragraph consists of between 1 and 4 sentences, inclusive.
- """
- return ' '.join([sentence() for i in range(random.randint(1, 4))])
-
-def paragraphs(count, common=True):
- """
- Returns a list of paragraphs as returned by paragraph().
-
- If `common` is True, then the first paragraph will be the standard
- 'lorem ipsum' paragraph. Otherwise, the first paragraph will be random
- Latin text. Either way, subsequent paragraphs will be random Latin text.
- """
- paras = []
- for i in range(count):
- if common and i == 0:
- paras.append(COMMON_P)
- else:
- paras.append(paragraph())
- return paras
-
-def words(count, common=True):
- """
- Returns a string of `count` lorem ipsum words separated by a single space.
-
- If `common` is True, then the first 19 words will be the standard
- 'lorem ipsum' words. Otherwise, all words will be selected randomly.
- """
- if common:
- word_list = list(COMMON_WORDS)
- else:
- word_list = []
- c = len(word_list)
- if count > c:
- count = min(count - c, len(WORDS))
- word_list += random.sample(WORDS, count - c)
- else:
- word_list = word_list[:count]
- return ' '.join(word_list)
+""" +Utility functions for generating "lorem ipsum" Latin text. +""" + +import random + +COMMON_P = 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.' +WORDS = ('exercitationem', 'perferendis', 'perspiciatis', 'laborum', 'eveniet', 'sunt', 'iure', 'nam', 'nobis', 'eum', 'cum', 'officiis', 'excepturi', 'odio', 'consectetur', 'quasi', 'aut', 'quisquam', 'vel', 'eligendi', 'itaque', 'non', 'odit', 'tempore', 'quaerat', 'dignissimos', 'facilis', 'neque', 'nihil', 'expedita', 'vitae', 'vero', 'ipsum', 'nisi', 'animi', 'cumque', 'pariatur', 'velit', 'modi', 'natus', 'iusto', 'eaque', 'sequi', 'illo', 'sed', 'ex', 'et', 'voluptatibus', 'tempora', 'veritatis', 'ratione', 'assumenda', 'incidunt', 'nostrum', 'placeat', 'aliquid', 'fuga', 'provident', 'praesentium', 'rem', 'necessitatibus', 'suscipit', 'adipisci', 'quidem', 'possimus', 'voluptas', 'debitis', 'sint', 'accusantium', 'unde', 'sapiente', 'voluptate', 'qui', 'aspernatur', 'laudantium', 'soluta', 'amet', 'quo', 'aliquam', 'saepe', 'culpa', 'libero', 'ipsa', 'dicta', 'reiciendis', 'nesciunt', 'doloribus', 'autem', 'impedit', 'minima', 'maiores', 'repudiandae', 'ipsam', 'obcaecati', 'ullam', 'enim', 'totam', 'delectus', 'ducimus', 'quis', 'voluptates', 'dolores', 'molestiae', 'harum', 'dolorem', 'quia', 'voluptatem', 'molestias', 'magni', 'distinctio', 'omnis', 'illum', 'dolorum', 'voluptatum', 'ea', 'quas', 'quam', 'corporis', 'quae', 'blanditiis', 'atque', 'deserunt', 'laboriosam', 'earum', 'consequuntur', 'hic', 'cupiditate', 'quibusdam', 'accusamus', 'ut', 'rerum', 'error', 'minus', 'eius', 'ab', 'ad', 'nemo', 'fugit', 'officia', 'at', 'in', 'id', 'quos', 'reprehenderit', 'numquam', 'iste', 'fugiat', 'sit', 'inventore', 'beatae', 'repellendus', 'magnam', 'recusandae', 'quod', 'explicabo', 'doloremque', 'aperiam', 'consequatur', 'asperiores', 'commodi', 'optio', 'dolor', 'labore', 'temporibus', 'repellat', 'veniam', 'architecto', 'est', 'esse', 'mollitia', 'nulla', 'a', 'similique', 'eos', 'alias', 'dolore', 'tenetur', 'deleniti', 'porro', 'facere', 'maxime', 'corrupti') +COMMON_WORDS = ('lorem', 'ipsum', 'dolor', 'sit', 'amet', 'consectetur', 'adipisicing', 'elit', 'sed', 'do', 'eiusmod', 'tempor', 'incididunt', 'ut', 'labore', 'et', 'dolore', 'magna', 'aliqua') + +def sentence(): + """ + Returns a randomly generated sentence of lorem ipsum text. + + The first word is capitalized, and the sentence ends in either a period or + question mark. Commas are added at random. + """ + # Determine the number of comma-separated sections and number of words in + # each section for this sentence. + sections = [' '.join(random.sample(WORDS, random.randint(3, 12))) for i in range(random.randint(1, 5))] + s = ', '.join(sections) + # Convert to sentence case and add end punctuation. + return '%s%s%s' % (s[0].upper(), s[1:], random.choice('?.')) + +def paragraph(): + """ + Returns a randomly generated paragraph of lorem ipsum text. + + The paragraph consists of between 1 and 4 sentences, inclusive. + """ + return ' '.join([sentence() for i in range(random.randint(1, 4))]) + +def paragraphs(count, common=True): + """ + Returns a list of paragraphs as returned by paragraph(). + + If `common` is True, then the first paragraph will be the standard + 'lorem ipsum' paragraph. Otherwise, the first paragraph will be random + Latin text. Either way, subsequent paragraphs will be random Latin text. + """ + paras = [] + for i in range(count): + if common and i == 0: + paras.append(COMMON_P) + else: + paras.append(paragraph()) + return paras + +def words(count, common=True): + """ + Returns a string of `count` lorem ipsum words separated by a single space. + + If `common` is True, then the first 19 words will be the standard + 'lorem ipsum' words. Otherwise, all words will be selected randomly. + """ + if common: + word_list = list(COMMON_WORDS) + else: + word_list = [] + c = len(word_list) + if count > c: + count -= c + while count > 0: + c = min(count, len(WORDS)) + count -= c + word_list += random.sample(WORDS, c) + else: + word_list = word_list[:count] + return ' '.join(word_list) diff --git a/django/core/cache/backends/base.py b/django/core/cache/backends/base.py index ef5f6a6b3e..bb67399f3b 100644 --- a/django/core/cache/backends/base.py +++ b/django/core/cache/backends/base.py @@ -54,3 +54,6 @@ class BaseCache(object): Returns True if the key is in the cache and has not expired. """ return self.get(key) is not None + + __contains__ = has_key + diff --git a/django/core/cache/backends/simple.py b/django/core/cache/backends/simple.py index 175944a75a..3fcad8c7ad 100644 --- a/django/core/cache/backends/simple.py +++ b/django/core/cache/backends/simple.py @@ -52,7 +52,7 @@ class CacheClass(BaseCache): pass def has_key(self, key): - return self._cache.has_key(key) + return key in self._cache def _cull(self): if self._cull_frequency == 0: diff --git a/django/core/handlers/modpython.py b/django/core/handlers/modpython.py index 5fc41a048b..6370cab47c 100644 --- a/django/core/handlers/modpython.py +++ b/django/core/handlers/modpython.py @@ -42,11 +42,11 @@ class ModPythonRequest(http.HttpRequest): def is_secure(self): # Note: modpython 3.2.10+ has req.is_https(), but we need to support previous versions - return self._req.subprocess_env.has_key('HTTPS') and self._req.subprocess_env['HTTPS'] == 'on' + return 'HTTPS' in self._req.subprocess_env and self._req.subprocess_env['HTTPS'] == 'on' def _load_post_and_files(self): "Populates self._post and self._files" - if self._req.headers_in.has_key('content-type') and self._req.headers_in['content-type'].startswith('multipart'): + if 'content-type' in self._req.headers_in and self._req.headers_in['content-type'].startswith('multipart'): self._post, self._files = http.parse_file_upload(self._req.headers_in, self.raw_post_data) else: self._post, self._files = http.QueryDict(self.raw_post_data), datastructures.MultiValueDict() diff --git a/django/core/handlers/wsgi.py b/django/core/handlers/wsgi.py index 71cfecd9a0..4320b69627 100644 --- a/django/core/handlers/wsgi.py +++ b/django/core/handlers/wsgi.py @@ -103,7 +103,7 @@ class WSGIRequest(http.HttpRequest): return '%s%s' % (self.path, self.environ.get('QUERY_STRING', '') and ('?' + self.environ.get('QUERY_STRING', '')) or '') def is_secure(self): - return self.environ.has_key('HTTPS') and self.environ['HTTPS'] == 'on' + return 'HTTPS' in self.environ and self.environ['HTTPS'] == 'on' def _load_post_and_files(self): # Populates self._post and self._files diff --git a/django/core/mail.py b/django/core/mail.py index b9966c2af0..8661d84287 100644 --- a/django/core/mail.py +++ b/django/core/mail.py @@ -1,14 +1,22 @@ -# Use this module for e-mailing. +""" +Tools for sending email. +""" from django.conf import settings from email.MIMEText import MIMEText from email.Header import Header from email.Utils import formatdate +from email import Charset +import os import smtplib import socket import time import random +# Don't BASE64-encode UTF-8 messages so that we avoid unwanted attention from +# some spam filters. +Charset.add_charset('utf-8', Charset.SHORTEST, Charset.QP, 'utf-8') + # Cache the hostname, but do it lazily: socket.getfqdn() can take a couple of # seconds, which slows down the restart of the server. class CachedDnsName(object): @@ -22,6 +30,28 @@ class CachedDnsName(object): DNS_NAME = CachedDnsName() +# Copied from Python standard library and modified to used the cached hostname +# for performance. +def make_msgid(idstring=None): + """Returns a string suitable for RFC 2822 compliant Message-ID, e.g: + + <20020201195627.33539.96671@nightshade.la.mastaler.com> + + Optional idstring if given is a string used to strengthen the + uniqueness of the message id. + """ + timeval = time.time() + utcdate = time.strftime('%Y%m%d%H%M%S', time.gmtime(timeval)) + pid = os.getpid() + randint = random.randrange(100000) + if idstring is None: + idstring = '' + else: + idstring = '.' + idstring + idhost = DNS_NAME + msgid = '<%s.%s.%s%s@%s>' % (utcdate, pid, randint, idstring, idhost) + return msgid + class BadHeaderError(ValueError): pass @@ -34,6 +64,131 @@ class SafeMIMEText(MIMEText): val = Header(val, settings.DEFAULT_CHARSET) MIMEText.__setitem__(self, name, val) +class SMTPConnection(object): + """ + A wrapper that manages the SMTP network connection. + """ + + def __init__(self, host=None, port=None, username=None, password=None, + use_tls=None, fail_silently=False): + self.host = host or settings.EMAIL_HOST + self.port = port or settings.EMAIL_PORT + self.username = username or settings.EMAIL_HOST_USER + self.password = password or settings.EMAIL_HOST_PASSWORD + self.use_tls = (use_tls is not None) and use_tls or settings.EMAIL_USE_TLS + self.fail_silently = fail_silently + self.connection = None + + def open(self): + """ + Ensure we have a connection to the email server. Returns whether or not + a new connection was required. + """ + if self.connection: + # Nothing to do if the connection is already open. + return False + try: + self.connection = smtplib.SMTP(self.host, self.port) + if self.use_tls: + self.connection.ehlo() + self.connection.starttls() + self.connection.ehlo() + if self.username and self.password: + self.connection.login(self.username, self.password) + return True + except: + if not self.fail_silently: + raise + + def close(self): + """Close the connection to the email server.""" + try: + try: + self.connection.quit() + except socket.sslerror: + # This happens when calling quit() on a TLS connection + # sometimes. + self.connection.close() + except: + if self.fail_silently: + return + raise + finally: + self.connection = None + + def send_messages(self, email_messages): + """ + Send one or more EmailMessage objects and return the number of email + messages sent. + """ + if not email_messages: + return + new_conn_created = self.open() + if not self.connection: + # We failed silently on open(). Trying to send would be pointless. + return + num_sent = 0 + for message in email_messages: + sent = self._send(message) + if sent: + num_sent += 1 + if new_conn_created: + self.close() + return num_sent + + def _send(self, email_message): + """A helper method that does the actual sending.""" + if not email_message.to: + return False + try: + self.connection.sendmail(email_message.from_email, + email_message.recipients(), + email_message.message().as_string()) + except: + if not self.fail_silently: + raise + return False + return True + +class EmailMessage(object): + """ + A container for email information. + """ + def __init__(self, subject='', body='', from_email=None, to=None, bcc=None, connection=None): + self.to = to or [] + self.bcc = bcc or [] + self.from_email = from_email or settings.DEFAULT_FROM_EMAIL + self.subject = subject + self.body = body + self.connection = connection + + def get_connection(self, fail_silently=False): + if not self.connection: + self.connection = SMTPConnection(fail_silently=fail_silently) + return self.connection + + def message(self): + msg = SafeMIMEText(self.body, 'plain', settings.DEFAULT_CHARSET) + msg['Subject'] = self.subject + msg['From'] = self.from_email + msg['To'] = ', '.join(self.to) + msg['Date'] = formatdate() + msg['Message-ID'] = make_msgid() + if self.bcc: + msg['Bcc'] = ', '.join(self.bcc) + return msg + + def recipients(self): + """ + Returns a list of all recipients of the email (includes direct + addressees as well as Bcc entries). + """ + return self.to + self.bcc + + def send(self, fail_silently=False): + """Send the email message.""" + return self.get_connection(fail_silently).send_messages([self]) + def send_mail(subject, message, from_email, recipient_list, fail_silently=False, auth_user=None, auth_password=None): """ Easy wrapper for sending a single message to a recipient list. All members @@ -41,12 +196,13 @@ def send_mail(subject, message, from_email, recipient_list, fail_silently=False, If auth_user is None, the EMAIL_HOST_USER setting is used. If auth_password is None, the EMAIL_HOST_PASSWORD setting is used. + + NOTE: This method is deprecated. It exists for backwards compatibility. + New code should use the EmailMessage class directly. """ - if auth_user is None: - auth_user = settings.EMAIL_HOST_USER - if auth_password is None: - auth_password = settings.EMAIL_HOST_PASSWORD - return send_mass_mail([[subject, message, from_email, recipient_list]], fail_silently, auth_user, auth_password) + connection = SMTPConnection(username=auth_user, password=auth_password, + fail_silently=fail_silently) + return EmailMessage(subject, message, from_email, recipient_list, connection=connection).send() def send_mass_mail(datatuple, fail_silently=False, auth_user=None, auth_password=None): """ @@ -57,52 +213,24 @@ def send_mass_mail(datatuple, fail_silently=False, auth_user=None, auth_password If auth_user and auth_password are set, they're used to log in. If auth_user is None, the EMAIL_HOST_USER setting is used. If auth_password is None, the EMAIL_HOST_PASSWORD setting is used. + + NOTE: This method is deprecated. It exists for backwards compatibility. + New code should use the EmailMessage class directly. """ - if auth_user is None: - auth_user = settings.EMAIL_HOST_USER - if auth_password is None: - auth_password = settings.EMAIL_HOST_PASSWORD - try: - server = smtplib.SMTP(settings.EMAIL_HOST, settings.EMAIL_PORT) - if auth_user and auth_password: - server.login(auth_user, auth_password) - except: - if fail_silently: - return - raise - num_sent = 0 - for subject, message, from_email, recipient_list in datatuple: - if not recipient_list: - continue - from_email = from_email or settings.DEFAULT_FROM_EMAIL - msg = SafeMIMEText(message, 'plain', settings.DEFAULT_CHARSET) - msg['Subject'] = subject - msg['From'] = from_email - msg['To'] = ', '.join(recipient_list) - msg['Date'] = formatdate() - try: - random_bits = str(random.getrandbits(64)) - except AttributeError: # Python 2.3 doesn't have random.getrandbits(). - random_bits = ''.join([random.choice('1234567890') for i in range(19)]) - msg['Message-ID'] = "<%d.%s@%s>" % (time.time(), random_bits, DNS_NAME) - try: - server.sendmail(from_email, recipient_list, msg.as_string()) - num_sent += 1 - except: - if not fail_silently: - raise - try: - server.quit() - except: - if fail_silently: - return - raise - return num_sent + connection = SMTPConnection(username=auth_user, password=auth_password, + fail_silently=fail_silently) + messages = [EmailMessage(subject, message, sender, recipient) for subject, message, sender, recipient in datatuple] + return connection.send_messages(messages) def mail_admins(subject, message, fail_silently=False): "Sends a message to the admins, as defined by the ADMINS setting." - send_mail(settings.EMAIL_SUBJECT_PREFIX + subject, message, settings.SERVER_EMAIL, [a[1] for a in settings.ADMINS], fail_silently) + EmailMessage(settings.EMAIL_SUBJECT_PREFIX + subject, message, + settings.SERVER_EMAIL, [a[1] for a in + settings.ADMINS]).send(fail_silently=fail_silently) def mail_managers(subject, message, fail_silently=False): "Sends a message to the managers, as defined by the MANAGERS setting." - send_mail(settings.EMAIL_SUBJECT_PREFIX + subject, message, settings.SERVER_EMAIL, [a[1] for a in settings.MANAGERS], fail_silently) + EmailMessage(settings.EMAIL_SUBJECT_PREFIX + subject, message, + settings.SERVER_EMAIL, [a[1] for a in + settings.MANAGERS]).send(fail_silently=fail_silently) + diff --git a/django/core/management.py b/django/core/management.py index cff95ff61d..ea79bf5262 100644 --- a/django/core/management.py +++ b/django/core/management.py @@ -168,6 +168,8 @@ def _get_sql_model_create(model, known_models=set()): for f in opts.fields: if isinstance(f, (models.ForeignKey, models.OneToOneField)): rel_field = f.rel.get_related_field() + while isinstance(rel_field, (models.ForeignKey, models.OneToOneField)): + rel_field = rel_field.rel.get_related_field() data_type = get_rel_data_type(rel_field) else: rel_field = f @@ -239,14 +241,14 @@ def _get_sql_for_pending_references(model, pending_references): def _get_many_to_many_sql_for_model(model): from django.db import backend, get_creation_module - from django.db.models import GenericRel + from django.contrib.contenttypes import generic data_types = get_creation_module().DATA_TYPES opts = model._meta final_output = [] for f in opts.many_to_many: - if not isinstance(f.rel, GenericRel): + if not isinstance(f.rel, generic.GenericRel): table_output = [style.SQL_KEYWORD('CREATE TABLE') + ' ' + \ style.SQL_TABLE(backend.quote_name(f.m2m_db_table())) + ' ('] table_output.append(' %s %s %s,' % \ @@ -314,7 +316,7 @@ def get_sql_delete(app): # Drop the table now output.append('%s %s;' % (style.SQL_KEYWORD('DROP TABLE'), style.SQL_TABLE(backend.quote_name(model._meta.db_table)))) - if backend.supports_constraints and references_to_delete.has_key(model): + if backend.supports_constraints and model in references_to_delete: for rel_class, f in references_to_delete[model]: table = rel_class._meta.db_table col = f.column @@ -537,6 +539,7 @@ def syncdb(verbosity=1, interactive=True): # Install custom SQL for the app (but only if this # is a model we've just created) for app in models.get_apps(): + app_name = app.__name__.split('.')[-2] for model in models.get_models(app): if model in created_models: custom_sql = get_custom_sql_for_model(model) @@ -789,11 +792,12 @@ def startapp(app_name, directory): # Determine the project_name a bit naively -- by looking at the name of # the parent directory. project_dir = os.path.normpath(os.path.join(directory, '..')) - project_name = os.path.basename(project_dir) - if app_name == os.path.basename(directory): + parent_dir = os.path.basename(project_dir) + project_name = os.path.basename(directory) + if app_name == project_name: sys.stderr.write(style.ERROR("Error: You cannot create an app with the same name (%r) as your project.\n" % app_name)) sys.exit(1) - _start_helper('app', app_name, directory, project_name) + _start_helper('app', app_name, directory, parent_dir) startapp.help_doc = "Creates a Django app directory structure for the given app name in the current directory." startapp.args = "[appname]" @@ -842,7 +846,7 @@ def inspectdb(): att_name += '_field' comment_notes.append('Field renamed because it was a Python reserved word.') - if relations.has_key(i): + if i in relations: rel_to = relations[i][1] == table_name and "'self'" or table2model(relations[i][1]) field_type = 'ForeignKey(%s' % rel_to if att_name.endswith('_id'): @@ -1320,6 +1324,8 @@ def load_data(fixture_labels, verbosity=1): from django.conf import settings import sys + disable_termcolors() + # Keep a count of the installed objects and fixtures count = [0,0] models = set() @@ -1552,7 +1558,7 @@ def execute_from_command_line(action_mapping=DEFAULT_ACTION_MAPPING, argv=None): action = args[0] except IndexError: parser.print_usage_and_exit() - if not action_mapping.has_key(action): + if action not in action_mapping: print_error("Your action, %r, was invalid." % action, argv[0]) # Switch to English, because django-admin.py creates database content diff --git a/django/core/serializers/base.py b/django/core/serializers/base.py index 8e610ad240..86d0037c17 100644 --- a/django/core/serializers/base.py +++ b/django/core/serializers/base.py @@ -105,9 +105,11 @@ class Serializer(object): def getvalue(self): """ - Return the fully serialized queryset. + Return the fully serialized queryset (or None if the output stream is + not seekable). """ - return self.stream.getvalue() + if callable(getattr(self.stream, 'getvalue', None)): + return self.stream.getvalue() class Deserializer(object): """ diff --git a/django/core/serializers/json.py b/django/core/serializers/json.py index 15770f160e..7c029e7029 100644 --- a/django/core/serializers/json.py +++ b/django/core/serializers/json.py @@ -17,9 +17,10 @@ class Serializer(PythonSerializer): """ def end_serialization(self): simplejson.dump(self.objects, self.stream, cls=DateTimeAwareJSONEncoder, **self.options) - + def getvalue(self): - return self.stream.getvalue() + if callable(getattr(self.stream, 'getvalue', None)): + return self.stream.getvalue() def Deserializer(stream_or_string, **options): """ @@ -31,15 +32,15 @@ def Deserializer(stream_or_string, **options): stream = stream_or_string for obj in PythonDeserializer(simplejson.load(stream)): yield obj - + class DateTimeAwareJSONEncoder(simplejson.JSONEncoder): """ JSONEncoder subclass that knows how to encode date/time types """ - - DATE_FORMAT = "%Y-%m-%d" + + DATE_FORMAT = "%Y-%m-%d" TIME_FORMAT = "%H:%M:%S" - + def default(self, o): if isinstance(o, datetime.datetime): return o.strftime("%s %s" % (self.DATE_FORMAT, self.TIME_FORMAT)) diff --git a/django/core/servers/basehttp.py b/django/core/servers/basehttp.py index a16b8b675a..80a0bf6a91 100644 --- a/django/core/servers/basehttp.py +++ b/django/core/servers/basehttp.py @@ -208,15 +208,15 @@ def guess_scheme(environ): else: return 'http' -_hoppish = { +_hop_headers = { 'connection':1, 'keep-alive':1, 'proxy-authenticate':1, 'proxy-authorization':1, 'te':1, 'trailers':1, 'transfer-encoding':1, 'upgrade':1 -}.has_key +} def is_hop_by_hop(header_name): """Return true if 'header_name' is an HTTP/1.1 "Hop-by-Hop" header""" - return _hoppish(header_name.lower()) + return header_name.lower() in _hop_headers class ServerHandler(object): """Manage the invocation of a WSGI application""" @@ -334,7 +334,7 @@ class ServerHandler(object): Subclasses can extend this to add other defaults. """ - if not self.headers.has_key('Content-Length'): + if 'Content-Length' not in self.headers: self.set_content_length() def start_response(self, status, headers,exc_info=None): @@ -368,11 +368,11 @@ class ServerHandler(object): if self.origin_server: if self.client_is_modern(): self._write('HTTP/%s %s\r\n' % (self.http_version,self.status)) - if not self.headers.has_key('Date'): + if 'Date' not in self.headers: self._write( 'Date: %s\r\n' % time.asctime(time.gmtime(time.time())) ) - if self.server_software and not self.headers.has_key('Server'): + if self.server_software and 'Server' not in self.headers: self._write('Server: %s\r\n' % self.server_software) else: self._write('Status: %s\r\n' % self.status) diff --git a/django/core/urlresolvers.py b/django/core/urlresolvers.py index c4cbccabcf..38b3263da1 100644 --- a/django/core/urlresolvers.py +++ b/django/core/urlresolvers.py @@ -102,6 +102,14 @@ class RegexURLPattern(object): self.default_args = default_args or {} self.name = name + def add_prefix(self, prefix): + """ + Adds the prefix string to a string-based callback. + """ + if not prefix or not hasattr(self, '_callback_str'): + return + self._callback_str = prefix + '.' + self._callback_str + def resolve(self, path): match = self.regex.search(path) if match: diff --git a/django/core/validators.py b/django/core/validators.py index bd7d790e04..26165c4af1 100644 --- a/django/core/validators.py +++ b/django/core/validators.py @@ -284,7 +284,7 @@ class ValidateIfOtherFieldEquals(object): self.always_test = True def __call__(self, field_data, all_data): - if all_data.has_key(self.other_field) and all_data[self.other_field] == self.other_value: + if self.other_field in all_data and all_data[self.other_field] == self.other_value: for v in self.validator_list: v(field_data, all_data) @@ -322,7 +322,7 @@ class RequiredIfOtherFieldEquals(object): self.always_test = True def __call__(self, field_data, all_data): - if all_data.has_key(self.other_field) and all_data[self.other_field] == self.other_value and not field_data: + if self.other_field in all_data and all_data[self.other_field] == self.other_value and not field_data: raise ValidationError(self.error_message) class RequiredIfOtherFieldDoesNotEqual(object): @@ -335,7 +335,7 @@ class RequiredIfOtherFieldDoesNotEqual(object): self.always_test = True def __call__(self, field_data, all_data): - if all_data.has_key(self.other_field) and all_data[self.other_field] != self.other_value and not field_data: + if self.other_field in all_data and all_data[self.other_field] != self.other_value and not field_data: raise ValidationError(self.error_message) class IsLessThanOtherField(object): diff --git a/django/db/__init__.py b/django/db/__init__.py index 4176b5aa79..33223d200a 100644 --- a/django/db/__init__.py +++ b/django/db/__init__.py @@ -2,7 +2,7 @@ from django.conf import settings from django.core import signals from django.dispatch import dispatcher -__all__ = ('backend', 'connection', 'DatabaseError') +__all__ = ('backend', 'connection', 'DatabaseError', 'IntegrityError') if not settings.DATABASE_ENGINE: settings.DATABASE_ENGINE = 'dummy' @@ -29,6 +29,7 @@ runshell = lambda: __import__('django.db.backends.%s.client' % settings.DATABASE connection = backend.DatabaseWrapper(**settings.DATABASE_OPTIONS) DatabaseError = backend.DatabaseError +IntegrityError = backend.IntegrityError # Register an event that closes the database connection # when a Django request is finished. diff --git a/django/db/backends/ado_mssql/base.py b/django/db/backends/ado_mssql/base.py index 1a2f3de140..52363ed705 100644 --- a/django/db/backends/ado_mssql/base.py +++ b/django/db/backends/ado_mssql/base.py @@ -17,6 +17,7 @@ except ImportError: mx = None DatabaseError = Database.DatabaseError +IntegrityError = Database.IntegrityError # We need to use a special Cursor class because adodbapi expects question-mark # param style, but Django expects "%s". This cursor converts question marks to diff --git a/django/db/backends/dummy/base.py b/django/db/backends/dummy/base.py index eb3c3867c2..6a909016fc 100644 --- a/django/db/backends/dummy/base.py +++ b/django/db/backends/dummy/base.py @@ -15,6 +15,9 @@ def complain(*args, **kwargs): class DatabaseError(Exception): pass +class IntegrityError(DatabaseError): + pass + class DatabaseWrapper: cursor = complain _commit = complain diff --git a/django/db/backends/mysql/base.py b/django/db/backends/mysql/base.py index 3c2431a982..41f4638980 100644 --- a/django/db/backends/mysql/base.py +++ b/django/db/backends/mysql/base.py @@ -25,6 +25,7 @@ import types import re DatabaseError = Database.DatabaseError +IntegrityError = Database.IntegrityError # MySQLdb-1.2.1 supports the Python boolean type, and only uses datetime # module for time-related columns; older versions could have used mx.DateTime diff --git a/django/db/backends/mysql/introspection.py b/django/db/backends/mysql/introspection.py index 7829457fa9..558fe49787 100644 --- a/django/db/backends/mysql/introspection.py +++ b/django/db/backends/mysql/introspection.py @@ -85,7 +85,7 @@ DATA_TYPES_REVERSE = { FIELD_TYPE.LONG: 'IntegerField', FIELD_TYPE.LONGLONG: 'IntegerField', FIELD_TYPE.SHORT: 'IntegerField', - FIELD_TYPE.STRING: 'TextField', + FIELD_TYPE.STRING: 'CharField', FIELD_TYPE.TIMESTAMP: 'DateTimeField', FIELD_TYPE.TINY: 'IntegerField', FIELD_TYPE.TINY_BLOB: 'TextField', diff --git a/django/db/backends/mysql_old/base.py b/django/db/backends/mysql_old/base.py index ded0b6cbcb..d56b8513f9 100644 --- a/django/db/backends/mysql_old/base.py +++ b/django/db/backends/mysql_old/base.py @@ -16,6 +16,7 @@ import types import re DatabaseError = Database.DatabaseError +IntegrityError = Database.IntegrityError django_conversions = conversions.copy() django_conversions.update({ @@ -52,7 +53,7 @@ class MysqlDebugWrapper: raise Database.Warning, "%s: %s" % (w, self.cursor.fetchall()) def __getattr__(self, attr): - if self.__dict__.has_key(attr): + if attr in self.__dict__: return self.__dict__[attr] else: return getattr(self.cursor, attr) diff --git a/django/db/backends/oracle/base.py b/django/db/backends/oracle/base.py index 0f32407638..2bc88bb7b9 100644 --- a/django/db/backends/oracle/base.py +++ b/django/db/backends/oracle/base.py @@ -12,6 +12,7 @@ except ImportError, e: raise ImproperlyConfigured, "Error loading cx_Oracle module: %s" % e DatabaseError = Database.Error +IntegrityError = Database.IntegrityError try: # Only exists in Python 2.4+ diff --git a/django/db/backends/postgresql/base.py b/django/db/backends/postgresql/base.py index 0dab19ba0d..dc0fbe3ab9 100644 --- a/django/db/backends/postgresql/base.py +++ b/django/db/backends/postgresql/base.py @@ -12,6 +12,7 @@ except ImportError, e: raise ImproperlyConfigured, "Error loading psycopg module: %s" % e DatabaseError = Database.DatabaseError +IntegrityError = Database.IntegrityError try: # Only exists in Python 2.4+ @@ -47,7 +48,7 @@ class UnicodeCursorWrapper(object): return self.cursor.executemany(sql, new_param_list) def __getattr__(self, attr): - if self.__dict__.has_key(attr): + if attr in self.__dict__: return self.__dict__[attr] else: return getattr(self.cursor, attr) @@ -192,7 +193,7 @@ def get_sql_flush(style, tables, sequences): sql.append("%s %s %s %s %s %s;" % \ (style.SQL_KEYWORD('ALTER'), style.SQL_KEYWORD('SEQUENCE'), - style.SQL_FIELD('%s_%s_seq' % (table_name, column_name)), + style.SQL_FIELD(quote_name('%s_%s_seq' % (table_name, column_name))), style.SQL_KEYWORD('RESTART'), style.SQL_KEYWORD('WITH'), style.SQL_FIELD('1') @@ -203,7 +204,7 @@ def get_sql_flush(style, tables, sequences): sql.append("%s %s %s %s %s %s;" % \ (style.SQL_KEYWORD('ALTER'), style.SQL_KEYWORD('SEQUENCE'), - style.SQL_FIELD('%s_id_seq' % table_name), + style.SQL_FIELD(quote_name('%s_id_seq' % table_name)), style.SQL_KEYWORD('RESTART'), style.SQL_KEYWORD('WITH'), style.SQL_FIELD('1') diff --git a/django/db/backends/postgresql_psycopg2/base.py b/django/db/backends/postgresql_psycopg2/base.py index 58e232df68..d6f34f1fe1 100644 --- a/django/db/backends/postgresql_psycopg2/base.py +++ b/django/db/backends/postgresql_psycopg2/base.py @@ -12,6 +12,7 @@ except ImportError, e: raise ImproperlyConfigured, "Error loading psycopg2 module: %s" % e DatabaseError = Database.DatabaseError +IntegrityError = Database.IntegrityError try: # Only exists in Python 2.4+ @@ -149,7 +150,7 @@ def get_sql_flush(style, tables, sequences): sql.append("%s %s %s %s %s %s;" % \ (style.SQL_KEYWORD('ALTER'), style.SQL_KEYWORD('SEQUENCE'), - style.SQL_FIELD('%s_%s_seq' % (table_name, column_name)), + style.SQL_FIELD(quote_name('%s_%s_seq' % (table_name, column_name))), style.SQL_KEYWORD('RESTART'), style.SQL_KEYWORD('WITH'), style.SQL_FIELD('1') @@ -160,7 +161,7 @@ def get_sql_flush(style, tables, sequences): sql.append("%s %s %s %s %s %s;" % \ (style.SQL_KEYWORD('ALTER'), style.SQL_KEYWORD('SEQUENCE'), - style.SQL_FIELD('%s_id_seq' % table_name), + style.SQL_FIELD(quote_name('%s_id_seq' % table_name)), style.SQL_KEYWORD('RESTART'), style.SQL_KEYWORD('WITH'), style.SQL_FIELD('1') diff --git a/django/db/backends/sqlite3/base.py b/django/db/backends/sqlite3/base.py index ec0f715491..d8e1336a9a 100644 --- a/django/db/backends/sqlite3/base.py +++ b/django/db/backends/sqlite3/base.py @@ -18,6 +18,7 @@ except ImportError, e: raise ImproperlyConfigured, "Error loading %s module: %s" % (module, e) DatabaseError = Database.DatabaseError +IntegrityError = Database.IntegrityError Database.register_converter("bool", lambda s: str(s) == '1') Database.register_converter("time", util.typecast_time) diff --git a/django/db/backends/util.py b/django/db/backends/util.py index d8f86fef4f..d14a337ca2 100644 --- a/django/db/backends/util.py +++ b/django/db/backends/util.py @@ -33,7 +33,7 @@ class CursorDebugWrapper(object): }) def __getattr__(self, attr): - if self.__dict__.has_key(attr): + if attr in self.__dict__: return self.__dict__[attr] else: return getattr(self.cursor, attr) diff --git a/django/db/models/__init__.py b/django/db/models/__init__.py index 01da0003fd..887ddc1e47 100644 --- a/django/db/models/__init__.py +++ b/django/db/models/__init__.py @@ -8,7 +8,6 @@ from django.db.models.manager import Manager from django.db.models.base import Model from django.db.models.fields import * from django.db.models.fields.related import ForeignKey, OneToOneField, ManyToManyField, ManyToOneRel, ManyToManyRel, OneToOneRel, TABULAR, STACKED -from django.db.models.fields.generic import GenericRelation, GenericRel, GenericForeignKey from django.db.models import signals from django.utils.functional import curry from django.utils.text import capfirst @@ -27,32 +26,3 @@ def permalink(func): viewname = bits[0] return reverse(bits[0], None, *bits[1:3]) return inner - -class LazyDate(object): - """ - Use in limit_choices_to to compare the field to dates calculated at run time - instead of when the model is loaded. For example:: - - ... limit_choices_to = {'date__gt' : models.LazyDate(days=-3)} ... - - which will limit the choices to dates greater than three days ago. - """ - def __init__(self, **kwargs): - self.delta = datetime.timedelta(**kwargs) - - def __str__(self): - return str(self.__get_value__()) - - def __repr__(self): - return "<LazyDate: %s>" % self.delta - - def __get_value__(self): - return (datetime.datetime.now() + self.delta).date() - - def __getattr__(self, attr): - if attr == 'delta': - # To fix ticket #3377. Note that normal accesses to LazyDate.delta - # (after construction) will still work, because they don't go - # through __getattr__). This is mainly needed for unpickling. - raise AttributeError - return getattr(self.__get_value__(), attr) diff --git a/django/db/models/base.py b/django/db/models/base.py index a5c559b6d7..899b1086c9 100644 --- a/django/db/models/base.py +++ b/django/db/models/base.py @@ -42,11 +42,11 @@ class ModelBase(type): new_class._meta.parents.append(base) new_class._meta.parents.extend(base._meta.parents) - model_module = sys.modules[new_class.__module__] if getattr(new_class._meta, 'app_label', None) is None: # Figure out the app_label by looking one level up. # For 'django.contrib.sites.models', this would be 'sites'. + model_module = sys.modules[new_class.__module__] new_class._meta.app_label = model_module.__name__.split('.')[-2] # Bail out early if we have already created this class. diff --git a/django/db/models/fields/__init__.py b/django/db/models/fields/__init__.py index ccbe6d858c..d1c6fa1a74 100644 --- a/django/db/models/fields/__init__.py +++ b/django/db/models/fields/__init__.py @@ -338,11 +338,13 @@ class Field(object): return self._choices choices = property(_get_choices) - def formfield(self, **kwargs): + def formfield(self, form_class=forms.CharField, **kwargs): "Returns a django.newforms.Field instance for this database Field." defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + if self.choices: + defaults['widget'] = forms.Select(choices=self.get_choices()) defaults.update(kwargs) - return forms.CharField(**defaults) + return form_class(**defaults) def value_from_object(self, obj): "Returns the value of this field in the given model instance." @@ -402,9 +404,9 @@ class BooleanField(Field): return [oldforms.CheckboxField] def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.BooleanField} defaults.update(kwargs) - return forms.BooleanField(**defaults) + return super(BooleanField, self).formfield(**defaults) class CharField(Field): def get_manipulator_field_objs(self): @@ -421,9 +423,9 @@ class CharField(Field): return str(value) def formfield(self, **kwargs): - defaults = {'max_length': self.maxlength, 'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'max_length': self.maxlength} defaults.update(kwargs) - return forms.CharField(**defaults) + return super(CharField, self).formfield(**defaults) # TODO: Maybe move this into contrib, because it's specialized. class CommaSeparatedIntegerField(CharField): @@ -499,9 +501,9 @@ class DateField(Field): return {self.attname: (val is not None and val.strftime("%Y-%m-%d") or '')} def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.DateField} defaults.update(kwargs) - return forms.DateField(**defaults) + return super(DateField, self).formfield(**defaults) class DateTimeField(DateField): def to_python(self, value): @@ -564,9 +566,9 @@ class DateTimeField(DateField): time_field: (val is not None and val.strftime("%H:%M:%S") or '')} def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.DateTimeField} defaults.update(kwargs) - return forms.DateTimeField(**defaults) + return super(DateTimeField, self).formfield(**defaults) class EmailField(CharField): def __init__(self, *args, **kwargs): @@ -583,9 +585,9 @@ class EmailField(CharField): validators.isValidEmail(field_data, all_data) def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.EmailField} defaults.update(kwargs) - return forms.EmailField(**defaults) + return super(EmailField, self).formfield(**defaults) class FileField(Field): def __init__(self, verbose_name=None, name=None, upload_to='', **kwargs): @@ -720,9 +722,9 @@ class IntegerField(Field): return [oldforms.IntegerField] def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.IntegerField} defaults.update(kwargs) - return forms.IntegerField(**defaults) + return super(IntegerField, self).formfield(**defaults) class IPAddressField(Field): def __init__(self, *args, **kwargs): @@ -764,9 +766,9 @@ class PhoneNumberField(IntegerField): def formfield(self, **kwargs): from django.contrib.localflavor.us.forms import USPhoneNumberField - defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': USPhoneNumberField} defaults.update(kwargs) - return USPhoneNumberField(**defaults) + return super(PhoneNumberField, self).formfield(**defaults) class PositiveIntegerField(IntegerField): def get_manipulator_field_objs(self): @@ -781,7 +783,7 @@ class SlugField(Field): kwargs['maxlength'] = kwargs.get('maxlength', 50) kwargs.setdefault('validator_list', []).append(validators.isSlug) # Set db_index=True unless it's been set manually. - if not kwargs.has_key('db_index'): + if 'db_index' not in kwargs: kwargs['db_index'] = True Field.__init__(self, *args, **kwargs) @@ -797,9 +799,9 @@ class TextField(Field): return [oldforms.LargeTextField] def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'widget': forms.Textarea, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'widget': forms.Textarea} defaults.update(kwargs) - return forms.CharField(**defaults) + return super(TextField, self).formfield(**defaults) class TimeField(Field): empty_strings_allowed = False @@ -842,9 +844,9 @@ class TimeField(Field): return {self.attname: (val is not None and val.strftime("%H:%M:%S") or '')} def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.TimeField} defaults.update(kwargs) - return forms.TimeField(**defaults) + return super(TimeField, self).formfield(**defaults) class URLField(CharField): def __init__(self, verbose_name=None, name=None, verify_exists=True, **kwargs): @@ -861,14 +863,20 @@ class URLField(CharField): return "CharField" def formfield(self, **kwargs): - defaults = {'required': not self.blank, 'verify_exists': self.verify_exists, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.URLField, 'verify_exists': self.verify_exists} defaults.update(kwargs) - return forms.URLField(**defaults) + return super(URLField, self).formfield(**defaults) class USStateField(Field): def get_manipulator_field_objs(self): return [oldforms.USStateField] + def formfield(self, **kwargs): + from django.contrib.localflavor.us.forms import USStateSelect + defaults = {'widget': USStateSelect} + defaults.update(kwargs) + return super(USStateField, self).formfield(**defaults) + class XMLField(TextField): def __init__(self, verbose_name=None, name=None, schema_path=None, **kwargs): self.schema_path = schema_path diff --git a/django/db/models/fields/related.py b/django/db/models/fields/related.py index da1de80c53..1b5716eb00 100644 --- a/django/db/models/fields/related.py +++ b/django/db/models/fields/related.py @@ -474,7 +474,7 @@ class ForeignKey(RelatedField, Field): to_field = to_field or to._meta.pk.name kwargs['verbose_name'] = kwargs.get('verbose_name', '') - if kwargs.has_key('edit_inline_type'): + if 'edit_inline_type' in kwargs: import warnings warnings.warn("edit_inline_type is deprecated. Use edit_inline instead.") kwargs['edit_inline'] = kwargs.pop('edit_inline_type') @@ -545,9 +545,9 @@ class ForeignKey(RelatedField, Field): setattr(cls, related.get_accessor_name(), ForeignRelatedObjectsDescriptor(related)) def formfield(self, **kwargs): - defaults = {'queryset': self.rel.to._default_manager.all(), 'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.ModelChoiceField, 'queryset': self.rel.to._default_manager.all()} defaults.update(kwargs) - return forms.ModelChoiceField(**defaults) + return super(ForeignKey, self).formfield(**defaults) class OneToOneField(RelatedField, IntegerField): def __init__(self, to, to_field=None, **kwargs): @@ -559,7 +559,7 @@ class OneToOneField(RelatedField, IntegerField): to_field = to_field or to._meta.pk.name kwargs['verbose_name'] = kwargs.get('verbose_name', '') - if kwargs.has_key('edit_inline_type'): + if 'edit_inline_type' in kwargs: import warnings warnings.warn("edit_inline_type is deprecated. Use edit_inline instead.") kwargs['edit_inline'] = kwargs.pop('edit_inline_type') @@ -606,9 +606,9 @@ class OneToOneField(RelatedField, IntegerField): cls._meta.one_to_one_field = self def formfield(self, **kwargs): - defaults = {'queryset': self.rel.to._default_manager.all(), 'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} + defaults = {'form_class': forms.ModelChoiceField, 'queryset': self.rel.to._default_manager.all()} defaults.update(kwargs) - return forms.ModelChoiceField(**defaults) + return super(OneToOneField, self).formfield(**defaults) class ManyToManyField(RelatedField, Field): def __init__(self, to, **kwargs): @@ -712,13 +712,13 @@ class ManyToManyField(RelatedField, Field): return getattr(obj, self.attname).all() def formfield(self, **kwargs): + defaults = {'form_class': forms.ModelMultipleChoiceField, 'queryset': self.rel.to._default_manager.all()} + defaults.update(kwargs) # If initial is passed in, it's a list of related objects, but the # MultipleChoiceField takes a list of IDs. - if kwargs.get('initial') is not None: - kwargs['initial'] = [i._get_pk_val() for i in kwargs['initial']] - defaults = {'queryset' : self.rel.to._default_manager.all(), 'required': not self.blank, 'label': capfirst(self.verbose_name), 'help_text': self.help_text} - defaults.update(kwargs) - return forms.ModelMultipleChoiceField(**defaults) + if defaults.get('initial') is not None: + defaults['initial'] = [i._get_pk_val() for i in defaults['initial']] + return super(ManyToManyField, self).formfield(**defaults) class ManyToOneRel(object): def __init__(self, to, field_name, num_in_admin=3, min_num_in_admin=None, diff --git a/django/db/models/loading.py b/django/db/models/loading.py index f4aff2438b..224f5e8451 100644 --- a/django/db/models/loading.py +++ b/django/db/models/loading.py @@ -103,7 +103,7 @@ def register_models(app_label, *models): # in the _app_models dictionary model_name = model._meta.object_name.lower() model_dict = _app_models.setdefault(app_label, {}) - if model_dict.has_key(model_name): + if model_name in model_dict: # The same model may be imported via different paths (e.g. # appname.models and project.appname.models). We use the source # filename as a means to detect identity. diff --git a/django/db/models/options.py b/django/db/models/options.py index 8e798364bf..d75bfd495d 100644 --- a/django/db/models/options.py +++ b/django/db/models/options.py @@ -139,7 +139,7 @@ class Options(object): def get_follow(self, override=None): follow = {} for f in self.fields + self.many_to_many + self.get_all_related_objects(): - if override and override.has_key(f.name): + if override and f.name in override: child_override = override[f.name] else: child_override = None @@ -181,7 +181,7 @@ class Options(object): # TODO: follow if not hasattr(self, '_field_types'): self._field_types = {} - if not self._field_types.has_key(field_type): + if field_type not in self._field_types: try: # First check self.fields. for f in self.fields: diff --git a/django/db/models/query.py b/django/db/models/query.py index e01905551e..08a7901d6f 100644 --- a/django/db/models/query.py +++ b/django/db/models/query.py @@ -1,9 +1,9 @@ from django.db import backend, connection, transaction from django.db.models.fields import DateField, FieldDoesNotExist -from django.db.models.fields.generic import GenericRelation -from django.db.models import signals +from django.db.models import signals, loading from django.dispatch import dispatcher from django.utils.datastructures import SortedDict +from django.contrib.contenttypes import generic import operator import re @@ -189,7 +189,7 @@ class QuerySet(object): raise StopIteration for row in rows: if fill_cache: - obj, index_end = get_cached_row(klass=self.model, row=row, + obj, index_end = get_cached_row(klass=self.model, row=row, index_start=0, max_depth=self._max_related_depth) else: obj = self.model(*row[:index_end]) @@ -201,14 +201,14 @@ class QuerySet(object): """ Performs a SELECT COUNT() and returns the number of records as an integer. - + If the queryset is already cached (i.e. self._result_cache is set) this simply returns the length of the cached results set to avoid multiple SELECT COUNT(*) calls. """ if self._result_cache is not None: return len(self._result_cache) - + counter = self._clone() counter._order_by = () counter._select_related = False @@ -488,9 +488,9 @@ class QuerySet(object): # Add additional tables and WHERE clauses based on select_related. if self._select_related: - fill_table_cache(opts, select, tables, where, - old_prefix=opts.db_table, - cache_tables_seen=[opts.db_table], + fill_table_cache(opts, select, tables, where, + old_prefix=opts.db_table, + cache_tables_seen=[opts.db_table], max_depth=self._max_related_depth) # Add any additional SELECTs. @@ -738,11 +738,11 @@ def get_where_clause(lookup_type, table_prefix, field_name, value): def get_cached_row(klass, row, index_start, max_depth=0, cur_depth=0): """Helper function that recursively returns an object with cache filled""" - + # If we've got a max_depth set and we've exceeded that depth, bail now. if max_depth and cur_depth > max_depth: return None - + index_end = index_start + len(klass._meta.fields) obj = klass(*row[index_start:index_end]) for f in klass._meta.fields: @@ -758,11 +758,11 @@ def fill_table_cache(opts, select, tables, where, old_prefix, cache_tables_seen, Helper function that recursively populates the select, tables and where (in place) for select_related queries. """ - + # If we've got a max_depth set and we've exceeded that depth, bail now. if max_depth and cur_depth > max_depth: return None - + qn = backend.quote_name for f in opts.fields: if f.rel and not f.null: @@ -827,6 +827,8 @@ def parse_lookup(kwarg_items, opts): # all uses of None as a query value. if lookup_type != 'exact': raise ValueError, "Cannot use None as a query value" + elif callable(value): + value = value() joins2, where2, params2 = lookup_inner(path, lookup_type, value, opts, opts.db_table, None) joins.update(joins2) @@ -851,6 +853,13 @@ def find_field(name, field_list, related_query): return None return matches[0] +def field_choices(field_list, related_query): + if related_query: + choices = [f.field.related_query_name() for f in field_list] + else: + choices = [f.name for f in field_list] + return choices + def lookup_inner(path, lookup_type, value, opts, table, column): qn = backend.quote_name joins, where, params = SortedDict(), [], [] @@ -935,7 +944,11 @@ def lookup_inner(path, lookup_type, value, opts, table, column): except FieldFound: # Match found, loop has been shortcut. pass else: # No match found. - raise TypeError, "Cannot resolve keyword '%s' into field" % name + choices = field_choices(current_opts.many_to_many, False) + \ + field_choices(current_opts.get_all_related_many_to_many_objects(), True) + \ + field_choices(current_opts.get_all_related_objects(), True) + \ + field_choices(current_opts.fields, False) + raise TypeError, "Cannot resolve keyword '%s' into field. Choices are: %s" % (name, ", ".join(choices)) # Check whether an intermediate join is required between current_table # and new_table. @@ -1028,7 +1041,7 @@ def delete_objects(seen_objs): pk_list = [pk for pk,instance in seen_objs[cls]] for related in cls._meta.get_all_related_many_to_many_objects(): - if not isinstance(related.field, GenericRelation): + if not isinstance(related.field, generic.GenericRelation): for offset in range(0, len(pk_list), GET_ITERATOR_CHUNK_SIZE): cursor.execute("DELETE FROM %s WHERE %s IN (%s)" % \ (qn(related.field.m2m_db_table()), @@ -1036,7 +1049,7 @@ def delete_objects(seen_objs): ','.join(['%s' for pk in pk_list[offset:offset+GET_ITERATOR_CHUNK_SIZE]])), pk_list[offset:offset+GET_ITERATOR_CHUNK_SIZE]) for f in cls._meta.many_to_many: - if isinstance(f, GenericRelation): + if isinstance(f, generic.GenericRelation): from django.contrib.contenttypes.models import ContentType query_extra = 'AND %s=%%s' % f.rel.to._meta.get_field(f.content_type_field_name).column args_extra = [ContentType.objects.get_for_model(cls).id] diff --git a/django/db/transaction.py b/django/db/transaction.py index 4a0658e1c3..bb90713525 100644 --- a/django/db/transaction.py +++ b/django/db/transaction.py @@ -46,12 +46,12 @@ def enter_transaction_management(): when no current block is running). """ thread_ident = thread.get_ident() - if state.has_key(thread_ident) and state[thread_ident]: + if thread_ident in state and state[thread_ident]: state[thread_ident].append(state[thread_ident][-1]) else: state[thread_ident] = [] state[thread_ident].append(settings.TRANSACTIONS_MANAGED) - if not dirty.has_key(thread_ident): + if thread_ident not in dirty: dirty[thread_ident] = False def leave_transaction_management(): @@ -61,7 +61,7 @@ def leave_transaction_management(): those from outside. (Commits are on connection level.) """ thread_ident = thread.get_ident() - if state.has_key(thread_ident) and state[thread_ident]: + if thread_ident in state and state[thread_ident]: del state[thread_ident][-1] else: raise TransactionManagementError("This code isn't under transaction management") @@ -84,7 +84,7 @@ def set_dirty(): changes waiting for commit. """ thread_ident = thread.get_ident() - if dirty.has_key(thread_ident): + if thread_ident in dirty: dirty[thread_ident] = True else: raise TransactionManagementError("This code isn't under transaction management") @@ -96,7 +96,7 @@ def set_clean(): should happen. """ thread_ident = thread.get_ident() - if dirty.has_key(thread_ident): + if thread_ident in dirty: dirty[thread_ident] = False else: raise TransactionManagementError("This code isn't under transaction management") @@ -106,7 +106,7 @@ def is_managed(): Checks whether the transaction manager is in manual or in auto state. """ thread_ident = thread.get_ident() - if state.has_key(thread_ident): + if thread_ident in state: if state[thread_ident]: return state[thread_ident][-1] return settings.TRANSACTIONS_MANAGED diff --git a/django/http/__init__.py b/django/http/__init__.py index ed2c128a16..74a4eff55c 100644 --- a/django/http/__init__.py +++ b/django/http/__init__.py @@ -29,12 +29,12 @@ class HttpRequest(object): def __getitem__(self, key): for d in (self.POST, self.GET): - if d.has_key(key): + if key in d: return d[key] raise KeyError, "%s not found in either POST or GET" % key def has_key(self, key): - return self.GET.has_key(key) or self.POST.has_key(key) + return key in self.GET or key in self.POST def get_full_path(self): return '' @@ -57,7 +57,7 @@ def parse_file_upload(header_dict, post_data): # name_dict is something like {'name': 'file', 'filename': 'test.txt'} for file uploads # or {'name': 'blah'} for POST fields # We assume all uploaded files have a 'filename' set. - if name_dict.has_key('filename'): + if 'filename' in name_dict: assert type([]) != type(submessage.get_payload()), "Nested MIME messages are not supported" if not name_dict['filename'].strip(): continue @@ -66,7 +66,7 @@ def parse_file_upload(header_dict, post_data): filename = name_dict['filename'][name_dict['filename'].rfind("\\")+1:] FILES.appendlist(name_dict['name'], { 'filename': filename, - 'content-type': (submessage.has_key('Content-Type') and submessage['Content-Type'] or None), + 'content-type': 'Content-Type' in submessage and submessage['Content-Type'] or None, 'content': submessage.get_payload(), }) else: @@ -91,6 +91,10 @@ class QueryDict(MultiValueDict): self._assert_mutable() MultiValueDict.__setitem__(self, key, value) + def __delitem__(self, key): + self._assert_mutable() + super(QueryDict, self).__delitem__(key) + def __copy__(self): result = self.__class__('', mutable=True) for key, value in dict.items(self): diff --git a/django/middleware/common.py b/django/middleware/common.py index 6283214fad..2c72c9a583 100644 --- a/django/middleware/common.py +++ b/django/middleware/common.py @@ -25,7 +25,7 @@ class CommonMiddleware(object): """ # Check for denied User-Agents - if request.META.has_key('HTTP_USER_AGENT'): + if 'HTTP_USER_AGENT' in request.META: for user_agent_regex in settings.DISALLOWED_USER_AGENTS: if user_agent_regex.search(request.META['HTTP_USER_AGENT']): return http.HttpResponseForbidden('<h1>Forbidden</h1>') @@ -66,8 +66,10 @@ class CommonMiddleware(object): path = request.get_full_path() if referer and not _is_ignorable_404(path) and (is_internal or '?' not in referer): ua = request.META.get('HTTP_USER_AGENT', '<none>') + ip = request.META.get('REMOTE_ADDR', '<none>') mail_managers("Broken %slink on %s" % ((is_internal and 'INTERNAL ' or ''), domain), - "Referrer: %s\nRequested URL: %s\nUser agent: %s\n" % (referer, request.get_full_path(), ua)) + "Referrer: %s\nRequested URL: %s\nUser agent: %s\nIP address: %s\n" \ + % (referer, request.get_full_path(), ua, ip)) return response # Use ETags, if requested. diff --git a/django/newforms/fields.py b/django/newforms/fields.py index c3b74e93f7..509c099e86 100644 --- a/django/newforms/fields.py +++ b/django/newforms/fields.py @@ -332,7 +332,9 @@ class NullBooleanField(BooleanField): return {True: True, False: False}.get(value, None) class ChoiceField(Field): - def __init__(self, choices=(), required=True, widget=Select, label=None, initial=None, help_text=None): + widget = Select + + def __init__(self, choices=(), required=True, widget=None, label=None, initial=None, help_text=None): super(ChoiceField, self).__init__(required, widget, label, initial, help_text) self.choices = choices @@ -364,9 +366,7 @@ class ChoiceField(Field): class MultipleChoiceField(ChoiceField): hidden_widget = MultipleHiddenInput - - def __init__(self, choices=(), required=True, widget=SelectMultiple, label=None, initial=None, help_text=None): - super(MultipleChoiceField, self).__init__(choices, required, widget, label, initial, help_text) + widget = SelectMultiple def clean(self, value): """ @@ -457,7 +457,7 @@ class MultiValueField(Field): for i, field in enumerate(self.fields): try: field_value = value[i] - except KeyError: + except IndexError: field_value = None if self.required and field_value in EMPTY_VALUES: raise ValidationError(gettext(u'This field is required.')) diff --git a/django/newforms/forms.py b/django/newforms/forms.py index 2d7a65d7fe..42a06fd00d 100644 --- a/django/newforms/forms.py +++ b/django/newforms/forms.py @@ -122,7 +122,14 @@ class BaseForm(StrAndUnicode): else: if errors_on_separate_row and bf_errors: output.append(error_row % bf_errors) - label = bf.label and bf.label_tag(escape(bf.label + ':')) or '' + if bf.label: + label = escape(bf.label) + # Only add a colon if the label does not end in punctuation. + if label[-1] not in ':?.!': + label += ':' + label = bf.label_tag(label) or '' + else: + label = '' if field.help_text: help_text = help_text_html % field.help_text else: @@ -262,7 +269,7 @@ class BoundField(StrAndUnicode): def as_widget(self, widget, attrs=None): attrs = attrs or {} auto_id = self.auto_id - if auto_id and not attrs.has_key('id') and not widget.attrs.has_key('id'): + if auto_id and 'id' not in attrs and 'id' not in widget.attrs: attrs['id'] = auto_id if not self.form.is_bound: data = self.form.initial.get(self.name, self.field.initial) diff --git a/django/newforms/widgets.py b/django/newforms/widgets.py index f701faa35d..dd71ebc455 100644 --- a/django/newforms/widgets.py +++ b/django/newforms/widgets.py @@ -230,7 +230,7 @@ class RadioInput(StrAndUnicode): return self.value == self.choice_value def tag(self): - if self.attrs.has_key('id'): + if 'id' in self.attrs: self.attrs['id'] = '%s_%s' % (self.attrs['id'], self.index) final_attrs = dict(self.attrs, type='radio', name=self.name, value=self.choice_value) if self.is_checked(): @@ -260,8 +260,8 @@ class RadioSelect(Select): "Returns a RadioFieldRenderer instance rather than a Unicode string." if value is None: value = '' str_value = smart_unicode(value) # Normalize to string. - attrs = attrs or {} - return RadioFieldRenderer(name, str_value, attrs, list(chain(self.choices, choices))) + final_attrs = self.build_attrs(attrs) + return RadioFieldRenderer(name, str_value, final_attrs, list(chain(self.choices, choices))) def id_for_label(self, id_): # RadioSelect is represented by multiple <input type="radio"> fields, @@ -276,7 +276,7 @@ class RadioSelect(Select): class CheckboxSelectMultiple(SelectMultiple): def render(self, name, value, attrs=None, choices=()): if value is None: value = [] - has_id = attrs and attrs.has_key('id') + has_id = attrs and 'id' in attrs final_attrs = self.build_attrs(attrs, name=name) output = [u'<ul>'] str_values = set([smart_unicode(v) for v in value]) # Normalize to strings. @@ -327,16 +327,27 @@ class MultiWidget(Widget): if not isinstance(value, list): value = self.decompress(value) output = [] + final_attrs = self.build_attrs(attrs) + id_ = final_attrs.get('id', None) for i, widget in enumerate(self.widgets): try: widget_value = value[i] - except KeyError: + except IndexError: widget_value = None - output.append(widget.render(name + '_%s' % i, widget_value, attrs)) + if id_: + final_attrs = dict(final_attrs, id='%s_%s' % (id_, i)) + output.append(widget.render(name + '_%s' % i, widget_value, final_attrs)) return self.format_output(output) + def id_for_label(self, id_): + # See the comment for RadioSelect.id_for_label() + if id_: + id_ += '_0' + return id_ + id_for_label = classmethod(id_for_label) + def value_from_datadict(self, data, name): - return [data.get(name + '_%s' % i) for i in range(len(self.widgets))] + return [widget.value_from_datadict(data, name + '_%s' % i) for i, widget in enumerate(self.widgets)] def format_output(self, rendered_widgets): return u''.join(rendered_widgets) diff --git a/django/oldforms/__init__.py b/django/oldforms/__init__.py index 873bd0204a..0a4676ee8f 100644 --- a/django/oldforms/__init__.py +++ b/django/oldforms/__init__.py @@ -329,7 +329,7 @@ class FormField(object): def convert_post_data(self, new_data): name = self.get_member_name() - if new_data.has_key(self.field_name): + if self.field_name in new_data: d = new_data.getlist(self.field_name) try: converted_data = [self.__class__.html2python(data) for data in d] diff --git a/django/template/__init__.py b/django/template/__init__.py index 0d8990a42b..9811a5649d 100644 --- a/django/template/__init__.py +++ b/django/template/__init__.py @@ -99,6 +99,10 @@ libraries = {} # global list of libraries to load by default for a new parser builtins = [] +# True if TEMPLATE_STRING_IF_INVALID contains a format string (%s). None means +# uninitialised. +invalid_var_format_string = None + class TemplateSyntaxError(Exception): def __str__(self): try: @@ -123,10 +127,10 @@ class VariableDoesNotExist(Exception): def __init__(self, msg, params=()): self.msg = msg self.params = params - + def __str__(self): return self.msg % self.params - + class InvalidTemplateLibrary(Exception): pass @@ -193,18 +197,27 @@ class Lexer(object): def tokenize(self): "Return a list of tokens from a given template_string" - # remove all empty strings, because the regex has a tendency to add them - bits = filter(None, tag_re.split(self.template_string)) - return map(self.create_token, bits) + in_tag = False + result = [] + for bit in tag_re.split(self.template_string): + if bit: + result.append(self.create_token(bit, in_tag)) + in_tag = not in_tag + return result - def create_token(self,token_string): - "Convert the given token string into a new Token object and return it" - if token_string.startswith(VARIABLE_TAG_START): - token = Token(TOKEN_VAR, token_string[len(VARIABLE_TAG_START):-len(VARIABLE_TAG_END)].strip()) - elif token_string.startswith(BLOCK_TAG_START): - token = Token(TOKEN_BLOCK, token_string[len(BLOCK_TAG_START):-len(BLOCK_TAG_END)].strip()) - elif token_string.startswith(COMMENT_TAG_START): - token = Token(TOKEN_COMMENT, '') + def create_token(self, token_string, in_tag): + """ + Convert the given token string into a new Token object and return it. + If in_tag is True, we are processing something that matched a tag, + otherwise it should be treated as a literal string. + """ + if in_tag: + if token_string.startswith(VARIABLE_TAG_START): + token = Token(TOKEN_VAR, token_string[len(VARIABLE_TAG_START):-len(VARIABLE_TAG_END)].strip()) + elif token_string.startswith(BLOCK_TAG_START): + token = Token(TOKEN_BLOCK, token_string[len(BLOCK_TAG_START):-len(BLOCK_TAG_END)].strip()) + elif token_string.startswith(COMMENT_TAG_START): + token = Token(TOKEN_COMMENT, '') else: token = Token(TOKEN_TEXT, token_string) return token @@ -215,22 +228,22 @@ class DebugLexer(Lexer): def tokenize(self): "Return a list of tokens from a given template_string" - token_tups, upto = [], 0 + result, upto = [], 0 for match in tag_re.finditer(self.template_string): start, end = match.span() if start > upto: - token_tups.append( (self.template_string[upto:start], (upto, start)) ) + result.append(self.create_token(self.template_string[upto:start], (upto, start), False)) upto = start - token_tups.append( (self.template_string[start:end], (start,end)) ) + result.append(self.create_token(self.template_string[start:end], (start, end), True)) upto = end last_bit = self.template_string[upto:] if last_bit: - token_tups.append( (last_bit, (upto, upto + len(last_bit))) ) - return [self.create_token(tok, (self.origin, loc)) for tok, loc in token_tups] + result.append(self.create_token(last_bit, (upto, upto + len(last_bit)), False)) + return result - def create_token(self, token_string, source): - token = super(DebugLexer, self).create_token(token_string) - token.source = source + def create_token(self, token_string, source, in_tag): + token = super(DebugLexer, self).create_token(token_string, in_tag) + token.source = self.origin, source return token class Parser(object): @@ -338,7 +351,7 @@ class Parser(object): return FilterExpression(token, self) def find_filter(self, filter_name): - if self.filters.has_key(filter_name): + if filter_name in self.filters: return self.filters[filter_name] else: raise TemplateSyntaxError, "Invalid filter: '%s'" % filter_name @@ -555,7 +568,7 @@ class FilterExpression(object): filters.append( (filter_func,args)) upto = match.end() if upto != len(token): - raise TemplateSyntaxError, "Could not parse the remainder: %s" % token[upto:] + raise TemplateSyntaxError, "Could not parse the remainder: '%s' from '%s'" % (token[upto:], token) self.var, self.filters = var, filters def resolve(self, context, ignore_failures=False): @@ -566,6 +579,11 @@ class FilterExpression(object): obj = None else: if settings.TEMPLATE_STRING_IF_INVALID: + global invalid_var_format_string + if invalid_var_format_string is None: + invalid_var_format_string = '%s' in settings.TEMPLATE_STRING_IF_INVALID + if invalid_var_format_string: + return settings.TEMPLATE_STRING_IF_INVALID % self.var return settings.TEMPLATE_STRING_IF_INVALID else: obj = settings.TEMPLATE_STRING_IF_INVALID diff --git a/django/template/context.py b/django/template/context.py index 25397b0e1a..59650b05fe 100644 --- a/django/template/context.py +++ b/django/template/context.py @@ -35,7 +35,7 @@ class Context(object): def __getitem__(self, key): "Get a variable's value, starting at the current context and going upward" for d in self.dicts: - if d.has_key(key): + if key in d: return d[key] raise KeyError(key) @@ -45,7 +45,7 @@ class Context(object): def has_key(self, key): for d in self.dicts: - if d.has_key(key): + if key in d: return True return False @@ -54,7 +54,7 @@ class Context(object): def get(self, key, otherwise=None): for d in self.dicts: - if d.has_key(key): + if key in d: return d[key] return otherwise diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py index a025365c90..bbaceba24a 100644 --- a/django/template/defaultfilters.py +++ b/django/template/defaultfilters.py @@ -2,7 +2,7 @@ from django.template import resolve_variable, Library from django.conf import settings -from django.utils.translation import gettext +from django.utils.translation import gettext, ngettext import re import random as random_module @@ -517,12 +517,12 @@ def filesizeformat(bytes): return "0 bytes" if bytes < 1024: - return "%d byte%s" % (bytes, bytes != 1 and 's' or '') + return ngettext("%(size)d byte", "%(size)d bytes", bytes) % {'size': bytes} if bytes < 1024 * 1024: - return "%.1f KB" % (bytes / 1024) + return gettext("%.1f KB") % (bytes / 1024) if bytes < 1024 * 1024 * 1024: - return "%.1f MB" % (bytes / (1024 * 1024)) - return "%.1f GB" % (bytes / (1024 * 1024 * 1024)) + return gettext("%.1f MB") % (bytes / (1024 * 1024)) + return gettext("%.1f GB") % (bytes / (1024 * 1024 * 1024)) def pluralize(value, arg='s'): """ diff --git a/django/template/defaulttags.py b/django/template/defaulttags.py index 448ad8a50b..1ebb01442e 100644 --- a/django/template/defaulttags.py +++ b/django/template/defaulttags.py @@ -41,7 +41,10 @@ class FilterNode(Node): def render(self, context): output = self.nodelist.render(context) # apply filters - return self.filter_expr.resolve(Context({'var': output})) + context.update({'var': output}) + filtered = self.filter_expr.resolve(context) + context.pop() + return filtered class FirstOfNode(Node): def __init__(self, vars): @@ -84,7 +87,7 @@ class ForNode(Node): def render(self, context): nodelist = NodeList() - if context.has_key('forloop'): + if 'forloop' in context: parentloop = context['forloop'] else: parentloop = {} @@ -130,7 +133,7 @@ class IfChangedNode(Node): self._varlist = varlist def render(self, context): - if context.has_key('forloop') and context['forloop']['first']: + if 'forloop' in context and context['forloop']['first']: self._last_seen = None try: if self._varlist: @@ -429,7 +432,7 @@ def cycle(parser, token): name = args[1] if not hasattr(parser, '_namedCycleNodes'): raise TemplateSyntaxError("No named cycles in template: '%s' is not defined" % name) - if not parser._namedCycleNodes.has_key(name): + if name not in parser._namedCycleNodes: raise TemplateSyntaxError("Named cycle '%s' does not exist" % name) return parser._namedCycleNodes[name] @@ -908,7 +911,7 @@ def templatetag(parser, token): if len(bits) != 2: raise TemplateSyntaxError, "'templatetag' statement takes one argument" tag = bits[1] - if not TemplateTagNode.mapping.has_key(tag): + if tag not in TemplateTagNode.mapping: raise TemplateSyntaxError, "Invalid templatetag argument: '%s'. Must be one of: %s" % \ (tag, TemplateTagNode.mapping.keys()) return TemplateTagNode(tag) @@ -953,6 +956,7 @@ def url(parser, token): for arg in bits[2].split(','): if '=' in arg: k, v = arg.split('=', 1) + k = k.strip() kwargs[k] = parser.compile_filter(v) else: args.append(parser.compile_filter(arg)) @@ -990,7 +994,7 @@ def do_with(parser, token): """ Add a value to the context (inside of this block) for caching and easy access. - + For example:: {% with person.some_sql_method as total %} @@ -999,7 +1003,7 @@ def do_with(parser, token): """ bits = list(token.split_contents()) if len(bits) != 4 or bits[2] != "as": - raise TemplateSyntaxError, "%r expected format is 'value as name'" % tagname + raise TemplateSyntaxError, "%r expected format is 'value as name'" % bits[0] var = parser.compile_filter(bits[1]) name = bits[3] nodelist = parser.parse(('endwith',)) diff --git a/django/test/client.py b/django/test/client.py index 95d3b85922..c3110f02ec 100644 --- a/django/test/client.py +++ b/django/test/client.py @@ -1,12 +1,16 @@ +import datetime import sys from cStringIO import StringIO from urlparse import urlparse from django.conf import settings +from django.contrib.auth import authenticate, login +from django.contrib.sessions.models import Session +from django.contrib.sessions.middleware import SessionWrapper from django.core.handlers.base import BaseHandler from django.core.handlers.wsgi import WSGIRequest from django.core.signals import got_request_exception from django.dispatch import dispatcher -from django.http import urlencode, SimpleCookie +from django.http import urlencode, SimpleCookie, HttpRequest from django.test import signals from django.utils.functional import curry @@ -113,7 +117,6 @@ class Client: self.handler = ClientHandler() self.defaults = defaults self.cookies = SimpleCookie() - self.session = {} self.exc_info = None def store_exc_info(self, *args, **kwargs): @@ -123,6 +126,15 @@ class Client: """ self.exc_info = sys.exc_info() + def _session(self): + "Obtain the current session variables" + if 'django.contrib.sessions' in settings.INSTALLED_APPS: + cookie = self.cookies.get(settings.SESSION_COOKIE_NAME, None) + if cookie: + return SessionWrapper(cookie.value) + return {} + session = property(_session) + def request(self, **request): """ The master request method. Composes the environment dictionary @@ -171,16 +183,10 @@ class Client: if self.exc_info: raise self.exc_info[1], None, self.exc_info[2] - # Update persistent cookie and session data + # Update persistent cookie data if response.cookies: self.cookies.update(response.cookies) - if 'django.contrib.sessions' in settings.INSTALLED_APPS: - from django.contrib.sessions.middleware import SessionWrapper - cookie = self.cookies.get(settings.SESSION_COOKIE_NAME, None) - if cookie: - self.session = SessionWrapper(cookie.value) - return response def get(self, path, data={}, **extra): @@ -215,42 +221,34 @@ class Client: return self.request(**r) - def login(self, path, username, password, **extra): - """ - A specialized sequence of GET and POST to log into a view that - is protected by a @login_required access decorator. + def login(self, **credentials): + """Set the Client to appear as if it has sucessfully logged into a site. - path should be the URL of the page that is login protected. - - Returns the response from GETting the requested URL after - login is complete. Returns False if login process failed. + Returns True if login is possible; False if the provided credentials + are incorrect, or if the Sessions framework is not available. """ - # First, GET the page that is login protected. - # This page will redirect to the login page. - response = self.get(path) - if response.status_code != 302: - return False + user = authenticate(**credentials) + if user and 'django.contrib.sessions' in settings.INSTALLED_APPS: + obj = Session.objects.get_new_session_object() - _, _, login_path, _, data, _= urlparse(response['Location']) - next = data.split('=')[1] + # Create a fake request to store login details + request = HttpRequest() + request.session = SessionWrapper(obj.session_key) + login(request, user) - # Second, GET the login page; required to set up cookies - response = self.get(login_path, **extra) - if response.status_code != 200: - return False + # Set the cookie to represent the session + self.cookies[settings.SESSION_COOKIE_NAME] = obj.session_key + self.cookies[settings.SESSION_COOKIE_NAME]['max-age'] = None + self.cookies[settings.SESSION_COOKIE_NAME]['path'] = '/' + self.cookies[settings.SESSION_COOKIE_NAME]['domain'] = settings.SESSION_COOKIE_DOMAIN + self.cookies[settings.SESSION_COOKIE_NAME]['secure'] = settings.SESSION_COOKIE_SECURE or None + self.cookies[settings.SESSION_COOKIE_NAME]['expires'] = None - # Last, POST the login data. - form_data = { - 'username': username, - 'password': password, - 'next' : next, - } - response = self.post(login_path, data=form_data, **extra) + # Set the session values + Session.objects.save(obj.session_key, request.session._session, + datetime.datetime.now() + datetime.timedelta(seconds=settings.SESSION_COOKIE_AGE)) - # Login page should 302 redirect to the originally requested page - if (response.status_code != 302 or - urlparse(response['Location'])[2] != path): + return True + else: return False - - # Since we are logged in, request the actual page again - return self.get(path) +
\ No newline at end of file diff --git a/django/test/simple.py b/django/test/simple.py index fed6237929..cfaa09a0a4 100644 --- a/django/test/simple.py +++ b/django/test/simple.py @@ -49,9 +49,12 @@ def build_suite(app_module): pass else: # The module exists, so there must be an import error in the - # test module itself. We don't need the module; close the file - # handle returned by find_module. - mod[0].close() + # test module itself. We don't need the module; so if the + # module was a single file module (i.e., tests.py), close the file + # handle returned by find_module. Otherwise, the test module + # is a directory, and there is nothing to close. + if mod[0]: + mod[0].close() raise return suite diff --git a/django/test/testcases.py b/django/test/testcases.py index 2bfb9a733a..788e215ca1 100644 --- a/django/test/testcases.py +++ b/django/test/testcases.py @@ -1,8 +1,10 @@ import re, doctest, unittest +from urlparse import urlparse from django.db import transaction -from django.core import management +from django.core import management, mail from django.db.models import get_apps - +from django.test.client import Client + normalize_long_ints = lambda s: re.sub(r'(?<![\w])(\d+)L(?![\w])', '\\1', s) class OutputChecker(doctest.OutputChecker): @@ -31,20 +33,116 @@ class DocTestRunner(doctest.DocTestRunner): transaction.rollback_unless_managed() class TestCase(unittest.TestCase): - def install_fixtures(self): - """If the Test Case class has a 'fixtures' member, clear the database and - install the named fixtures at the start of each test. + def _pre_setup(self): + """Perform any pre-test setup. This includes: + * If the Test Case class has a 'fixtures' member, clearing the + database and installing the named fixtures at the start of each test. + * Clearing the mail test outbox. + """ management.flush(verbosity=0, interactive=False) if hasattr(self, 'fixtures'): management.load_data(self.fixtures, verbosity=0) - + mail.outbox = [] + def run(self, result=None): - """Wrapper around default run method so that user-defined Test Cases - automatically call install_fixtures without having to include a call to - super(). + """Wrapper around default run method to perform common Django test set up. + This means that user-defined Test Cases aren't required to include a call + to super().setUp(). """ - self.install_fixtures() + self.client = Client() + self._pre_setup() super(TestCase, self).run(result) + + def assertRedirects(self, response, expected_path, status_code=302, target_status_code=200): + """Assert that a response redirected to a specific URL, and that the + redirect URL can be loaded. + + """ + self.assertEqual(response.status_code, status_code, + "Response didn't redirect: Reponse code was %d (expected %d)" % + (response.status_code, status_code)) + scheme, netloc, path, params, query, fragment = urlparse(response['Location']) + self.assertEqual(path, expected_path, + "Response redirected to '%s', expected '%s'" % (path, expected_path)) + redirect_response = self.client.get(path) + self.assertEqual(redirect_response.status_code, target_status_code, + "Couldn't retrieve redirection page '%s': response code was %d (expected %d)" % + (path, response.status_code, status_code)) + + def assertContains(self, response, text, count=1, status_code=200): + """Assert that a response indicates that a page was retreived successfully, + (i.e., the HTTP status code was as expected), and that ``text`` occurs ``count`` + times in the content of the response. + + """ + self.assertEqual(response.status_code, status_code, + "Couldn't retrieve page: Response code was %d (expected %d)'" % + (response.status_code, status_code)) + real_count = response.content.count(text) + self.assertEqual(real_count, count, + "Found %d instances of '%s' in response (expected %d)" % (real_count, text, count)) + + def assertFormError(self, response, form, field, errors): + "Assert that a form used to render the response has a specific field error" + if not response.context: + self.fail('Response did not use any contexts to render the response') + + # If there is a single context, put it into a list to simplify processing + if not isinstance(response.context, list): + contexts = [response.context] + else: + contexts = response.context + + # If a single error string is provided, make it a list to simplify processing + if not isinstance(errors, list): + errors = [errors] + + # Search all contexts for the error. + found_form = False + for i,context in enumerate(contexts): + if form in context: + found_form = True + for err in errors: + if field: + if field in context[form].errors: + self.assertTrue(err in context[form].errors[field], + "The field '%s' on form '%s' in context %d does not contain the error '%s' (actual errors: %s)" % + (field, form, i, err, list(context[form].errors[field]))) + elif field in context[form].fields: + self.fail("The field '%s' on form '%s' in context %d contains no errors" % + (field, form, i)) + else: + self.fail("The form '%s' in context %d does not contain the field '%s'" % (form, i, field)) + else: + self.assertTrue(err in context[form].non_field_errors(), + "The form '%s' in context %d does not contain the non-field error '%s' (actual errors: %s)" % + (form, i, err, list(context[form].non_field_errors()))) + if not found_form: + self.fail("The form '%s' was not used to render the response" % form) + + def assertTemplateUsed(self, response, template_name): + "Assert that the template with the provided name was used in rendering the response" + if isinstance(response.template, list): + template_names = [t.name for t in response.template] + self.assertTrue(template_name in template_names, + "Template '%s' was not one of the templates used to render the response. Templates used: %s" % + (template_name, template_names)) + elif response.template: + self.assertEqual(template_name, response.template.name, + "Template '%s' was not used to render the response. Actual template was '%s'" % + (template_name, response.template.name)) + else: + self.fail('No templates used to render the response') + + def assertTemplateNotUsed(self, response, template_name): + "Assert that the template with the provided name was NOT used in rendering the response" + if isinstance(response.template, list): + self.assertFalse(template_name in [t.name for t in response.template], + "Template '%s' was used unexpectedly in rendering the response" % template_name) + elif response.template: + self.assertNotEqual(template_name, response.template.name, + "Template '%s' was used unexpectedly in rendering the response" % template_name) +
\ No newline at end of file diff --git a/django/test/utils.py b/django/test/utils.py index 9939e36fa4..aa2b8321be 100644 --- a/django/test/utils.py +++ b/django/test/utils.py @@ -1,7 +1,7 @@ import sys, time from django.conf import settings from django.db import connection, transaction, backend -from django.core import management +from django.core import management, mail from django.dispatch import dispatcher from django.test import signals from django.template import Template @@ -18,24 +18,54 @@ def instrumented_test_render(self, context): dispatcher.send(signal=signals.template_rendered, sender=self, template=self, context=context) return self.nodelist.render(context) +class TestSMTPConnection(object): + """A substitute SMTP connection for use during test sessions. + The test connection stores email messages in a dummy outbox, + rather than sending them out on the wire. + + """ + def __init__(*args, **kwargs): + pass + def open(self): + "Mock the SMTPConnection open() interface" + pass + def close(self): + "Mock the SMTPConnection close() interface" + pass + def send_messages(self, messages): + "Redirect messages to the dummy outbox" + mail.outbox.extend(messages) + def setup_test_environment(): """Perform any global pre-test setup. This involves: - Installing the instrumented test renderer + - Diverting the email sending functions to a test buffer """ Template.original_render = Template.render Template.render = instrumented_test_render + mail.original_SMTPConnection = mail.SMTPConnection + mail.SMTPConnection = TestSMTPConnection + + mail.outbox = [] + def teardown_test_environment(): """Perform any global post-test teardown. This involves: - Restoring the original test renderer + - Restoring the email sending functions """ Template.render = Template.original_render del Template.original_render + mail.SMTPConnection = mail.original_SMTPConnection + del mail.original_SMTPConnection + + del mail.outbox + def _set_autocommit(connection): "Make sure a connection is in autocommit mode." if hasattr(connection.connection, "autocommit"): diff --git a/django/utils/cache.py b/django/utils/cache.py index 5eba302ebe..c8031a409a 100644 --- a/django/utils/cache.py +++ b/django/utils/cache.py @@ -86,7 +86,7 @@ def patch_response_headers(response, cache_timeout=None): def add_never_cache_headers(response): """ - Add headers to a response to indicate that + Add headers to a response to indicate that a page should never be cached. """ patch_response_headers(response, cache_timeout=-1) diff --git a/django/utils/datastructures.py b/django/utils/datastructures.py index 7b7fa2b0f0..60bc0051a2 100644 --- a/django/utils/datastructures.py +++ b/django/utils/datastructures.py @@ -16,9 +16,9 @@ class MergeDict(object): def __contains__(self, key): return self.has_key(key) - - def __copy__(self): - return self.__class__(*self.dicts) + + def __copy__(self): + return self.__class__(*self.dicts) def get(self, key, default=None): try: @@ -42,12 +42,12 @@ class MergeDict(object): def has_key(self, key): for dict in self.dicts: - if dict.has_key(key): + if key in dict: return True return False - - def copy(self): - """ returns a copy of this object""" + + def copy(self): + """ returns a copy of this object""" return self.__copy__() class SortedDict(dict): @@ -99,6 +99,13 @@ class SortedDict(dict): obj.keyOrder = self.keyOrder return obj + def __repr__(self): + """ + Replaces the normal dict.__repr__ with a version that returns the keys + in their sorted order. + """ + return '{%s}' % ', '.join(['%r: %r' % (k, v) for k, v in self.items()]) + class MultiValueDictKeyError(KeyError): pass @@ -211,7 +218,7 @@ class MultiValueDict(dict): def update(self, *args, **kwargs): "update() extends rather than replaces existing key lists. Also accepts keyword args." if len(args) > 1: - raise TypeError, "update expected at most 1 arguments, got %d", len(args) + raise TypeError, "update expected at most 1 arguments, got %d" % len(args) if args: other_dict = args[0] if isinstance(other_dict, MultiValueDict): diff --git a/django/utils/feedgenerator.py b/django/utils/feedgenerator.py index 9397789d6a..aa315b5292 100644 --- a/django/utils/feedgenerator.py +++ b/django/utils/feedgenerator.py @@ -132,6 +132,7 @@ class RssFeed(SyndicationFeed): handler.addQuickElement(u"category", cat) if self.feed['feed_copyright'] is not None: handler.addQuickElement(u"copyright", self.feed['feed_copyright']) + handler.addQuickElement(u"lastBuildDate", rfc2822_date(self.latest_post_date()).decode('ascii')) self.write_items(handler) self.endChannelElement(handler) handler.endElement(u"rss") diff --git a/django/utils/functional.py b/django/utils/functional.py index e3c0a3c76b..0c31c1f375 100644 --- a/django/utils/functional.py +++ b/django/utils/functional.py @@ -42,7 +42,7 @@ def lazy(func, *resultclasses): res = self.__func(*self.__args, **self.__kw) return self.__dispatch[type(res)][funcname](res, *args, **kw) - if not self.__dispatch.has_key(klass): + if klass not in self.__dispatch: self.__dispatch[klass] = {} self.__dispatch[klass][funcname] = func return __wrapper__ diff --git a/django/utils/synch.py b/django/utils/synch.py index 6fcd81390e..2e808c1e01 100644 --- a/django/utils/synch.py +++ b/django/utils/synch.py @@ -1,6 +1,6 @@ """ Synchronization primitives: - + - reader-writer lock (preference to writers) (Contributed to Django by eugene@lazutkin.com) @@ -14,17 +14,16 @@ except ImportError: class RWLock: """ Classic implementation of reader-writer lock with preference to writers. - + Readers can access a resource simultaneously. Writers get an exclusive access. - + API is self-descriptive: reader_enters() reader_leaves() writer_enters() writer_leaves() """ - def __init__(self): self.mutex = threading.RLock() self.can_read = threading.Semaphore(0) @@ -33,7 +32,7 @@ class RWLock: self.active_writers = 0 self.waiting_readers = 0 self.waiting_writers = 0 - + def reader_enters(self): self.mutex.acquire() try: @@ -45,7 +44,7 @@ class RWLock: finally: self.mutex.release() self.can_read.acquire() - + def reader_leaves(self): self.mutex.acquire() try: @@ -56,7 +55,7 @@ class RWLock: self.can_write.release() finally: self.mutex.release() - + def writer_enters(self): self.mutex.acquire() try: @@ -68,7 +67,7 @@ class RWLock: finally: self.mutex.release() self.can_write.acquire() - + def writer_leaves(self): self.mutex.acquire() try: diff --git a/django/utils/timesince.py b/django/utils/timesince.py index e69c45c8c1..394f818395 100644 --- a/django/utils/timesince.py +++ b/django/utils/timesince.py @@ -1,6 +1,6 @@ import datetime, math, time from django.utils.tzinfo import LocalTimezone -from django.utils.translation import ngettext +from django.utils.translation import ngettext, gettext def timesince(d, now=None): """ @@ -37,14 +37,14 @@ def timesince(d, now=None): if count != 0: break if count < 0: - return '%d milliseconds' % math.floor((now - d).microseconds / 1000) - s = '%d %s' % (count, name(count)) + return gettext('%d milliseconds') % math.floor((now - d).microseconds / 1000) + s = gettext('%(number)d %(type)s') % {'number': count, 'type': name(count)} if i + 1 < len(chunks): # Now get the second item seconds2, name2 = chunks[i + 1] count2 = (since - (seconds * count)) / seconds2 if count2 != 0: - s += ', %d %s' % (count2, name2(count2)) + s += gettext(', %(number)d %(type)s') % {'number': count2, 'type': name2(count2)} return s def timeuntil(d, now=None): diff --git a/django/utils/translation/trans_real.py b/django/utils/translation/trans_real.py index 0c8dcd540f..293b4ef9cd 100644 --- a/django/utils/translation/trans_real.py +++ b/django/utils/translation/trans_real.py @@ -199,7 +199,7 @@ def deactivate(): will resolve against the default translation object, again. """ global _active - if _active.has_key(currentThread()): + if currentThread() in _active: del _active[currentThread()] def get_language(): diff --git a/django/views/debug.py b/django/views/debug.py index b49a98a864..2530350e26 100644 --- a/django/views/debug.py +++ b/django/views/debug.py @@ -90,11 +90,18 @@ def technical_500_response(request, exc_type, exc_value, tb): exc_type, exc_value, tb, template_info = get_template_exception_info(exc_type, exc_value, tb) frames = [] while tb is not None: + # support for __traceback_hide__ which is used by a few libraries + # to hide internal frames. + if tb.tb_frame.f_locals.get('__traceback_hide__'): + tb = tb.tb_next + continue filename = tb.tb_frame.f_code.co_filename function = tb.tb_frame.f_code.co_name lineno = tb.tb_lineno - 1 - pre_context_lineno, pre_context, context_line, post_context = _get_lines_from_file(filename, lineno, 7) - if pre_context_lineno: + loader = tb.tb_frame.f_globals.get('__loader__') + module_name = tb.tb_frame.f_globals.get('__name__') + pre_context_lineno, pre_context, context_line, post_context = _get_lines_from_file(filename, lineno, 7, loader, module_name) + if pre_context_lineno is not None: frames.append({ 'tb': tb, 'filename': filename, @@ -161,23 +168,34 @@ def empty_urlconf(request): }) return HttpResponseNotFound(t.render(c), mimetype='text/html') -def _get_lines_from_file(filename, lineno, context_lines): +def _get_lines_from_file(filename, lineno, context_lines, loader=None, module_name=None): """ Returns context_lines before and after lineno from file. Returns (pre_context_lineno, pre_context, context_line, post_context). """ - try: - source = open(filename).readlines() - lower_bound = max(0, lineno - context_lines) - upper_bound = lineno + context_lines + source = None + if loader is not None: + source = loader.get_source(module_name).splitlines() + else: + try: + f = open(filename) + try: + source = f.readlines() + finally: + f.close() + except (OSError, IOError): + pass + if source is None: + return None, [], None, [] - pre_context = [line.strip('\n') for line in source[lower_bound:lineno]] - context_line = source[lineno].strip('\n') - post_context = [line.strip('\n') for line in source[lineno+1:upper_bound]] + lower_bound = max(0, lineno - context_lines) + upper_bound = lineno + context_lines - return lower_bound, pre_context, context_line, post_context - except (OSError, IOError): - return None, [], None, [] + pre_context = [line.strip('\n') for line in source[lower_bound:lineno]] + context_line = source[lineno].strip('\n') + post_context = [line.strip('\n') for line in source[lineno+1:upper_bound]] + + return lower_bound, pre_context, context_line, post_context # # Templates are embedded in the file so that we know the error handler will @@ -314,7 +332,7 @@ TECHNICAL_500_TEMPLATE = """ </tr> <tr> <th>Exception Location:</th> - <td>{{ lastframe.filename }} in {{ lastframe.function }}, line {{ lastframe.lineno }}</td> + <td>{{ lastframe.filename|escape }} in {{ lastframe.function|escape }}, line {{ lastframe.lineno }}</td> </tr> </table> </div> @@ -361,7 +379,7 @@ TECHNICAL_500_TEMPLATE = """ <ul class="traceback"> {% for frame in frames %} <li class="frame"> - <code>{{ frame.filename }}</code> in <code>{{ frame.function }}</code> + <code>{{ frame.filename|escape }}</code> in <code>{{ frame.function|escape }}</code> {% if frame.context_line %} <div class="context" id="c{{ frame.id }}"> diff --git a/django/views/generic/simple.py b/django/views/generic/simple.py index 355bd25ef8..69a494931e 100644 --- a/django/views/generic/simple.py +++ b/django/views/generic/simple.py @@ -1,8 +1,8 @@ from django.shortcuts import render_to_response -from django.template import RequestContext +from django.template import loader, RequestContext from django.http import HttpResponse, HttpResponsePermanentRedirect, HttpResponseGone -def direct_to_template(request, template, extra_context={}, **kwargs): +def direct_to_template(request, template, extra_context={}, mimetype=None, **kwargs): """ Render a given template with any extra URL parameters in the context as ``{{ params }}``. @@ -13,7 +13,9 @@ def direct_to_template(request, template, extra_context={}, **kwargs): dictionary[key] = value() else: dictionary[key] = value - return render_to_response(template, dictionary, context_instance=RequestContext(request)) + c = RequestContext(request, dictionary) + t = loader.get_template(template) + return HttpResponse(t.render(c), mimetype=mimetype) def redirect_to(request, url, **kwargs): """ diff --git a/django/views/i18n.py b/django/views/i18n.py index 0a19cfe986..0fec6b6c6f 100644 --- a/django/views/i18n.py +++ b/django/views/i18n.py @@ -97,7 +97,7 @@ def javascript_catalog(request, domain='djangojs', packages=None): deliver your JavaScript source from Django templates. """ if request.GET: - if request.GET.has_key('language'): + if 'language' in request.GET: if check_for_language(request.GET['language']): activate(request.GET['language']) if packages is None: @@ -136,7 +136,7 @@ def javascript_catalog(request, domain='djangojs', packages=None): t.update(catalog._catalog) src = [LibHead] plural = None - if t.has_key(''): + if '' in t: for l in t[''].split('\n'): if l.startswith('Plural-Forms:'): plural = l.split(':',1)[1].strip() @@ -155,7 +155,7 @@ def javascript_catalog(request, domain='djangojs', packages=None): if type(k) in (str, unicode): csrc.append("catalog['%s'] = '%s';\n" % (javascript_quote(k), javascript_quote(v))) elif type(k) == tuple: - if not pdict.has_key(k[0]): + if k[0] not in pdict: pdict[k[0]] = k[1] else: pdict[k[0]] = max(k[1], pdict[k[0]]) |
