diff options
| author | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2007-11-29 20:38:41 +0000 |
|---|---|---|
| committer | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2007-11-29 20:38:41 +0000 |
| commit | dfe05d94b853073e2762250e1b4cd64ce9ef1df0 (patch) | |
| tree | 4e6aea30920e85556903dd67ca329fe69e9f2a7d /django | |
| parent | b43a0180322b42925c4c27b5ccdf2e876309c53b (diff) | |
queryset-refactor: Merged from trunk up to [6752].
git-svn-id: http://code.djangoproject.com/svn/django/branches/queryset-refactor@6753 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django')
22 files changed, 2634 insertions, 1331 deletions
diff --git a/django/conf/locale/en/LC_MESSAGES/django.po b/django/conf/locale/en/LC_MESSAGES/django.po index 7e36c6358c..a2dd52978b 100644 --- a/django/conf/locale/en/LC_MESSAGES/django.po +++ b/django/conf/locale/en/LC_MESSAGES/django.po @@ -7,86 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-04-05 01:32+1000\n" +"POT-Creation-Date: 2007-11-29 10:57-0600\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "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" -#: db/models/manipulators.py:307 -#, 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 -msgid "and" -msgstr "" - -#: db/models/fields/related.py:53 -#, python-format -msgid "Please enter a valid %s." -msgstr "" - -#: db/models/fields/related.py:642 -msgid "Separate multiple IDs with commas." -msgstr "" - -#: 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] "" - -#: db/models/fields/__init__.py:42 -#, python-format -msgid "%(optname)s with this %(fieldname)s already exists." -msgstr "" - -#: 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: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 "" - -#: db/models/fields/__init__.py:423 -msgid "This field cannot be null." -msgstr "" - -#: 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:526 core/validators.py:157 -msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." -msgstr "" - -#: 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 "" @@ -96,1088 +24,1171 @@ msgid "Bengali" msgstr "" #: conf/global_settings.py:41 -msgid "Catalan" +msgid "Bulgarian" msgstr "" #: conf/global_settings.py:42 -msgid "Czech" +msgid "Catalan" msgstr "" #: conf/global_settings.py:43 -msgid "Welsh" +msgid "Czech" msgstr "" #: conf/global_settings.py:44 -msgid "Danish" +msgid "Welsh" msgstr "" #: conf/global_settings.py:45 -msgid "German" +msgid "Danish" msgstr "" #: conf/global_settings.py:46 -msgid "Greek" +msgid "German" msgstr "" #: conf/global_settings.py:47 -msgid "English" +msgid "Greek" msgstr "" #: conf/global_settings.py:48 -msgid "Spanish" +msgid "English" msgstr "" #: conf/global_settings.py:49 -msgid "Argentinean Spanish" +msgid "Spanish" msgstr "" #: conf/global_settings.py:50 -msgid "Finnish" +msgid "Argentinean Spanish" msgstr "" #: conf/global_settings.py:51 -msgid "French" +msgid "Persian" msgstr "" #: conf/global_settings.py:52 -msgid "Galician" +msgid "Finnish" msgstr "" #: conf/global_settings.py:53 -msgid "Hungarian" +msgid "French" msgstr "" #: conf/global_settings.py:54 -msgid "Hebrew" +msgid "Gaeilge" msgstr "" #: conf/global_settings.py:55 -msgid "Icelandic" +msgid "Galician" msgstr "" #: conf/global_settings.py:56 -msgid "Italian" +msgid "Hungarian" msgstr "" #: conf/global_settings.py:57 -msgid "Japanese" +msgid "Hebrew" msgstr "" #: conf/global_settings.py:58 -msgid "Kannada" +msgid "Croatian" msgstr "" #: conf/global_settings.py:59 -msgid "Latvian" +msgid "Icelandic" msgstr "" #: conf/global_settings.py:60 -msgid "Macedonian" +msgid "Italian" msgstr "" #: conf/global_settings.py:61 -msgid "Dutch" +msgid "Japanese" msgstr "" #: conf/global_settings.py:62 -msgid "Norwegian" +msgid "Korean" msgstr "" #: conf/global_settings.py:63 -msgid "Polish" +msgid "Khmer" msgstr "" #: conf/global_settings.py:64 -msgid "Portugese" +msgid "Kannada" msgstr "" #: conf/global_settings.py:65 -msgid "Brazilian" +msgid "Latvian" msgstr "" #: conf/global_settings.py:66 -msgid "Romanian" +msgid "Macedonian" msgstr "" #: conf/global_settings.py:67 -msgid "Russian" +msgid "Dutch" msgstr "" #: conf/global_settings.py:68 -msgid "Slovak" +msgid "Norwegian" msgstr "" #: conf/global_settings.py:69 -msgid "Slovenian" +msgid "Polish" msgstr "" #: conf/global_settings.py:70 -msgid "Serbian" +msgid "Portugese" msgstr "" #: conf/global_settings.py:71 -msgid "Swedish" +msgid "Brazilian" msgstr "" #: conf/global_settings.py:72 -msgid "Tamil" +msgid "Romanian" msgstr "" #: conf/global_settings.py:73 -msgid "Telugu" +msgid "Russian" msgstr "" #: conf/global_settings.py:74 -msgid "Turkish" +msgid "Slovak" msgstr "" #: conf/global_settings.py:75 -msgid "Ukrainian" +msgid "Slovenian" msgstr "" #: conf/global_settings.py:76 -msgid "Simplified Chinese" +msgid "Serbian" msgstr "" #: conf/global_settings.py:77 -msgid "Traditional Chinese" +msgid "Swedish" 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" +#: conf/global_settings.py:78 +msgid "Tamil" msgstr "" -#: utils/dates.py:6 -msgid "Tuesday" +#: conf/global_settings.py:79 +msgid "Telugu" msgstr "" -#: utils/dates.py:6 -msgid "Wednesday" +#: conf/global_settings.py:80 +msgid "Turkish" msgstr "" -#: utils/dates.py:6 -msgid "Thursday" +#: conf/global_settings.py:81 +msgid "Ukrainian" msgstr "" -#: utils/dates.py:6 -msgid "Friday" +#: conf/global_settings.py:82 +msgid "Simplified Chinese" msgstr "" -#: utils/dates.py:7 -msgid "Saturday" +#: conf/global_settings.py:83 +msgid "Traditional Chinese" msgstr "" -#: utils/dates.py:7 -msgid "Sunday" +#: contrib/admin/filterspecs.py:44 +#, python-format +msgid "" +"<h3>By %s:</h3>\n" +"<ul>\n" msgstr "" -#: utils/dates.py:14 -msgid "January" +#: contrib/admin/filterspecs.py:74 contrib/admin/filterspecs.py:92 +#: contrib/admin/filterspecs.py:147 contrib/admin/filterspecs.py:173 +msgid "All" msgstr "" -#: utils/dates.py:14 -msgid "February" +#: contrib/admin/filterspecs.py:113 +msgid "Any date" msgstr "" -#: utils/dates.py:14 utils/dates.py:27 -msgid "March" +#: contrib/admin/filterspecs.py:114 +msgid "Today" msgstr "" -#: utils/dates.py:14 utils/dates.py:27 -msgid "April" +#: contrib/admin/filterspecs.py:117 +msgid "Past 7 days" msgstr "" -#: utils/dates.py:14 utils/dates.py:27 -msgid "May" +#: contrib/admin/filterspecs.py:119 +msgid "This month" msgstr "" -#: utils/dates.py:14 utils/dates.py:27 -msgid "June" +#: contrib/admin/filterspecs.py:121 +msgid "This year" msgstr "" -#: utils/dates.py:15 utils/dates.py:27 -msgid "July" +#: contrib/admin/filterspecs.py:147 newforms/widgets.py:231 +#: oldforms/__init__.py:592 +msgid "Yes" msgstr "" -#: utils/dates.py:15 -msgid "August" +#: contrib/admin/filterspecs.py:147 newforms/widgets.py:231 +#: oldforms/__init__.py:592 +msgid "No" msgstr "" -#: utils/dates.py:15 -msgid "September" +#: contrib/admin/filterspecs.py:154 newforms/widgets.py:231 +#: oldforms/__init__.py:592 +msgid "Unknown" msgstr "" -#: utils/dates.py:15 -msgid "October" +#: contrib/admin/models.py:18 +msgid "action time" msgstr "" -#: utils/dates.py:15 -msgid "November" +#: contrib/admin/models.py:21 +msgid "object id" msgstr "" -#: utils/dates.py:16 -msgid "December" +#: contrib/admin/models.py:22 +msgid "object repr" msgstr "" -#: utils/dates.py:19 -msgid "jan" +#: contrib/admin/models.py:23 +msgid "action flag" msgstr "" -#: utils/dates.py:19 -msgid "feb" +#: contrib/admin/models.py:24 +msgid "change message" msgstr "" -#: utils/dates.py:19 -msgid "mar" +#: contrib/admin/models.py:27 +msgid "log entry" msgstr "" -#: utils/dates.py:19 -msgid "apr" +#: contrib/admin/models.py:28 +msgid "log entries" msgstr "" -#: utils/dates.py:19 -msgid "may" +#: contrib/admin/templates/admin/404.html:4 +#: contrib/admin/templates/admin/404.html:8 +msgid "Page not found" msgstr "" -#: utils/dates.py:19 -msgid "jun" +#: contrib/admin/templates/admin/404.html:10 +msgid "We're sorry, but the requested page could not be found." msgstr "" -#: utils/dates.py:20 -msgid "jul" +#: contrib/admin/templates/admin/500.html:4 +#: contrib/admin/templates/admin/base.html:37 +#: contrib/admin/templates/admin/change_form.html:12 +#: contrib/admin/templates/admin/change_list.html:5 +#: contrib/admin/templates/admin/delete_confirmation.html:5 +#: contrib/admin/templates/admin/invalid_setup.html:4 +#: contrib/admin/templates/admin/object_history.html:4 +#: contrib/admin/templates/admin/auth/user/change_password.html:11 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +#: contrib/admin/templates/registration/logged_out.html:4 +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/registration/password_reset_done.html:4 +#: contrib/admin/templates/registration/password_reset_form.html:4 +msgid "Home" msgstr "" -#: utils/dates.py:20 -msgid "aug" +#: contrib/admin/templates/admin/500.html:4 +msgid "Server error" msgstr "" -#: utils/dates.py:20 -msgid "sep" +#: contrib/admin/templates/admin/500.html:6 +msgid "Server error (500)" msgstr "" -#: utils/dates.py:20 -msgid "oct" +#: contrib/admin/templates/admin/500.html:9 +msgid "Server Error <em>(500)</em>" msgstr "" -#: utils/dates.py:20 -msgid "nov" +#: 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 "" -#: utils/dates.py:20 -msgid "dec" +#: contrib/admin/templates/admin/base.html:26 +msgid "Welcome," msgstr "" -#: utils/dates.py:27 -msgid "Jan." +#: contrib/admin/templates/admin/base.html:28 +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Documentation" msgstr "" -#: utils/dates.py:27 -msgid "Feb." +#: contrib/admin/templates/admin/base.html:29 +#: contrib/admin/templates/admin/auth/user/change_password.html:14 +#: contrib/admin/templates/admin/auth/user/change_password.html:45 +msgid "Change password" msgstr "" -#: utils/dates.py:28 -msgid "Aug." +#: contrib/admin/templates/admin/base.html:30 +#: contrib/comments/templates/comments/form.html:6 +msgid "Log out" msgstr "" -#: utils/dates.py:28 -msgid "Sept." +#: contrib/admin/templates/admin/base_site.html:4 +msgid "Django site admin" msgstr "" -#: utils/dates.py:28 -msgid "Oct." +#: contrib/admin/templates/admin/base_site.html:7 +msgid "Django administration" msgstr "" -#: utils/dates.py:28 -msgid "Nov." +#: contrib/admin/templates/admin/change_form.html:14 +#: contrib/admin/templates/admin/index.html:28 +msgid "Add" msgstr "" -#: utils/dates.py:28 -msgid "Dec." +#: contrib/admin/templates/admin/change_form.html:20 +#: contrib/admin/templates/admin/object_history.html:4 +msgid "History" msgstr "" -#: utils/dateformat.py:40 -msgid "p.m." +#: contrib/admin/templates/admin/change_form.html:21 +msgid "View on site" msgstr "" -#: utils/dateformat.py:41 -msgid "a.m." -msgstr "" +#: contrib/admin/templates/admin/change_form.html:31 +#: contrib/admin/templates/admin/auth/user/change_password.html:23 +msgid "Please correct the error below." +msgid_plural "Please correct the errors below." +msgstr[0] "" +msgstr[1] "" -#: utils/dateformat.py:46 -msgid "PM" +#: contrib/admin/templates/admin/change_form.html:49 +msgid "Ordering" msgstr "" -#: utils/dateformat.py:47 -msgid "AM" +#: contrib/admin/templates/admin/change_form.html:52 +msgid "Order:" msgstr "" -#: utils/dateformat.py:95 -msgid "midnight" +#: contrib/admin/templates/admin/change_list.html:11 +#, python-format +msgid "Add %(name)s" msgstr "" -#: utils/dateformat.py:97 -msgid "noon" +#: contrib/admin/templates/admin/delete_confirmation.html:8 +#: contrib/admin/templates/admin/submit_line.html:3 +msgid "Delete" msgstr "" -#: utils/translation/trans_real.py:358 -msgid "DATE_FORMAT" -msgstr "N j, Y" - -#: utils/translation/trans_real.py:359 -msgid "DATETIME_FORMAT" -msgstr "N j, Y, P" - -#: utils/translation/trans_real.py:360 -msgid "TIME_FORMAT" -msgstr "P" +#: contrib/admin/templates/admin/delete_confirmation.html:13 +#, 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 "" -#: utils/translation/trans_real.py:376 -msgid "YEAR_MONTH_FORMAT" -msgstr "F Y" +#: contrib/admin/templates/admin/delete_confirmation.html:20 +#, 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 "" -#: utils/translation/trans_real.py:377 -msgid "MONTH_DAY_FORMAT" -msgstr "F j" +#: contrib/admin/templates/admin/delete_confirmation.html:25 +msgid "Yes, I'm sure" +msgstr "" -#: oldforms/__init__.py:392 +#: contrib/admin/templates/admin/filter.html:2 #, 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] "" +msgid " By %(filter_title)s " +msgstr "" -#: oldforms/__init__.py:397 -msgid "Line breaks are not allowed here." +#: contrib/admin/templates/admin/filters.html:4 +msgid "Filter" msgstr "" -#: oldforms/__init__.py:498 oldforms/__init__.py:571 oldforms/__init__.py:610 +#: contrib/admin/templates/admin/index.html:17 #, python-format -msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgid "Models available in the %(name)s application." msgstr "" -#: oldforms/__init__.py:577 contrib/admin/filterspecs.py:150 -#: newforms/widgets.py:174 -msgid "Unknown" +#: contrib/admin/templates/admin/index.html:18 +#, python-format +msgid "%(name)s" msgstr "" -#: oldforms/__init__.py:577 contrib/admin/filterspecs.py:143 -#: newforms/widgets.py:174 -msgid "Yes" +#: contrib/admin/templates/admin/index.html:34 +msgid "Change" msgstr "" -#: oldforms/__init__.py:577 contrib/admin/filterspecs.py:143 -#: newforms/widgets.py:174 -msgid "No" +#: contrib/admin/templates/admin/index.html:44 +msgid "You don't have permission to edit anything." msgstr "" -#: oldforms/__init__.py:672 core/validators.py:174 core/validators.py:445 -msgid "No file was submitted. Check the encoding type on the form." +#: contrib/admin/templates/admin/index.html:52 +msgid "Recent Actions" msgstr "" -#: oldforms/__init__.py:674 -msgid "The submitted file is empty." +#: contrib/admin/templates/admin/index.html:53 +msgid "My Actions" msgstr "" -#: oldforms/__init__.py:730 -msgid "Enter a whole number between -32,768 and 32,767." +#: contrib/admin/templates/admin/index.html:57 +msgid "None available" msgstr "" -#: oldforms/__init__.py:740 -msgid "Enter a positive number." +#: 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 "" -#: oldforms/__init__.py:750 -msgid "Enter a whole number between 0 and 32,767." +#: 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/localflavor/no/forms.py:15 -msgid "Enter a zip code in the format XXXX." +#: contrib/admin/templates/admin/login.html:20 +#: contrib/comments/templates/comments/form.html:8 +msgid "Password:" msgstr "" -#: contrib/localflavor/no/forms.py:36 -msgid "Enter a valid Norwegian social security number." +#: contrib/admin/templates/admin/login.html:25 +#: contrib/admin/views/decorators.py:25 +msgid "Log in" msgstr "" -#: contrib/localflavor/it/forms.py:14 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." +#: contrib/admin/templates/admin/object_history.html:17 +msgid "Date/time" msgstr "" -#: contrib/localflavor/jp/forms.py:21 -msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." +#: contrib/admin/templates/admin/object_history.html:18 +msgid "User" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:4 -msgid "Hokkaido" +#: contrib/admin/templates/admin/object_history.html:19 +msgid "Action" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:5 -msgid "Aomori" -msgstr "" +#: contrib/admin/templates/admin/object_history.html:25 +msgid "DATE_WITH_TIME_FULL" +msgstr "N j, Y, P" -#: contrib/localflavor/jp/jp_prefectures.py:6 -msgid "Iwate" +#: contrib/admin/templates/admin/object_history.html:35 +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:7 -msgid "Miyagi" +#: contrib/admin/templates/admin/pagination.html:10 +msgid "Show all" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:8 -msgid "Akita" +#: contrib/admin/templates/admin/search_form.html:8 +msgid "Go" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:9 -msgid "Yamagata" +#: 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/search_form.html:10 +#, python-format +msgid "%(full_result_count)s total" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:10 -msgid "Fukushima" +#: contrib/admin/templates/admin/submit_line.html:4 +msgid "Save as new" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:11 -msgid "Ibaraki" +#: contrib/admin/templates/admin/submit_line.html:5 +msgid "Save and add another" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:12 -msgid "Tochigi" +#: contrib/admin/templates/admin/submit_line.html:6 +msgid "Save and continue editing" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:13 -msgid "Gunma" +#: contrib/admin/templates/admin/submit_line.html:7 +msgid "Save" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:14 -msgid "Saitama" +#: 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:15 -msgid "Chiba" +#: contrib/admin/templates/admin/auth/user/add_form.html:12 +msgid "Username" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:16 -msgid "Tokyo" +#: contrib/admin/templates/admin/auth/user/add_form.html:18 +#: contrib/admin/templates/admin/auth/user/change_password.html:33 +msgid "Password" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:17 -msgid "Kanagawa" +#: contrib/admin/templates/admin/auth/user/add_form.html:23 +#: contrib/admin/templates/admin/auth/user/change_password.html:38 +msgid "Password (again)" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:18 -msgid "Yamanashi" +#: contrib/admin/templates/admin/auth/user/add_form.html:24 +#: contrib/admin/templates/admin/auth/user/change_password.html:39 +msgid "Enter the same password as above, for verification." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:19 -msgid "Nagano" +#: contrib/admin/templates/admin/auth/user/change_password.html:27 +#, python-format +msgid "Enter a new password for the user <strong>%(username)s</strong>." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:20 -msgid "Niigata" +#: contrib/admin/templates/admin_doc/bookmarklets.html:3 +msgid "Bookmarklets" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:21 -msgid "Toyama" +#: contrib/admin/templates/admin_doc/bookmarklets.html:4 +msgid "Documentation bookmarklets" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:22 -msgid "Ishikawa" +#: contrib/admin/templates/admin_doc/bookmarklets.html:8 +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/localflavor/jp/jp_prefectures.py:23 -msgid "Fukui" +#: contrib/admin/templates/admin_doc/bookmarklets.html:18 +msgid "Documentation for this page" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:24 -msgid "Gifu" +#: contrib/admin/templates/admin_doc/bookmarklets.html:19 +msgid "" +"Jumps you from any page to the documentation for the view that generates " +"that page." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:25 -msgid "Shizuoka" +#: contrib/admin/templates/admin_doc/bookmarklets.html:21 +msgid "Show object ID" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:26 -msgid "Aichi" +#: contrib/admin/templates/admin_doc/bookmarklets.html:22 +msgid "" +"Shows the content-type and unique ID for pages that represent a single " +"object." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:27 -msgid "Mie" +#: contrib/admin/templates/admin_doc/bookmarklets.html:24 +msgid "Edit this object (current window)" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:28 -msgid "Shiga" +#: contrib/admin/templates/admin_doc/bookmarklets.html:25 +msgid "Jumps to the admin page for pages that represent a single object." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:29 -msgid "Kyoto" +#: contrib/admin/templates/admin_doc/bookmarklets.html:27 +msgid "Edit this object (new window)" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:30 -msgid "Osaka" +#: contrib/admin/templates/admin_doc/bookmarklets.html:28 +msgid "As above, but opens the admin page in a new window." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:31 -msgid "Hyogo" +#: contrib/admin/templates/registration/logged_out.html:8 +msgid "Thanks for spending some quality time with the Web site today." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:32 -msgid "Nara" +#: contrib/admin/templates/registration/logged_out.html:10 +msgid "Log in again" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:33 -msgid "Wakayama" +#: contrib/admin/templates/registration/password_change_done.html:3 +#: contrib/admin/templates/registration/password_change_form.html:3 +#: contrib/admin/templates/registration/password_change_form.html:5 +#: contrib/admin/templates/registration/password_change_form.html:9 +msgid "Password change" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:34 -msgid "Tottori" +#: contrib/admin/templates/registration/password_change_done.html:5 +#: contrib/admin/templates/registration/password_change_done.html:9 +msgid "Password change successful" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:35 -msgid "Shimane" +#: contrib/admin/templates/registration/password_change_done.html:11 +msgid "Your password was changed." msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:36 -msgid "Okayama" +#: contrib/admin/templates/registration/password_change_form.html:11 +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/localflavor/jp/jp_prefectures.py:37 -msgid "Hiroshima" +#: contrib/admin/templates/registration/password_change_form.html:16 +msgid "Old password:" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:38 -msgid "Yamaguchi" +#: contrib/admin/templates/registration/password_change_form.html:18 +msgid "New password:" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:39 -msgid "Tokushima" +#: contrib/admin/templates/registration/password_change_form.html:20 +msgid "Confirm password:" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:40 -msgid "Kagawa" +#: contrib/admin/templates/registration/password_change_form.html:22 +msgid "Change my password" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:41 -msgid "Ehime" +#: 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/jp/jp_prefectures.py:42 -msgid "Kochi" +#: 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/jp/jp_prefectures.py:43 -msgid "Fukuoka" +#: 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/localflavor/jp/jp_prefectures.py:44 -msgid "Saga" +#: contrib/admin/templates/registration/password_reset_email.html:2 +msgid "You're receiving this e-mail because you requested a password reset" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:45 -msgid "Nagasaki" +#: contrib/admin/templates/registration/password_reset_email.html:3 +#, python-format +msgid "for your user account at %(site_name)s" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:46 -msgid "Kumamoto" +#: contrib/admin/templates/registration/password_reset_email.html:5 +#, python-format +msgid "Your new password is: %(new_password)s" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:47 -msgid "Oita" +#: contrib/admin/templates/registration/password_reset_email.html:7 +msgid "Feel free to change this password by going to this page:" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:48 -msgid "Miyazaki" +#: contrib/admin/templates/registration/password_reset_email.html:11 +msgid "Your username, in case you've forgotten:" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:49 -msgid "Kagoshima" +#: contrib/admin/templates/registration/password_reset_email.html:13 +msgid "Thanks for using our site!" msgstr "" -#: contrib/localflavor/jp/jp_prefectures.py:50 -msgid "Okinawa" +#: contrib/admin/templates/registration/password_reset_email.html:15 +#, python-format +msgid "The %(site_name)s team" msgstr "" -#: contrib/localflavor/br/forms.py:18 -msgid "Enter a zip code in the format XXXXX-XXX." +#: 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/localflavor/br/forms.py:30 -msgid "Phone numbers must be in XX-XXXX-XXXX format." +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "E-mail address:" msgstr "" -#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:46 -msgid "Enter a valid Finnish social security number." +#: contrib/admin/templates/registration/password_reset_form.html:16 +msgid "Reset my password" msgstr "" -#: contrib/localflavor/uk/forms.py:18 -msgid "Enter a postcode. A space is required between the two postcode parts." +#: contrib/admin/templates/widget/date_time.html:3 +msgid "Date:" msgstr "" -#: contrib/localflavor/de/forms.py:63 -msgid "" -"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " -"format" +#: contrib/admin/templates/widget/date_time.html:4 +msgid "Time:" msgstr "" -#: contrib/localflavor/de/de_states.py:5 -msgid "Baden-Wuerttemberg" +#: contrib/admin/templates/widget/file.html:2 +msgid "Currently:" msgstr "" -#: contrib/localflavor/de/de_states.py:6 -msgid "Bavaria" +#: contrib/admin/templates/widget/file.html:3 +msgid "Change:" msgstr "" -#: contrib/localflavor/de/de_states.py:7 -msgid "Berlin" +#: contrib/admin/templatetags/admin_list.py:257 +msgid "All dates" msgstr "" -#: contrib/localflavor/de/de_states.py:8 -msgid "Brandenburg" +#: contrib/admin/views/auth.py:20 contrib/admin/views/main.py:267 +#, python-format +msgid "The %(name)s \"%(obj)s\" was added successfully." msgstr "" -#: contrib/localflavor/de/de_states.py:9 -msgid "Bremen" +#: contrib/admin/views/auth.py:25 contrib/admin/views/main.py:271 +#: contrib/admin/views/main.py:356 +msgid "You may edit it again below." msgstr "" -#: contrib/localflavor/de/de_states.py:10 -msgid "Hamburg" +#: contrib/admin/views/auth.py:31 +msgid "Add user" msgstr "" -#: contrib/localflavor/de/de_states.py:11 -msgid "Hessen" +#: contrib/admin/views/auth.py:58 +msgid "Password changed successfully." msgstr "" -#: contrib/localflavor/de/de_states.py:12 -msgid "Mecklenburg-Western Pomerania" +#: contrib/admin/views/auth.py:65 +#, python-format +msgid "Change password: %s" msgstr "" -#: contrib/localflavor/de/de_states.py:13 -msgid "Lower Saxony" +#: contrib/admin/views/decorators.py:11 contrib/auth/forms.py:60 +msgid "" +"Please enter a correct username and password. Note that both fields are case-" +"sensitive." msgstr "" -#: contrib/localflavor/de/de_states.py:14 -msgid "North Rhine-Westphalia" +#: contrib/admin/views/decorators.py:63 +msgid "" +"Please log in again, because your session has expired. Don't worry: Your " +"submission has been saved." msgstr "" -#: contrib/localflavor/de/de_states.py:15 -msgid "Rhineland-Palatinate" +#: contrib/admin/views/decorators.py:70 +msgid "" +"Looks like your browser isn't configured to accept cookies. Please enable " +"cookies, reload this page, and try again." msgstr "" -#: contrib/localflavor/de/de_states.py:16 -msgid "Saarland" +#: contrib/admin/views/decorators.py:84 +msgid "Usernames cannot contain the '@' character." msgstr "" -#: contrib/localflavor/de/de_states.py:17 -msgid "Saxony" +#: contrib/admin/views/decorators.py:86 +#, python-format +msgid "Your e-mail address is not your username. Try '%s' instead." msgstr "" -#: contrib/localflavor/de/de_states.py:18 -msgid "Saxony-Anhalt" +#: contrib/admin/views/doc.py:48 contrib/admin/views/doc.py:50 +#: contrib/admin/views/doc.py:52 +msgid "tag:" msgstr "" -#: contrib/localflavor/de/de_states.py:19 -msgid "Schleswig-Holstein" +#: contrib/admin/views/doc.py:79 contrib/admin/views/doc.py:81 +#: contrib/admin/views/doc.py:83 +msgid "filter:" msgstr "" -#: contrib/localflavor/de/de_states.py:20 -msgid "Thuringia" +#: contrib/admin/views/doc.py:137 contrib/admin/views/doc.py:139 +#: contrib/admin/views/doc.py:141 +msgid "view:" msgstr "" -#: contrib/localflavor/usa/forms.py:18 -msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +#: contrib/admin/views/doc.py:166 +#, python-format +msgid "App %r not found" msgstr "" -#: contrib/localflavor/usa/forms.py:51 -msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +#: contrib/admin/views/doc.py:173 +#, python-format +msgid "Model %(name)r not found in app %(label)r" msgstr "" -#: contrib/sessions/models.py:68 -msgid "session key" +#: contrib/admin/views/doc.py:185 +#, python-format +msgid "the related `%(label)s.%(type)s` object" msgstr "" -#: contrib/sessions/models.py:69 -msgid "session data" +#: contrib/admin/views/doc.py:185 contrib/admin/views/doc.py:207 +#: contrib/admin/views/doc.py:221 contrib/admin/views/doc.py:226 +msgid "model:" msgstr "" -#: contrib/sessions/models.py:70 -msgid "expire date" +#: contrib/admin/views/doc.py:216 +#, python-format +msgid "related `%(label)s.%(name)s` objects" msgstr "" -#: contrib/sessions/models.py:74 -msgid "session" +#: contrib/admin/views/doc.py:221 +#, python-format +msgid "all %s" msgstr "" -#: contrib/sessions/models.py:75 -msgid "sessions" +#: contrib/admin/views/doc.py:226 +#, python-format +msgid "number of %s" msgstr "" -#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 -msgid "The two password fields didn't match." +#: contrib/admin/views/doc.py:231 +#, python-format +msgid "Fields on %s objects" msgstr "" -#: contrib/auth/forms.py:25 -msgid "A user with that username already exists." +#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:304 +#: contrib/admin/views/doc.py:306 contrib/admin/views/doc.py:312 +#: contrib/admin/views/doc.py:313 contrib/admin/views/doc.py:315 +msgid "Integer" msgstr "" -#: contrib/auth/forms.py:53 -msgid "" -"Your Web browser doesn't appear to have cookies enabled. Cookies are " -"required for logging in." +#: contrib/admin/views/doc.py:294 +msgid "Boolean (Either True or False)" 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." +#: contrib/admin/views/doc.py:295 contrib/admin/views/doc.py:314 +#, python-format +msgid "String (up to %(max_length)s)" msgstr "" -#: contrib/auth/forms.py:62 -msgid "This account is inactive." +#: contrib/admin/views/doc.py:296 +msgid "Comma-separated integers" msgstr "" -#: contrib/auth/forms.py:85 -msgid "" -"That e-mail address doesn't have an associated user account. Are you sure " -"you've registered?" +#: contrib/admin/views/doc.py:297 +msgid "Date (without time)" msgstr "" -#: contrib/auth/forms.py:117 -msgid "The two 'new password' fields didn't match." +#: contrib/admin/views/doc.py:298 +msgid "Date (with time)" msgstr "" -#: contrib/auth/forms.py:124 -msgid "Your old password was entered incorrectly. Please enter it again." +#: contrib/admin/views/doc.py:299 +msgid "Decimal number" msgstr "" -#: contrib/auth/views.py:39 -msgid "Logged out" +#: contrib/admin/views/doc.py:300 +msgid "E-mail address" msgstr "" -#: contrib/auth/models.py:38 contrib/auth/models.py:57 -msgid "name" +#: contrib/admin/views/doc.py:301 contrib/admin/views/doc.py:302 +#: contrib/admin/views/doc.py:305 +msgid "File path" msgstr "" -#: contrib/auth/models.py:40 -msgid "codename" +#: contrib/admin/views/doc.py:303 +msgid "Floating point number" msgstr "" -#: contrib/auth/models.py:42 -msgid "permission" +#: contrib/admin/views/doc.py:307 contrib/comments/models.py:85 +msgid "IP address" msgstr "" -#: contrib/auth/models.py:43 contrib/auth/models.py:58 -msgid "permissions" +#: contrib/admin/views/doc.py:309 +msgid "Boolean (Either True, False or None)" msgstr "" -#: contrib/auth/models.py:60 -msgid "group" +#: contrib/admin/views/doc.py:310 +msgid "Relation to parent model" msgstr "" -#: contrib/auth/models.py:61 contrib/auth/models.py:100 -msgid "groups" +#: contrib/admin/views/doc.py:311 +msgid "Phone number" msgstr "" -#: contrib/auth/models.py:90 -msgid "username" +#: contrib/admin/views/doc.py:316 +msgid "Text" msgstr "" -#: contrib/auth/models.py:90 -msgid "" -"Required. 30 characters or fewer. Alphanumeric characters only (letters, " -"digits and underscores)." +#: contrib/admin/views/doc.py:317 +msgid "Time" msgstr "" -#: contrib/auth/models.py:91 -msgid "first name" +#: contrib/admin/views/doc.py:318 contrib/flatpages/models.py:7 +msgid "URL" msgstr "" -#: contrib/auth/models.py:92 -msgid "last name" +#: contrib/admin/views/doc.py:319 +msgid "U.S. state (two uppercase letters)" msgstr "" -#: contrib/auth/models.py:93 -msgid "e-mail address" +#: contrib/admin/views/doc.py:320 +msgid "XML text" msgstr "" -#: contrib/auth/models.py:94 -msgid "password" +#: contrib/admin/views/doc.py:346 +#, python-format +msgid "%s does not appear to be a urlpattern object" msgstr "" -#: contrib/auth/models.py:94 -msgid "" -"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " -"password form</a>." +#: contrib/admin/views/main.py:233 +msgid "Site administration" msgstr "" -#: contrib/auth/models.py:95 -msgid "staff status" +#: contrib/admin/views/main.py:280 contrib/admin/views/main.py:365 +#, python-format +msgid "You may add another %s below." msgstr "" -#: contrib/auth/models.py:95 -msgid "Designates whether the user can log into this admin site." +#: contrib/admin/views/main.py:298 +#, python-format +msgid "Add %s" msgstr "" -#: contrib/auth/models.py:96 -msgid "active" +#: contrib/admin/views/main.py:344 +#, python-format +msgid "Added %s." msgstr "" -#: contrib/auth/models.py:96 -msgid "" -"Designates whether this user can log into the Django admin. Unselect this " -"instead of deleting accounts." +#: contrib/admin/views/main.py:344 contrib/admin/views/main.py:346 +#: contrib/admin/views/main.py:348 core/validators.py:283 +#: db/models/manipulators.py:309 +msgid "and" msgstr "" -#: contrib/auth/models.py:97 -msgid "superuser status" +#: contrib/admin/views/main.py:346 +#, python-format +msgid "Changed %s." msgstr "" -#: contrib/auth/models.py:97 -msgid "" -"Designates that this user has all permissions without explicitly assigning " -"them." +#: contrib/admin/views/main.py:348 +#, python-format +msgid "Deleted %s." msgstr "" -#: contrib/auth/models.py:98 -msgid "last login" +#: contrib/admin/views/main.py:351 +msgid "No fields changed." msgstr "" -#: contrib/auth/models.py:99 -msgid "date joined" +#: contrib/admin/views/main.py:354 +#, python-format +msgid "The %(name)s \"%(obj)s\" was changed successfully." msgstr "" -#: contrib/auth/models.py:101 +#: contrib/admin/views/main.py:362 +#, python-format msgid "" -"In addition to the permissions manually assigned, this user will also get " -"all permissions granted to each group he/she is in." +"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." msgstr "" -#: contrib/auth/models.py:102 -msgid "user permissions" +#: contrib/admin/views/main.py:400 +#, python-format +msgid "Change %s" msgstr "" -#: contrib/auth/models.py:105 -msgid "user" +#: contrib/admin/views/main.py:487 +#, python-format +msgid "One or more %(fieldname)s in %(name)s: %(obj)s" msgstr "" -#: contrib/auth/models.py:106 -msgid "users" +#: contrib/admin/views/main.py:492 +#, python-format +msgid "One or more %(fieldname)s in %(name)s:" msgstr "" -#: contrib/auth/models.py:111 -msgid "Personal info" +#: contrib/admin/views/main.py:524 +#, python-format +msgid "The %(name)s \"%(obj)s\" was deleted successfully." msgstr "" -#: contrib/auth/models.py:112 -msgid "Permissions" +#: contrib/admin/views/main.py:527 +msgid "Are you sure?" msgstr "" -#: contrib/auth/models.py:113 -msgid "Important dates" +#: contrib/admin/views/main.py:549 +#, python-format +msgid "Change history: %s" msgstr "" -#: contrib/auth/models.py:114 -msgid "Groups" +#: contrib/admin/views/main.py:583 +#, python-format +msgid "Select %s" msgstr "" -#: contrib/auth/models.py:258 -msgid "message" +#: contrib/admin/views/main.py:583 +#, python-format +msgid "Select %s to change" msgstr "" -#: contrib/humanize/templatetags/humanize.py:17 -msgid "th" +#: contrib/admin/views/main.py:784 +msgid "Database error" msgstr "" -#: contrib/humanize/templatetags/humanize.py:17 -msgid "st" +#: contrib/auth/forms.py:17 contrib/auth/forms.py:138 +msgid "The two password fields didn't match." msgstr "" -#: contrib/humanize/templatetags/humanize.py:17 -msgid "nd" +#: contrib/auth/forms.py:25 +msgid "A user with that username already exists." msgstr "" -#: contrib/humanize/templatetags/humanize.py:17 -msgid "rd" +#: contrib/auth/forms.py:53 +msgid "" +"Your Web browser doesn't appear to have cookies enabled. Cookies are " +"required for logging in." msgstr "" -#: contrib/humanize/templatetags/humanize.py:47 -#, python-format -msgid "%(value).1f million" -msgid_plural "%(value).1f million" -msgstr[0] "" -msgstr[1] "" +#: contrib/auth/forms.py:62 +msgid "This account is inactive." +msgstr "" -#: contrib/humanize/templatetags/humanize.py:50 -#, python-format -msgid "%(value).1f billion" -msgid_plural "%(value).1f billion" -msgstr[0] "" -msgstr[1] "" +#: contrib/auth/forms.py:84 +msgid "" +"That e-mail address doesn't have an associated user account. Are you sure " +"you've registered?" +msgstr "" -#: contrib/humanize/templatetags/humanize.py:53 +#: contrib/auth/forms.py:107 #, python-format -msgid "%(value).1f trillion" -msgid_plural "%(value).1f trillion" -msgstr[0] "" -msgstr[1] "" +msgid "Password reset on %s" +msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "one" +#: contrib/auth/forms.py:117 +msgid "The two 'new password' fields didn't match." msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "two" +#: contrib/auth/forms.py:124 +msgid "Your old password was entered incorrectly. Please enter it again." msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "three" +#: contrib/auth/models.py:73 contrib/auth/models.py:93 +msgid "name" msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "four" +#: contrib/auth/models.py:75 +msgid "codename" msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "five" +#: contrib/auth/models.py:78 +msgid "permission" msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "six" +#: contrib/auth/models.py:79 contrib/auth/models.py:94 +msgid "permissions" msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "seven" +#: contrib/auth/models.py:97 +msgid "group" msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "eight" +#: contrib/auth/models.py:98 contrib/auth/models.py:141 +msgid "groups" msgstr "" -#: contrib/humanize/templatetags/humanize.py:68 -msgid "nine" +#: contrib/auth/models.py:131 +msgid "username" msgstr "" -#: contrib/contenttypes/models.py:36 -msgid "python model class name" +#: contrib/auth/models.py:131 +msgid "" +"Required. 30 characters or fewer. Alphanumeric characters only (letters, " +"digits and underscores)." msgstr "" -#: contrib/contenttypes/models.py:39 -msgid "content type" +#: contrib/auth/models.py:132 +msgid "first name" msgstr "" -#: contrib/contenttypes/models.py:40 -msgid "content types" +#: contrib/auth/models.py:133 +msgid "last name" msgstr "" -#: contrib/redirects/models.py:7 -msgid "redirect from" +#: contrib/auth/models.py:134 +msgid "e-mail address" msgstr "" -#: contrib/redirects/models.py:8 +#: contrib/auth/models.py:135 +msgid "password" +msgstr "" + +#: contrib/auth/models.py:135 msgid "" -"This should be an absolute path, excluding the domain name. Example: '/" -"events/search/'." +"Use '[algo]$[salt]$[hexdigest]' or use the <a href=\"password/\">change " +"password form</a>." msgstr "" -#: contrib/redirects/models.py:9 -msgid "redirect to" +#: contrib/auth/models.py:136 +msgid "staff status" msgstr "" -#: contrib/redirects/models.py:10 +#: contrib/auth/models.py:136 +msgid "Designates whether the user can log into this admin site." +msgstr "" + +#: contrib/auth/models.py:137 +msgid "active" +msgstr "" + +#: contrib/auth/models.py:137 msgid "" -"This can be either an absolute path (as above) or a full URL starting with " -"'http://'." +"Designates whether this user can log into the Django admin. Unselect this " +"instead of deleting accounts." msgstr "" -#: contrib/redirects/models.py:13 -msgid "redirect" +#: contrib/auth/models.py:138 +msgid "superuser status" msgstr "" -#: contrib/redirects/models.py:14 -msgid "redirects" +#: contrib/auth/models.py:138 +msgid "" +"Designates that this user has all permissions without explicitly assigning " +"them." msgstr "" -#: contrib/flatpages/models.py:7 contrib/admin/views/doc.py:315 -msgid "URL" +#: contrib/auth/models.py:139 +msgid "last login" msgstr "" -#: contrib/flatpages/models.py:8 +#: contrib/auth/models.py:140 +msgid "date joined" +msgstr "" + +#: contrib/auth/models.py:142 msgid "" -"Example: '/about/contact/'. Make sure to have leading and trailing slashes." +"In addition to the permissions manually assigned, this user will also get " +"all permissions granted to each group he/she is in." msgstr "" -#: contrib/flatpages/models.py:9 -msgid "title" +#: contrib/auth/models.py:143 +msgid "user permissions" msgstr "" -#: contrib/flatpages/models.py:10 -msgid "content" +#: contrib/auth/models.py:147 +msgid "user" msgstr "" -#: contrib/flatpages/models.py:11 -msgid "enable comments" +#: contrib/auth/models.py:148 +msgid "users" msgstr "" -#: contrib/flatpages/models.py:12 -msgid "template name" +#: contrib/auth/models.py:154 +msgid "Personal info" msgstr "" -#: contrib/flatpages/models.py:13 -msgid "" -"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " -"will use 'flatpages/default.html'." +#: contrib/auth/models.py:155 +msgid "Permissions" msgstr "" -#: contrib/flatpages/models.py:14 -msgid "registration required" +#: contrib/auth/models.py:156 +msgid "Important dates" msgstr "" -#: contrib/flatpages/models.py:14 -msgid "If this is checked, only logged-in users will be able to view the page." +#: contrib/auth/models.py:157 +msgid "Groups" msgstr "" -#: contrib/flatpages/models.py:18 -msgid "flat page" +#: contrib/auth/models.py:316 +msgid "message" msgstr "" -#: contrib/flatpages/models.py:19 -msgid "flat pages" +#: contrib/auth/views.py:47 +msgid "Logged out" msgstr "" -#: contrib/comments/models.py:67 contrib/comments/models.py:166 +#: contrib/comments/models.py:67 contrib/comments/models.py:169 msgid "object ID" msgstr "" @@ -1186,7 +1197,7 @@ msgid "headline" msgstr "" #: contrib/comments/models.py:69 contrib/comments/models.py:90 -#: contrib/comments/models.py:167 +#: contrib/comments/models.py:170 msgid "comment" msgstr "" @@ -1226,18 +1237,14 @@ msgstr "" msgid "is valid rating" msgstr "" -#: contrib/comments/models.py:83 contrib/comments/models.py:169 +#: contrib/comments/models.py:83 contrib/comments/models.py:172 msgid "date/time submitted" msgstr "" -#: contrib/comments/models.py:84 contrib/comments/models.py:170 +#: contrib/comments/models.py:84 contrib/comments/models.py:173 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 "" @@ -1252,11 +1259,11 @@ msgstr "" msgid "comments" msgstr "" -#: contrib/comments/models.py:131 contrib/comments/models.py:207 +#: contrib/comments/models.py:134 contrib/comments/models.py:213 msgid "Content object" msgstr "" -#: contrib/comments/models.py:159 +#: contrib/comments/models.py:162 #, python-format msgid "" "Posted by %(user)s at %(date)s\n" @@ -1266,48 +1273,48 @@ msgid "" "http://%(domain)s%(url)s" msgstr "" -#: contrib/comments/models.py:168 +#: contrib/comments/models.py:171 msgid "person's name" msgstr "" -#: contrib/comments/models.py:171 +#: contrib/comments/models.py:174 msgid "ip address" msgstr "" -#: contrib/comments/models.py:173 +#: contrib/comments/models.py:176 msgid "approved by staff" msgstr "" -#: contrib/comments/models.py:176 +#: contrib/comments/models.py:179 msgid "free comment" msgstr "" -#: contrib/comments/models.py:177 +#: contrib/comments/models.py:180 msgid "free comments" msgstr "" -#: contrib/comments/models.py:233 +#: contrib/comments/models.py:239 msgid "score" msgstr "" -#: contrib/comments/models.py:234 +#: contrib/comments/models.py:240 msgid "score date" msgstr "" -#: contrib/comments/models.py:237 +#: contrib/comments/models.py:243 msgid "karma score" msgstr "" -#: contrib/comments/models.py:238 +#: contrib/comments/models.py:244 msgid "karma scores" msgstr "" -#: contrib/comments/models.py:242 +#: contrib/comments/models.py:248 #, python-format msgid "%(score)d rating by %(user)s" msgstr "" -#: contrib/comments/models.py:258 +#: contrib/comments/models.py:264 #, python-format msgid "" "This comment was flagged by %(user)s:\n" @@ -1315,73 +1322,40 @@ msgid "" "%(text)s" msgstr "" -#: contrib/comments/models.py:265 +#: contrib/comments/models.py:271 msgid "flag date" msgstr "" -#: contrib/comments/models.py:268 +#: contrib/comments/models.py:274 msgid "user flag" msgstr "" -#: contrib/comments/models.py:269 +#: contrib/comments/models.py:275 msgid "user flags" msgstr "" -#: contrib/comments/models.py:273 +#: contrib/comments/models.py:279 #, python-format msgid "Flag by %r" msgstr "" -#: contrib/comments/models.py:278 +#: contrib/comments/models.py:284 msgid "deletion date" msgstr "" -#: contrib/comments/models.py:280 +#: contrib/comments/models.py:286 msgid "moderator deletion" msgstr "" -#: contrib/comments/models.py:281 +#: contrib/comments/models.py:287 msgid "moderator deletions" msgstr "" -#: contrib/comments/models.py:285 +#: contrib/comments/models.py:291 #, python-format msgid "Moderator deletion by %r" 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/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 "" @@ -1418,24 +1392,12 @@ msgstr "" msgid "Your name:" msgstr "" -#: contrib/comments/views/karma.py:19 -msgid "Anonymous users cannot vote" -msgstr "" - -#: contrib/comments/views/karma.py:23 -msgid "Invalid comment ID" -msgstr "" - -#: contrib/comments/views/karma.py:25 -msgid "No voting for yourself" -msgstr "" - -#: contrib/comments/views/comments.py:27 +#: contrib/comments/views/comments.py:28 msgid "" "This rating is required because you've entered at least one other rating." msgstr "" -#: contrib/comments/views/comments.py:111 +#: contrib/comments/views/comments.py:112 #, python-format msgid "" "This comment was posted by a user who has posted fewer than %(count)s " @@ -1450,7 +1412,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: contrib/comments/views/comments.py:116 +#: contrib/comments/views/comments.py:117 #, python-format msgid "" "This comment was posted by a sketchy user:\n" @@ -1458,1097 +1420,1757 @@ msgid "" "%(text)s" msgstr "" -#: contrib/comments/views/comments.py:188 -#: contrib/comments/views/comments.py:280 +#: contrib/comments/views/comments.py:190 +#: contrib/comments/views/comments.py:283 msgid "Only POSTs are allowed" msgstr "" -#: contrib/comments/views/comments.py:192 -#: contrib/comments/views/comments.py:284 +#: contrib/comments/views/comments.py:194 +#: contrib/comments/views/comments.py:287 msgid "One or more of the required fields wasn't submitted" msgstr "" -#: contrib/comments/views/comments.py:196 -#: contrib/comments/views/comments.py:286 +#: contrib/comments/views/comments.py:198 +#: contrib/comments/views/comments.py:289 msgid "Somebody tampered with the comment form (security violation)" msgstr "" -#: contrib/comments/views/comments.py:206 -#: contrib/comments/views/comments.py:292 +#: contrib/comments/views/comments.py:208 +#: contrib/comments/views/comments.py:295 msgid "" "The comment form had an invalid 'target' parameter -- the object ID was " "invalid" msgstr "" -#: contrib/comments/views/comments.py:257 -#: contrib/comments/views/comments.py:321 +#: contrib/comments/views/comments.py:259 +#: contrib/comments/views/comments.py:324 msgid "The comment form didn't provide either 'preview' or 'post'" msgstr "" -#: contrib/sites/models.py:10 -msgid "domain name" +#: contrib/comments/views/karma.py:21 +msgid "Anonymous users cannot vote" msgstr "" -#: contrib/sites/models.py:11 -msgid "display name" +#: contrib/comments/views/karma.py:25 +msgid "Invalid comment ID" msgstr "" -#: contrib/sites/models.py:15 -msgid "site" +#: contrib/comments/views/karma.py:27 +msgid "No voting for yourself" msgstr "" -#: contrib/sites/models.py:16 -msgid "sites" +#: contrib/contenttypes/models.py:37 +msgid "python model class name" msgstr "" -#: contrib/admin/filterspecs.py:40 -#, python-format +#: contrib/contenttypes/models.py:40 +msgid "content type" +msgstr "" + +#: contrib/contenttypes/models.py:41 +msgid "content types" +msgstr "" + +#: contrib/flatpages/models.py:8 msgid "" -"<h3>By %s:</h3>\n" -"<ul>\n" +"Example: '/about/contact/'. Make sure to have leading and trailing slashes." msgstr "" -#: contrib/admin/filterspecs.py:70 contrib/admin/filterspecs.py:88 -#: contrib/admin/filterspecs.py:143 contrib/admin/filterspecs.py:169 -msgid "All" +#: contrib/flatpages/models.py:9 +msgid "title" msgstr "" -#: contrib/admin/filterspecs.py:109 -msgid "Any date" +#: contrib/flatpages/models.py:10 +msgid "content" msgstr "" -#: contrib/admin/filterspecs.py:110 -msgid "Today" +#: contrib/flatpages/models.py:11 +msgid "enable comments" msgstr "" -#: contrib/admin/filterspecs.py:113 -msgid "Past 7 days" +#: contrib/flatpages/models.py:12 +msgid "template name" msgstr "" -#: contrib/admin/filterspecs.py:115 -msgid "This month" +#: contrib/flatpages/models.py:13 +msgid "" +"Example: 'flatpages/contact_page.html'. If this isn't provided, the system " +"will use 'flatpages/default.html'." msgstr "" -#: contrib/admin/filterspecs.py:117 -msgid "This year" +#: contrib/flatpages/models.py:14 +msgid "registration required" msgstr "" -#: contrib/admin/models.py:16 -msgid "action time" +#: contrib/flatpages/models.py:14 +msgid "If this is checked, only logged-in users will be able to view the page." msgstr "" -#: contrib/admin/models.py:19 -msgid "object id" +#: contrib/flatpages/models.py:18 +msgid "flat page" msgstr "" -#: contrib/admin/models.py:20 -msgid "object repr" +#: contrib/flatpages/models.py:19 +msgid "flat pages" msgstr "" -#: contrib/admin/models.py:21 -msgid "action flag" +#: contrib/humanize/templatetags/humanize.py:20 +msgid "th" msgstr "" -#: contrib/admin/models.py:22 -msgid "change message" +#: contrib/humanize/templatetags/humanize.py:20 +msgid "st" msgstr "" -#: contrib/admin/models.py:25 -msgid "log entry" +#: contrib/humanize/templatetags/humanize.py:20 +msgid "nd" msgstr "" -#: contrib/admin/models.py:26 -msgid "log entries" +#: contrib/humanize/templatetags/humanize.py:20 +msgid "rd" msgstr "" -#: contrib/admin/templatetags/admin_list.py:247 -msgid "All dates" +#: contrib/humanize/templatetags/humanize.py:52 +#, python-format +msgid "%(value).1f million" +msgid_plural "%(value).1f million" +msgstr[0] "" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:55 +#, python-format +msgid "%(value).1f billion" +msgid_plural "%(value).1f billion" +msgstr[0] "" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:58 +#, python-format +msgid "%(value).1f trillion" +msgid_plural "%(value).1f trillion" +msgstr[0] "" +msgstr[1] "" + +#: contrib/humanize/templatetags/humanize.py:74 +msgid "one" 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" +#: contrib/humanize/templatetags/humanize.py:74 +msgid "two" 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" +#: contrib/humanize/templatetags/humanize.py:74 +msgid "three" msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:3 -msgid "Bookmarklets" +#: contrib/humanize/templatetags/humanize.py:74 +msgid "four" 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" +#: contrib/humanize/templatetags/humanize.py:74 +msgid "five" msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:5 -msgid "Documentation bookmarklets" +#: contrib/humanize/templatetags/humanize.py:74 +msgid "six" 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" +#: contrib/humanize/templatetags/humanize.py:74 +msgid "seven" msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:19 -msgid "Documentation for this page" +#: contrib/humanize/templatetags/humanize.py:74 +msgid "eight" 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." +#: contrib/humanize/templatetags/humanize.py:74 +msgid "nine" msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:22 -msgid "Show object ID" +#: contrib/humanize/templatetags/humanize.py:94 +msgid "today" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:96 +msgid "tomorrow" +msgstr "" + +#: contrib/humanize/templatetags/humanize.py:98 +msgid "yesterday" msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:23 +#: contrib/localflavor/ar/forms.py:30 contrib/localflavor/ar/forms.py:38 +msgid "Enter a postal code in the format NNNN or ANNNNAAA." +msgstr "" + +#: contrib/localflavor/ar/forms.py:61 contrib/localflavor/br/forms.py:103 +#: contrib/localflavor/pe/forms.py:34 contrib/localflavor/pe/forms.py:57 +msgid "This field requires only numbers." +msgstr "" + +#: contrib/localflavor/ar/forms.py:64 +msgid "This field requires 7 or 8 digits." +msgstr "" + +#: contrib/localflavor/ar/forms.py:75 +msgid "Enter a valid CUIT in XX-XXXXXXXX-X or XXXXXXXXXXXX format." +msgstr "" + +#: contrib/localflavor/ar/forms.py:88 +msgid "Invalid CUIT." +msgstr "" + +#: contrib/localflavor/au/forms.py:18 +msgid "Enter a 4 digit post code." +msgstr "" + +#: contrib/localflavor/br/forms.py:23 +msgid "Enter a zip code in the format XXXXX-XXX." +msgstr "" + +#: contrib/localflavor/br/forms.py:35 +msgid "Phone numbers must be in XX-XXXX-XXXX format." +msgstr "" + +#: contrib/localflavor/br/forms.py:68 msgid "" -"Shows the content-type and unique ID for pages that represent a single " -"object." +"Select a valid brazilian state. That state is not one of the available " +"states." msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:25 -msgid "Edit this object (current window)" +#: contrib/localflavor/br/forms.py:105 +msgid "This field requires at most 11 digits or 14 characters." msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:26 -msgid "Jumps to the admin page for pages that represent a single object." +#: contrib/localflavor/br/forms.py:115 +msgid "Invalid CPF number." msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:28 -msgid "Edit this object (new window)" +#: contrib/localflavor/br/forms.py:137 +msgid "This field requires at least 14 digits" msgstr "" -#: contrib/admin/templates/admin_doc/bookmarklets.html:29 -msgid "As above, but opens the admin page in a new window." +#: contrib/localflavor/br/forms.py:147 +msgid "Invalid CNPJ number." msgstr "" -#: contrib/admin/templates/admin/submit_line.html:3 -#: contrib/admin/templates/admin/delete_confirmation.html:9 -msgid "Delete" +#: contrib/localflavor/ca/forms.py:19 +msgid "Enter a postal code in the format XXX XXX." msgstr "" -#: contrib/admin/templates/admin/submit_line.html:4 -msgid "Save as new" +#: contrib/localflavor/ca/forms.py:81 +msgid "Enter a valid Canadian Social Insurance number in XXX-XXX-XXXX format." msgstr "" -#: contrib/admin/templates/admin/submit_line.html:5 -msgid "Save and add another" +#: contrib/localflavor/ch/ch_states.py:5 +msgid "Aargau" msgstr "" -#: contrib/admin/templates/admin/submit_line.html:6 -msgid "Save and continue editing" +#: contrib/localflavor/ch/ch_states.py:6 +msgid "Appenzell Innerrhoden" msgstr "" -#: contrib/admin/templates/admin/submit_line.html:7 -msgid "Save" +#: contrib/localflavor/ch/ch_states.py:7 +msgid "Appenzell Ausserrhoden" msgstr "" -#: contrib/admin/templates/admin/500.html:4 -msgid "Server error" +#: contrib/localflavor/ch/ch_states.py:8 +msgid "Basel-Stadt" msgstr "" -#: contrib/admin/templates/admin/500.html:6 -msgid "Server error (500)" +#: contrib/localflavor/ch/ch_states.py:9 +msgid "Basel-Land" msgstr "" -#: contrib/admin/templates/admin/500.html:9 -msgid "Server Error <em>(500)</em>" +#: contrib/localflavor/ch/ch_states.py:10 +msgid "Berne" msgstr "" -#: contrib/admin/templates/admin/500.html:10 +#: 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:18 contrib/localflavor/no/forms.py:14 +msgid "Enter a zip code in the format XXXX." +msgstr "" + +#: contrib/localflavor/ch/forms.py:90 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." +"Enter a valid Swiss identity or passport card number in X1234567<0 or " +"1234567890 format." msgstr "" -#: contrib/admin/templates/admin/filter.html:2 -#, python-format -msgid " By %(filter_title)s " +#: contrib/localflavor/cl/forms.py:32 +msgid "Enter valid a Chilean RUT. The format is XX.XXX.XXX-X." msgstr "" -#: contrib/admin/templates/admin/filters.html:4 -msgid "Filter" +#: contrib/localflavor/cl/forms.py:37 +msgid "Enter valid a Chilean RUT" msgstr "" -#: contrib/admin/templates/admin/invalid_setup.html:8 +#: 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/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:16 contrib/localflavor/fi/forms.py:14 +#: contrib/localflavor/fr/forms.py:17 +msgid "Enter a zip code in the format XXXXX." +msgstr "" + +#: contrib/localflavor/de/forms.py:60 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." +"Enter a valid German identity card number in XXXXXXXXXXX-XXXXXXX-XXXXXXX-X " +"format." msgstr "" -#: contrib/admin/templates/admin/search_form.html:8 -msgid "Go" +#: contrib/localflavor/es/es_provinces.py:5 +msgid "Arava" msgstr "" -#: contrib/admin/templates/admin/search_form.html:10 -#, python-format -msgid "1 result" -msgid_plural "%(counter)s results" -msgstr[0] "" -msgstr[1] "" +#: contrib/localflavor/es/es_provinces.py:6 +msgid "Albacete" +msgstr "" -#: contrib/admin/templates/admin/search_form.html:10 -#, python-format -msgid "%(full_result_count)s total" +#: contrib/localflavor/es/es_provinces.py:7 +msgid "Alacant" msgstr "" -#: contrib/admin/templates/admin/object_history.html:5 -#: contrib/admin/templates/admin/change_form.html:21 -msgid "History" +#: contrib/localflavor/es/es_provinces.py:8 +msgid "Almeria" msgstr "" -#: contrib/admin/templates/admin/object_history.html:18 -msgid "Date/time" +#: contrib/localflavor/es/es_provinces.py:9 +msgid "Avila" msgstr "" -#: contrib/admin/templates/admin/object_history.html:19 -msgid "User" +#: contrib/localflavor/es/es_provinces.py:10 +msgid "Badajoz" msgstr "" -#: contrib/admin/templates/admin/object_history.html:20 -msgid "Action" +#: contrib/localflavor/es/es_provinces.py:11 +msgid "Illes Balears" msgstr "" -#: contrib/admin/templates/admin/object_history.html:26 -msgid "DATE_WITH_TIME_FULL" -msgstr "N j, Y, P" +#: contrib/localflavor/es/es_provinces.py:12 +msgid "Barcelona" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:13 +msgid "Burgos" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:14 +msgid "Caceres" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:15 +msgid "Cadiz" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:16 +msgid "Castello" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:17 +msgid "Ciudad Real" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:18 +msgid "Cordoba" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:19 +msgid "A Coruna" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:20 +msgid "Cuenca" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:21 +msgid "Girona" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:22 +msgid "Granada" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:23 +msgid "Guadalajara" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:24 +msgid "Guipuzkoa" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:25 +msgid "Huelva" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:26 +msgid "Huesca" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:27 +msgid "Jaen" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:28 +msgid "Leon" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:29 +msgid "Lleida" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:30 +#: contrib/localflavor/es/es_regions.py:17 +msgid "La Rioja" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:31 +msgid "Lugo" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:32 +#: contrib/localflavor/es/es_regions.py:18 +msgid "Madrid" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:33 +msgid "Malaga" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:34 +msgid "Murcia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:35 +msgid "Navarre" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:36 +msgid "Ourense" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:37 +msgid "Asturias" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:38 +msgid "Palencia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:39 +msgid "Las Palmas" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:40 +msgid "Pontevedra" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:41 +msgid "Salamanca" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:42 +msgid "Santa Cruz de Tenerife" +msgstr "" -#: contrib/admin/templates/admin/object_history.html:36 +#: contrib/localflavor/es/es_provinces.py:43 +#: contrib/localflavor/es/es_regions.py:11 +msgid "Cantabria" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:44 +msgid "Segovia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:45 +msgid "Seville" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:46 +msgid "Soria" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:47 +msgid "Tarragona" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:48 +msgid "Teruel" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:49 +msgid "Toledo" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:50 +msgid "Valencia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:51 +msgid "Valladolid" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:52 +msgid "Bizkaia" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:53 +msgid "Zamora" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:54 +msgid "Zaragoza" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:55 +msgid "Ceuta" +msgstr "" + +#: contrib/localflavor/es/es_provinces.py:56 +msgid "Melilla" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:5 +msgid "Andalusia" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:6 +msgid "Aragon" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:7 +msgid "Principality of Asturias" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:8 +msgid "Balearic Islands" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:9 +msgid "Basque Country" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:10 +msgid "Canary Islands" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:12 +msgid "Castile-La Mancha" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:13 +msgid "Castile and Leon" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:14 +msgid "Catalonia" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:15 +msgid "Extremadura" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:16 +msgid "Galicia" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:19 +msgid "Region of Murcia" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:20 +msgid "Foral Community of Navarre" +msgstr "" + +#: contrib/localflavor/es/es_regions.py:21 +msgid "Valencian Community" +msgstr "" + +#: contrib/localflavor/es/forms.py:22 +msgid "Enter a valid postal code in the range and format 01XXX - 52XXX." +msgstr "" + +#: contrib/localflavor/es/forms.py:39 msgid "" -"This object doesn't have a change history. It probably wasn't added via this " -"admin site." +"Enter a valid phone number in one of the formats 6XXXXXXXX, 8XXXXXXXX or " +"9XXXXXXXX." msgstr "" -#: contrib/admin/templates/admin/delete_confirmation.html:14 +#: contrib/localflavor/es/forms.py:73 contrib/localflavor/es/forms.py:108 +#: db/models/fields/related.py:55 #, python-format +msgid "Please enter a valid %s." +msgstr "" + +#: contrib/localflavor/es/forms.py:91 +msgid "Invalid checksum for NIF." +msgstr "" + +#: contrib/localflavor/es/forms.py:97 +msgid "Invalid checksum for NIE." +msgstr "" + +#: contrib/localflavor/es/forms.py:106 +msgid "Invalid checksum for CIF." +msgstr "" + +#: contrib/localflavor/es/forms.py:136 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:" +"Please enter a valid bank account number in format XXXX-XXXX-XX-XXXXXXXXXX." msgstr "" -#: contrib/admin/templates/admin/delete_confirmation.html:21 -#, python-format +#: contrib/localflavor/es/forms.py:150 +msgid "Invalid checksum for bank account number." +msgstr "" + +#: contrib/localflavor/fi/forms.py:40 contrib/localflavor/fi/forms.py:45 +msgid "Enter a valid Finnish social security number." +msgstr "" + +#: contrib/localflavor/in_/forms.py:16 +msgid "Enter a zip code in the format XXXXXXX." +msgstr "" + +#: contrib/localflavor/is_/forms.py:17 msgid "" -"Are you sure you want to delete the %(object_name)s \"%(escaped_object)s\"? " -"All of the following related items will be deleted:" +"Enter a valid Icelandic identification number. The format is XXXXXX-XXXX." msgstr "" -#: contrib/admin/templates/admin/delete_confirmation.html:26 -msgid "Yes, I'm sure" +#: contrib/localflavor/is_/forms.py:31 +msgid "The Icelandic identification number is not valid." msgstr "" -#: contrib/admin/templates/admin/pagination.html:10 -msgid "Show all" +#: contrib/localflavor/it/forms.py:16 +msgid "Enter a valid zip code." msgstr "" -#: contrib/admin/templates/admin/change_list.html:12 -#, python-format -msgid "Add %(name)s" +#: contrib/localflavor/it/forms.py:41 +msgid "Enter a valid Social Security number." msgstr "" -#: contrib/admin/templates/admin/change_form.html:15 -#: contrib/admin/templates/admin/index.html:28 -msgid "Add" +#: contrib/localflavor/it/forms.py:68 +msgid "Enter a valid VAT number." msgstr "" -#: contrib/admin/templates/admin/change_form.html:22 -msgid "View on site" +#: contrib/localflavor/jp/forms.py:21 +msgid "Enter a postal code in the format XXXXXXX or XXX-XXXX." 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:4 +msgid "Hokkaido" +msgstr "" -#: contrib/admin/templates/admin/change_form.html:50 -msgid "Ordering" +#: contrib/localflavor/jp/jp_prefectures.py:5 +msgid "Aomori" msgstr "" -#: contrib/admin/templates/admin/change_form.html:53 -msgid "Order:" +#: contrib/localflavor/jp/jp_prefectures.py:6 +msgid "Iwate" msgstr "" -#: contrib/admin/templates/admin/base.html:25 -msgid "Welcome," +#: contrib/localflavor/jp/jp_prefectures.py:7 +msgid "Miyagi" msgstr "" -#: contrib/admin/templates/admin/404.html:4 -#: contrib/admin/templates/admin/404.html:8 -msgid "Page not found" +#: contrib/localflavor/jp/jp_prefectures.py:8 +msgid "Akita" msgstr "" -#: contrib/admin/templates/admin/404.html:10 -msgid "We're sorry, but the requested page could not be found." +#: contrib/localflavor/jp/jp_prefectures.py:9 +msgid "Yamagata" msgstr "" -#: contrib/admin/templates/admin/login.html:25 -#: contrib/admin/views/decorators.py:24 -msgid "Log in" +#: contrib/localflavor/jp/jp_prefectures.py:10 +msgid "Fukushima" msgstr "" -#: contrib/admin/templates/admin/index.html:17 -#, python-format -msgid "Models available in the %(name)s application." +#: contrib/localflavor/jp/jp_prefectures.py:11 +msgid "Ibaraki" msgstr "" -#: contrib/admin/templates/admin/index.html:18 -#, python-format -msgid "%(name)s" +#: contrib/localflavor/jp/jp_prefectures.py:12 +msgid "Tochigi" msgstr "" -#: contrib/admin/templates/admin/index.html:34 -msgid "Change" +#: contrib/localflavor/jp/jp_prefectures.py:13 +msgid "Gunma" msgstr "" -#: contrib/admin/templates/admin/index.html:44 -msgid "You don't have permission to edit anything." +#: contrib/localflavor/jp/jp_prefectures.py:14 +msgid "Saitama" msgstr "" -#: contrib/admin/templates/admin/index.html:52 -msgid "Recent Actions" +#: contrib/localflavor/jp/jp_prefectures.py:15 +msgid "Chiba" msgstr "" -#: contrib/admin/templates/admin/index.html:53 -msgid "My Actions" +#: contrib/localflavor/jp/jp_prefectures.py:16 +msgid "Tokyo" msgstr "" -#: contrib/admin/templates/admin/index.html:57 -msgid "None available" +#: contrib/localflavor/jp/jp_prefectures.py:17 +msgid "Kanagawa" msgstr "" -#: contrib/admin/templates/admin/base_site.html:4 -msgid "Django site admin" +#: contrib/localflavor/jp/jp_prefectures.py:18 +msgid "Yamanashi" msgstr "" -#: contrib/admin/templates/admin/base_site.html:7 -msgid "Django administration" +#: contrib/localflavor/jp/jp_prefectures.py:19 +msgid "Nagano" 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." +#: contrib/localflavor/jp/jp_prefectures.py:20 +msgid "Niigata" msgstr "" -#: contrib/admin/templates/admin/auth/user/add_form.html:12 -msgid "Username" +#: contrib/localflavor/jp/jp_prefectures.py:21 +msgid "Toyama" msgstr "" -#: contrib/admin/templates/admin/auth/user/add_form.html:18 -#: contrib/admin/templates/admin/auth/user/change_password.html:34 -msgid "Password" +#: contrib/localflavor/jp/jp_prefectures.py:22 +msgid "Ishikawa" msgstr "" -#: contrib/admin/templates/admin/auth/user/add_form.html:23 -#: contrib/admin/templates/admin/auth/user/change_password.html:39 -msgid "Password (again)" +#: contrib/localflavor/jp/jp_prefectures.py:23 +msgid "Fukui" 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." +#: contrib/localflavor/jp/jp_prefectures.py:24 +msgid "Gifu" 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>." +#: contrib/localflavor/jp/jp_prefectures.py:25 +msgid "Shizuoka" msgstr "" -#: contrib/admin/templates/widget/file.html:2 -msgid "Currently:" +#: contrib/localflavor/jp/jp_prefectures.py:26 +msgid "Aichi" msgstr "" -#: contrib/admin/templates/widget/file.html:3 -msgid "Change:" +#: contrib/localflavor/jp/jp_prefectures.py:27 +msgid "Mie" msgstr "" -#: contrib/admin/templates/widget/date_time.html:3 -msgid "Date:" +#: contrib/localflavor/jp/jp_prefectures.py:28 +msgid "Shiga" msgstr "" -#: contrib/admin/templates/widget/date_time.html:4 -msgid "Time:" +#: contrib/localflavor/jp/jp_prefectures.py:29 +msgid "Kyoto" msgstr "" -#: contrib/admin/templates/registration/logged_out.html:8 -msgid "Thanks for spending some quality time with the Web site today." +#: contrib/localflavor/jp/jp_prefectures.py:30 +msgid "Osaka" msgstr "" -#: contrib/admin/templates/registration/logged_out.html:10 -msgid "Log in again" +#: contrib/localflavor/jp/jp_prefectures.py:31 +msgid "Hyogo" msgstr "" -#: contrib/admin/templates/registration/password_reset_email.html:2 -msgid "You're receiving this e-mail because you requested a password reset" +#: contrib/localflavor/jp/jp_prefectures.py:32 +msgid "Nara" msgstr "" -#: contrib/admin/templates/registration/password_reset_email.html:3 -#, python-format -msgid "for your user account at %(site_name)s" +#: contrib/localflavor/jp/jp_prefectures.py:33 +msgid "Wakayama" msgstr "" -#: contrib/admin/templates/registration/password_reset_email.html:5 -#, python-format -msgid "Your new password is: %(new_password)s" +#: contrib/localflavor/jp/jp_prefectures.py:34 +msgid "Tottori" msgstr "" -#: contrib/admin/templates/registration/password_reset_email.html:7 -msgid "Feel free to change this password by going to this page:" +#: contrib/localflavor/jp/jp_prefectures.py:35 +msgid "Shimane" msgstr "" -#: contrib/admin/templates/registration/password_reset_email.html:11 -msgid "Your username, in case you've forgotten:" +#: contrib/localflavor/jp/jp_prefectures.py:36 +msgid "Okayama" msgstr "" -#: contrib/admin/templates/registration/password_reset_email.html:13 -msgid "Thanks for using our site!" +#: contrib/localflavor/jp/jp_prefectures.py:37 +msgid "Hiroshima" msgstr "" -#: contrib/admin/templates/registration/password_reset_email.html:15 -#, python-format -msgid "The %(site_name)s team" +#: contrib/localflavor/jp/jp_prefectures.py:38 +msgid "Yamaguchi" msgstr "" -#: 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" +#: contrib/localflavor/jp/jp_prefectures.py:39 +msgid "Tokushima" msgstr "" -#: contrib/admin/templates/registration/password_reset_done.html:6 -#: contrib/admin/templates/registration/password_reset_done.html:10 -msgid "Password reset successful" +#: contrib/localflavor/jp/jp_prefectures.py:40 +msgid "Kagawa" 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." +#: contrib/localflavor/jp/jp_prefectures.py:41 +msgid "Ehime" 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" +#: contrib/localflavor/jp/jp_prefectures.py:42 +msgid "Kochi" 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." +#: contrib/localflavor/jp/jp_prefectures.py:43 +msgid "Fukuoka" msgstr "" -#: contrib/admin/templates/registration/password_change_form.html:17 -msgid "Old password:" +#: contrib/localflavor/jp/jp_prefectures.py:44 +msgid "Saga" msgstr "" -#: contrib/admin/templates/registration/password_change_form.html:19 -msgid "New password:" +#: contrib/localflavor/jp/jp_prefectures.py:45 +msgid "Nagasaki" msgstr "" -#: contrib/admin/templates/registration/password_change_form.html:21 -msgid "Confirm password:" +#: contrib/localflavor/jp/jp_prefectures.py:46 +msgid "Kumamoto" msgstr "" -#: contrib/admin/templates/registration/password_change_form.html:23 -msgid "Change my password" +#: contrib/localflavor/jp/jp_prefectures.py:47 +msgid "Oita" msgstr "" -#: contrib/admin/templates/registration/password_change_done.html:6 -#: contrib/admin/templates/registration/password_change_done.html:10 -msgid "Password change successful" +#: contrib/localflavor/jp/jp_prefectures.py:48 +msgid "Miyazaki" msgstr "" -#: contrib/admin/templates/registration/password_change_done.html:12 -msgid "Your password was changed." +#: contrib/localflavor/jp/jp_prefectures.py:49 +msgid "Kagoshima" 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." +#: contrib/localflavor/jp/jp_prefectures.py:50 +msgid "Okinawa" msgstr "" -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "E-mail address:" +#: contrib/localflavor/nl/forms.py:25 +msgid "Enter a valid postal code" msgstr "" -#: contrib/admin/templates/registration/password_reset_form.html:16 -msgid "Reset my password" +#: contrib/localflavor/nl/forms.py:53 +msgid "Enter a valid phone number" msgstr "" -#: contrib/admin/views/main.py:223 -msgid "Site administration" +#: contrib/localflavor/nl/forms.py:76 +msgid "Enter a valid SoFi number" msgstr "" -#: contrib/admin/views/main.py:257 contrib/admin/views/auth.py:19 -#, python-format -msgid "The %(name)s \"%(obj)s\" was added successfully." +#: contrib/localflavor/nl/nl_provinces.py:4 +msgid "Drente" 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." +#: contrib/localflavor/nl/nl_provinces.py:5 +msgid "Flevoland" msgstr "" -#: contrib/admin/views/main.py:271 contrib/admin/views/main.py:356 -#, python-format -msgid "You may add another %s below." +#: contrib/localflavor/nl/nl_provinces.py:6 +msgid "Friesland" msgstr "" -#: contrib/admin/views/main.py:289 -#, python-format -msgid "Add %s" +#: contrib/localflavor/nl/nl_provinces.py:7 +msgid "Gelderland" msgstr "" -#: contrib/admin/views/main.py:335 -#, python-format -msgid "Added %s." +#: contrib/localflavor/nl/nl_provinces.py:8 +msgid "Groningen" msgstr "" -#: contrib/admin/views/main.py:337 -#, python-format -msgid "Changed %s." +#: contrib/localflavor/nl/nl_provinces.py:9 +msgid "Limburg" msgstr "" -#: contrib/admin/views/main.py:339 -#, python-format -msgid "Deleted %s." +#: contrib/localflavor/nl/nl_provinces.py:10 +msgid "Noord-Brabant" msgstr "" -#: contrib/admin/views/main.py:342 -msgid "No fields changed." +#: contrib/localflavor/nl/nl_provinces.py:11 +msgid "Noord-Holland" msgstr "" -#: contrib/admin/views/main.py:345 -#, python-format -msgid "The %(name)s \"%(obj)s\" was changed successfully." +#: contrib/localflavor/nl/nl_provinces.py:12 +msgid "Overijssel" msgstr "" -#: contrib/admin/views/main.py:353 -#, python-format +#: contrib/localflavor/nl/nl_provinces.py:13 +msgid "Utrecht" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:14 +msgid "Zeeland" +msgstr "" + +#: contrib/localflavor/nl/nl_provinces.py:15 +msgid "Zuid-Holland" +msgstr "" + +#: contrib/localflavor/no/forms.py:35 +msgid "Enter a valid Norwegian social security number." +msgstr "" + +#: contrib/localflavor/pe/forms.py:36 +msgid "This field requires 8 digits." +msgstr "" + +#: contrib/localflavor/pe/forms.py:59 +msgid "This field requires 11 digits." +msgstr "" + +#: contrib/localflavor/pl/forms.py:41 +msgid "National Identification Number consists of 11 digits." +msgstr "" + +#: contrib/localflavor/pl/forms.py:47 +msgid "Wrong checksum for the National Identification Number." +msgstr "" + +#: contrib/localflavor/pl/forms.py:72 msgid "" -"The %(name)s \"%(obj)s\" was added successfully. You may edit it again below." +"Enter a tax number field (NIP) in the format XXX-XXX-XX-XX or XX-XX-XXX-XXX." msgstr "" -#: contrib/admin/views/main.py:391 -#, python-format -msgid "Change %s" +#: contrib/localflavor/pl/forms.py:78 +msgid "Wrong checksum for the Tax Number (NIP)." msgstr "" -#: contrib/admin/views/main.py:476 -#, python-format -msgid "One or more %(fieldname)s in %(name)s: %(obj)s" +#: contrib/localflavor/pl/forms.py:107 +msgid "National Business Register Number (REGON) consists of 7 or 9 digits." msgstr "" -#: contrib/admin/views/main.py:481 -#, python-format -msgid "One or more %(fieldname)s in %(name)s:" +#: contrib/localflavor/pl/forms.py:113 +msgid "Wrong checksum for the National Business Register Number (REGON)." msgstr "" -#: contrib/admin/views/main.py:514 -#, python-format -msgid "The %(name)s \"%(obj)s\" was deleted successfully." +#: contrib/localflavor/pl/forms.py:148 +msgid "Enter a postal code in the format XX-XXX." msgstr "" -#: contrib/admin/views/main.py:517 -msgid "Are you sure?" +#: contrib/localflavor/pl/pl_voivodeships.py:8 +msgid "Lower Silesia" msgstr "" -#: contrib/admin/views/main.py:539 -#, python-format -msgid "Change history: %s" +#: contrib/localflavor/pl/pl_voivodeships.py:9 +msgid "Kuyavia-Pomerania" msgstr "" -#: contrib/admin/views/main.py:573 -#, python-format -msgid "Select %s" +#: contrib/localflavor/pl/pl_voivodeships.py:10 +msgid "Lublin" msgstr "" -#: contrib/admin/views/main.py:573 -#, python-format -msgid "Select %s to change" +#: contrib/localflavor/pl/pl_voivodeships.py:11 +msgid "Lubusz" msgstr "" -#: contrib/admin/views/main.py:768 -msgid "Database error" +#: contrib/localflavor/pl/pl_voivodeships.py:12 +msgid "Lodz" 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/pl/pl_voivodeships.py:13 +msgid "Lesser Poland" 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." +#: contrib/localflavor/pl/pl_voivodeships.py:14 +msgid "Masovia" msgstr "" -#: contrib/admin/views/decorators.py:83 -msgid "Usernames cannot contain the '@' character." +#: contrib/localflavor/pl/pl_voivodeships.py:15 +msgid "Opole" msgstr "" -#: contrib/admin/views/decorators.py:85 -#, python-format -msgid "Your e-mail address is not your username. Try '%s' instead." +#: contrib/localflavor/pl/pl_voivodeships.py:16 +msgid "Subcarpatia" msgstr "" -#: contrib/admin/views/doc.py:46 contrib/admin/views/doc.py:48 -#: contrib/admin/views/doc.py:50 -msgid "tag:" +#: contrib/localflavor/pl/pl_voivodeships.py:17 +msgid "Podlasie" msgstr "" -#: contrib/admin/views/doc.py:77 contrib/admin/views/doc.py:79 -#: contrib/admin/views/doc.py:81 -msgid "filter:" +#: contrib/localflavor/pl/pl_voivodeships.py:18 +msgid "Pomerania" msgstr "" -#: contrib/admin/views/doc.py:135 contrib/admin/views/doc.py:137 -#: contrib/admin/views/doc.py:139 -msgid "view:" +#: contrib/localflavor/pl/pl_voivodeships.py:19 +msgid "Silesia" msgstr "" -#: contrib/admin/views/doc.py:164 -#, python-format -msgid "App %r not found" +#: contrib/localflavor/pl/pl_voivodeships.py:20 +msgid "Swietokrzyskie" msgstr "" -#: contrib/admin/views/doc.py:171 -#, python-format -msgid "Model %(name)r not found in app %(label)r" +#: contrib/localflavor/pl/pl_voivodeships.py:21 +msgid "Warmia-Masuria" msgstr "" -#: contrib/admin/views/doc.py:183 -#, python-format -msgid "the related `%(label)s.%(type)s` object" +#: contrib/localflavor/pl/pl_voivodeships.py:22 +msgid "Greater Poland" 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/pl/pl_voivodeships.py:23 +msgid "West Pomerania" msgstr "" -#: contrib/admin/views/doc.py:214 -#, python-format -msgid "related `%(label)s.%(name)s` objects" +#: contrib/localflavor/sk/forms.py:32 +msgid "Enter a postal code in the format XXXXX or XXX XX." msgstr "" -#: contrib/admin/views/doc.py:219 -#, python-format -msgid "all %s" +#: contrib/localflavor/sk/sk_districts.py:8 +msgid "Banska Bystrica" msgstr "" -#: contrib/admin/views/doc.py:224 -#, python-format -msgid "number of %s" +#: contrib/localflavor/sk/sk_districts.py:9 +msgid "Banska Stiavnica" msgstr "" -#: contrib/admin/views/doc.py:229 -#, python-format -msgid "Fields on %s objects" +#: contrib/localflavor/sk/sk_districts.py:10 +msgid "Bardejov" 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" +#: contrib/localflavor/sk/sk_districts.py:11 +msgid "Banovce nad Bebravou" msgstr "" -#: contrib/admin/views/doc.py:292 -msgid "Boolean (Either True or False)" +#: contrib/localflavor/sk/sk_districts.py:12 +msgid "Brezno" msgstr "" -#: contrib/admin/views/doc.py:293 contrib/admin/views/doc.py:311 -#, python-format -msgid "String (up to %(maxlength)s)" +#: contrib/localflavor/sk/sk_districts.py:13 +msgid "Bratislava I" msgstr "" -#: contrib/admin/views/doc.py:294 -msgid "Comma-separated integers" +#: contrib/localflavor/sk/sk_districts.py:14 +msgid "Bratislava II" msgstr "" -#: contrib/admin/views/doc.py:295 -msgid "Date (without time)" +#: contrib/localflavor/sk/sk_districts.py:15 +msgid "Bratislava III" msgstr "" -#: contrib/admin/views/doc.py:296 -msgid "Date (with time)" +#: contrib/localflavor/sk/sk_districts.py:16 +msgid "Bratislava IV" msgstr "" -#: contrib/admin/views/doc.py:297 -msgid "E-mail address" +#: contrib/localflavor/sk/sk_districts.py:17 +msgid "Bratislava V" msgstr "" -#: contrib/admin/views/doc.py:298 contrib/admin/views/doc.py:299 -#: contrib/admin/views/doc.py:302 -msgid "File path" +#: contrib/localflavor/sk/sk_districts.py:18 +msgid "Bytca" msgstr "" -#: contrib/admin/views/doc.py:300 -msgid "Decimal number" +#: contrib/localflavor/sk/sk_districts.py:19 +msgid "Cadca" msgstr "" -#: contrib/admin/views/doc.py:306 -msgid "Boolean (Either True, False or None)" +#: contrib/localflavor/sk/sk_districts.py:20 +msgid "Detva" msgstr "" -#: contrib/admin/views/doc.py:307 -msgid "Relation to parent model" +#: contrib/localflavor/sk/sk_districts.py:21 +msgid "Dolny Kubin" msgstr "" -#: contrib/admin/views/doc.py:308 -msgid "Phone number" +#: contrib/localflavor/sk/sk_districts.py:22 +msgid "Dunajska Streda" msgstr "" -#: contrib/admin/views/doc.py:313 -msgid "Text" +#: contrib/localflavor/sk/sk_districts.py:23 +msgid "Galanta" msgstr "" -#: contrib/admin/views/doc.py:314 -msgid "Time" +#: contrib/localflavor/sk/sk_districts.py:24 +msgid "Gelnica" msgstr "" -#: contrib/admin/views/doc.py:316 -msgid "U.S. state (two uppercase letters)" +#: contrib/localflavor/sk/sk_districts.py:25 +msgid "Hlohovec" msgstr "" -#: contrib/admin/views/doc.py:317 -msgid "XML text" +#: contrib/localflavor/sk/sk_districts.py:26 +msgid "Humenne" msgstr "" -#: contrib/admin/views/doc.py:343 -#, python-format -msgid "%s does not appear to be a urlpattern object" +#: contrib/localflavor/sk/sk_districts.py:27 +msgid "Ilava" msgstr "" -#: contrib/admin/views/auth.py:30 -msgid "Add user" +#: contrib/localflavor/sk/sk_districts.py:28 +msgid "Kezmarok" msgstr "" -#: contrib/admin/views/auth.py:57 -msgid "Password changed successfully." +#: contrib/localflavor/sk/sk_districts.py:29 +msgid "Komarno" msgstr "" -#: contrib/admin/views/auth.py:64 -#, python-format -msgid "Change password: %s" +#: contrib/localflavor/sk/sk_districts.py:30 +msgid "Kosice I" msgstr "" -#: newforms/fields.py:103 newforms/fields.py:256 -#, python-format -msgid "Ensure this value has at most %d characters." +#: contrib/localflavor/sk/sk_districts.py:31 +msgid "Kosice II" msgstr "" -#: newforms/fields.py:105 newforms/fields.py:258 -#, python-format -msgid "Ensure this value has at least %d characters." +#: contrib/localflavor/sk/sk_districts.py:32 +msgid "Kosice III" msgstr "" -#: newforms/fields.py:128 core/validators.py:120 -msgid "Enter a whole number." +#: contrib/localflavor/sk/sk_districts.py:33 +msgid "Kosice IV" msgstr "" -#: newforms/fields.py:130 -#, python-format -msgid "Ensure this value is less than or equal to %s." +#: contrib/localflavor/sk/sk_districts.py:34 +msgid "Kosice - okolie" msgstr "" -#: newforms/fields.py:132 -#, python-format -msgid "Ensure this value is greater than or equal to %s." +#: contrib/localflavor/sk/sk_districts.py:35 +msgid "Krupina" msgstr "" -#: newforms/fields.py:165 -msgid "Enter a valid date." +#: contrib/localflavor/sk/sk_districts.py:36 +msgid "Kysucke Nove Mesto" msgstr "" -#: newforms/fields.py:192 -msgid "Enter a valid time." +#: contrib/localflavor/sk/sk_districts.py:37 +msgid "Levice" msgstr "" -#: newforms/fields.py:228 -msgid "Enter a valid date/time." +#: contrib/localflavor/sk/sk_districts.py:38 +msgid "Levoca" msgstr "" -#: newforms/fields.py:242 -msgid "Enter a valid value." +#: contrib/localflavor/sk/sk_districts.py:39 +msgid "Liptovsky Mikulas" msgstr "" -#: newforms/fields.py:271 core/validators.py:162 -msgid "Enter a valid e-mail address." +#: contrib/localflavor/sk/sk_districts.py:40 +msgid "Lucenec" msgstr "" -#: newforms/fields.py:289 newforms/fields.py:311 -msgid "Enter a valid URL." +#: contrib/localflavor/sk/sk_districts.py:41 +msgid "Malacky" msgstr "" -#: newforms/fields.py:313 -msgid "This URL appears to be a broken link." +#: contrib/localflavor/sk/sk_districts.py:42 +msgid "Martin" msgstr "" -#: newforms/fields.py:362 newforms/models.py:165 -msgid "Select a valid choice. That choice is not one of the available choices." +#: contrib/localflavor/sk/sk_districts.py:43 +msgid "Medzilaborce" msgstr "" -#: newforms/fields.py:380 newforms/fields.py:456 newforms/models.py:182 -msgid "Enter a list of values." +#: contrib/localflavor/sk/sk_districts.py:44 +msgid "Michalovce" msgstr "" -#: newforms/fields.py:389 newforms/models.py:188 -#, python-format -msgid "Select a valid choice. %s is not one of the available choices." +#: contrib/localflavor/sk/sk_districts.py:45 +msgid "Myjava" msgstr "" -#: template/defaultfilters.py:491 -msgid "yes,no,maybe" +#: contrib/localflavor/sk/sk_districts.py:46 +msgid "Namestovo" msgstr "" -#: views/generic/create_update.py:43 -#, python-format -msgid "The %(verbose_name)s was created successfully." +#: contrib/localflavor/sk/sk_districts.py:47 +msgid "Nitra" msgstr "" -#: views/generic/create_update.py:117 -#, python-format -msgid "The %(verbose_name)s was updated successfully." +#: contrib/localflavor/sk/sk_districts.py:48 +msgid "Nove Mesto nad Vahom" msgstr "" -#: views/generic/create_update.py:184 -#, python-format -msgid "The %(verbose_name)s was deleted." +#: contrib/localflavor/sk/sk_districts.py:49 +msgid "Nove Zamky" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:50 +msgid "Partizanske" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:51 +msgid "Pezinok" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:52 +msgid "Piestany" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:53 +msgid "Poltar" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:54 +msgid "Poprad" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:55 +msgid "Povazska Bystrica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:56 +msgid "Presov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:57 +msgid "Prievidza" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:58 +msgid "Puchov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:59 +msgid "Revuca" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:60 +msgid "Rimavska Sobota" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:61 +msgid "Roznava" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:62 +msgid "Ruzomberok" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:63 +msgid "Sabinov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:64 +msgid "Senec" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:65 +msgid "Senica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:66 +msgid "Skalica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:67 +msgid "Snina" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:68 +msgid "Sobrance" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:69 +msgid "Spisska Nova Ves" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:70 +msgid "Stara Lubovna" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:71 +msgid "Stropkov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:72 +msgid "Svidnik" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:73 +msgid "Sala" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:74 +msgid "Topolcany" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:75 +msgid "Trebisov" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:76 +msgid "Trencin" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:77 +msgid "Trnava" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:78 +msgid "Turcianske Teplice" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:79 +msgid "Tvrdosin" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:80 +msgid "Velky Krtis" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:81 +msgid "Vranov nad Toplou" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:82 +msgid "Zlate Moravce" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:83 +msgid "Zvolen" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:84 +msgid "Zarnovica" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:85 +msgid "Ziar nad Hronom" +msgstr "" + +#: contrib/localflavor/sk/sk_districts.py:86 +msgid "Zilina" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:8 +msgid "Banska Bystrica region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:9 +msgid "Bratislava region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:10 +msgid "Kosice region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:11 +msgid "Nitra region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:12 +msgid "Presov region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:13 +msgid "Trencin region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:14 +msgid "Trnava region" +msgstr "" + +#: contrib/localflavor/sk/sk_regions.py:15 +msgid "Zilina region" +msgstr "" + +#: contrib/localflavor/uk/forms.py:18 +msgid "Enter a postcode. A space is required between the two postcode parts." +msgstr "" + +#: contrib/localflavor/us/forms.py:18 +msgid "Enter a zip code in the format XXXXX or XXXXX-XXXX." +msgstr "" + +#: contrib/localflavor/us/forms.py:51 +msgid "Enter a valid U.S. Social Security number in XXX-XX-XXXX format." +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 "" + +#: 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 "" -#: core/validators.py:64 +#: contrib/redirects/models.py:13 +msgid "redirect" +msgstr "" + +#: contrib/redirects/models.py:14 +msgid "redirects" +msgstr "" + +#: contrib/sessions/models.py:80 +msgid "session key" +msgstr "" + +#: contrib/sessions/models.py:81 +msgid "session data" +msgstr "" + +#: contrib/sessions/models.py:82 +msgid "expire date" +msgstr "" + +#: contrib/sessions/models.py:87 +msgid "session" +msgstr "" + +#: contrib/sessions/models.py:88 +msgid "sessions" +msgstr "" + +#: contrib/sites/models.py:32 +msgid "domain name" +msgstr "" + +#: contrib/sites/models.py:33 +msgid "display name" +msgstr "" + +#: contrib/sites/models.py:37 +msgid "site" +msgstr "" + +#: contrib/sites/models.py:38 +msgid "sites" +msgstr "" + +#: core/validators.py:72 msgid "This value must contain only letters, numbers and underscores." msgstr "" -#: core/validators.py:68 +#: core/validators.py:76 msgid "" "This value must contain only letters, numbers, underscores, dashes or " "slashes." msgstr "" -#: core/validators.py:72 +#: core/validators.py:80 msgid "This value must contain only letters, numbers, underscores or hyphens." msgstr "" -#: core/validators.py:76 +#: core/validators.py:84 msgid "Uppercase letters are not allowed here." msgstr "" -#: core/validators.py:80 +#: core/validators.py:88 msgid "Lowercase letters are not allowed here." msgstr "" -#: core/validators.py:87 +#: core/validators.py:95 msgid "Enter only digits separated by commas." msgstr "" -#: core/validators.py:99 +#: core/validators.py:107 msgid "Enter valid e-mail addresses separated by commas." msgstr "" -#: core/validators.py:103 +#: core/validators.py:111 msgid "Please enter a valid IP address." msgstr "" -#: core/validators.py:107 +#: core/validators.py:115 msgid "Empty values are not allowed here." msgstr "" -#: core/validators.py:111 +#: core/validators.py:119 msgid "Non-numeric characters aren't allowed here." msgstr "" -#: core/validators.py:115 +#: core/validators.py:123 msgid "This value can't be comprised solely of digits." msgstr "" -#: core/validators.py:124 +#: core/validators.py:128 newforms/fields.py:157 +msgid "Enter a whole number." +msgstr "" + +#: core/validators.py:132 msgid "Only alphabetical characters are allowed here." msgstr "" -#: core/validators.py:139 +#: core/validators.py:147 msgid "Year must be 1900 or later." msgstr "" -#: core/validators.py:143 +#: core/validators.py:151 #, python-format msgid "Invalid date: %s" msgstr "" -#: core/validators.py:153 +#: core/validators.py:156 db/models/fields/__init__.py:509 +msgid "Enter a valid date in YYYY-MM-DD format." +msgstr "" + +#: core/validators.py:161 msgid "Enter a valid time in HH:MM format." msgstr "" -#: core/validators.py:178 +#: core/validators.py:165 db/models/fields/__init__.py:583 +msgid "Enter a valid date/time in YYYY-MM-DD HH:MM format." +msgstr "" + +#: core/validators.py:170 newforms/fields.py:408 +msgid "Enter a valid e-mail address." +msgstr "" + +#: core/validators.py:182 core/validators.py:474 newforms/fields.py:438 +#: oldforms/__init__.py:687 +msgid "No file was submitted. Check the encoding type on the form." +msgstr "" + +#: core/validators.py:193 newforms/fields.py:462 msgid "" "Upload a valid image. The file you uploaded was either not an image or a " "corrupted image." msgstr "" -#: core/validators.py:185 +#: core/validators.py:200 #, python-format msgid "The URL %s does not point to a valid image." msgstr "" -#: core/validators.py:189 +#: core/validators.py:204 #, python-format msgid "Phone numbers must be in XXX-XXX-XXXX format. \"%s\" is invalid." msgstr "" -#: core/validators.py:197 +#: core/validators.py:212 #, python-format msgid "The URL %s does not point to a valid QuickTime video." msgstr "" -#: core/validators.py:201 +#: core/validators.py:216 msgid "A valid URL is required." msgstr "" -#: core/validators.py:215 +#: core/validators.py:230 #, python-format msgid "" "Valid HTML is required. Specific errors are:\n" "%s" msgstr "" -#: core/validators.py:222 +#: core/validators.py:237 #, python-format msgid "Badly formed XML: %s" msgstr "" -#: core/validators.py:239 +#: core/validators.py:254 #, python-format msgid "Invalid URL: %s" msgstr "" -#: core/validators.py:244 core/validators.py:246 +#: core/validators.py:259 core/validators.py:261 #, python-format msgid "The URL %s is a broken link." msgstr "" -#: core/validators.py:252 +#: core/validators.py:267 msgid "Enter a valid U.S. state abbreviation." msgstr "" -#: core/validators.py:266 +#: core/validators.py:281 #, 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] "" msgstr[1] "" -#: core/validators.py:273 +#: core/validators.py:288 #, python-format msgid "This field must match the '%s' field." msgstr "" -#: core/validators.py:292 +#: core/validators.py:307 msgid "Please enter something for at least one field." msgstr "" -#: core/validators.py:301 core/validators.py:312 +#: core/validators.py:316 core/validators.py:327 msgid "Please enter both fields or leave them both empty." msgstr "" -#: core/validators.py:320 +#: core/validators.py:335 #, python-format msgid "This field must be given if %(field)s is %(value)s" msgstr "" -#: core/validators.py:333 +#: core/validators.py:348 #, python-format msgid "This field must be given if %(field)s is not %(value)s" msgstr "" -#: core/validators.py:352 +#: core/validators.py:367 msgid "Duplicate values are not allowed." msgstr "" -#: core/validators.py:367 +#: core/validators.py:382 #, python-format msgid "This value must be between %(lower)s and %(upper)s." msgstr "" -#: core/validators.py:369 +#: core/validators.py:384 #, python-format msgid "This value must be at least %s." msgstr "" -#: core/validators.py:371 +#: core/validators.py:386 #, python-format msgid "This value must be no more than %s." msgstr "" -#: core/validators.py:407 +#: core/validators.py:427 #, python-format msgid "This value must be a power of %s." msgstr "" -#: core/validators.py:418 +#: core/validators.py:437 msgid "Please enter a valid decimal number." msgstr "" -#: core/validators.py:422 +#: core/validators.py:444 #, python-format msgid "Please enter a valid decimal number with at most %s total digit." msgid_plural "" @@ -2556,7 +3178,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: core/validators.py:425 +#: core/validators.py:447 #, python-format msgid "" "Please enter a valid decimal number with a whole part of at most %s digit." @@ -2565,7 +3187,7 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: core/validators.py:428 +#: core/validators.py:450 #, python-format msgid "Please enter a valid decimal number with at most %s decimal place." msgid_plural "" @@ -2573,73 +3195,574 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: core/validators.py:438 +#: core/validators.py:458 +msgid "Please enter a valid floating point number." +msgstr "" + +#: core/validators.py:467 #, python-format msgid "Make sure your uploaded file is at least %s bytes big." msgstr "" -#: core/validators.py:439 +#: core/validators.py:468 #, python-format msgid "Make sure your uploaded file is at most %s bytes big." msgstr "" -#: core/validators.py:456 +#: core/validators.py:485 msgid "The format for this field is wrong." msgstr "" -#: core/validators.py:471 +#: core/validators.py:500 msgid "This field is invalid." msgstr "" -#: core/validators.py:507 +#: core/validators.py:536 #, python-format msgid "Could not retrieve anything from %s." msgstr "" -#: core/validators.py:510 +#: core/validators.py:539 #, python-format msgid "" "The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'." msgstr "" -#: core/validators.py:543 +#: core/validators.py:572 #, python-format msgid "" "Please close the unclosed %(tag)s tag from line %(line)s. (Line starts with " "\"%(start)s\".)" msgstr "" -#: core/validators.py:547 +#: core/validators.py:576 #, 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:552 +#: core/validators.py:581 #, python-format msgid "" "\"%(attr)s\" on line %(line)s is an invalid attribute. (Line starts with \"%" "(start)s\".)" msgstr "" -#: core/validators.py:557 +#: core/validators.py:586 #, python-format msgid "" "\"<%(tag)s>\" on line %(line)s is an invalid tag. (Line starts with \"%" "(start)s\".)" msgstr "" -#: core/validators.py:561 +#: core/validators.py:590 #, 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:566 +#: core/validators.py:595 #, 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:308 +#, python-format +msgid "%(object)s with this %(type)s already exists for the given %(field)s." +msgstr "" + +#: db/models/fields/__init__.py:52 +#, python-format +msgid "%(optname)s with this %(fieldname)s already exists." +msgstr "" + +#: db/models/fields/__init__.py:161 db/models/fields/__init__.py:318 +#: db/models/fields/__init__.py:735 db/models/fields/__init__.py:746 +#: newforms/fields.py:45 oldforms/__init__.py:374 +msgid "This field is required." +msgstr "" + +#: db/models/fields/__init__.py:418 +msgid "This value must be an integer." +msgstr "" + +#: db/models/fields/__init__.py:454 +msgid "This value must be either True or False." +msgstr "" + +#: db/models/fields/__init__.py:475 +msgid "This field cannot be null." +msgstr "" + +#: db/models/fields/__init__.py:644 +msgid "This value must be a decimal number." +msgstr "" + +#: db/models/fields/__init__.py:755 +msgid "Enter a valid filename." +msgstr "" + +#: db/models/fields/__init__.py:904 +msgid "This value must be either None, True or False." +msgstr "" + +#: db/models/fields/related.py:658 +msgid "Separate multiple IDs with commas." +msgstr "" + +#: db/models/fields/related.py:660 +msgid "" +"Hold down \"Control\", or \"Command\" on a Mac, to select more than one." +msgstr "" + +#: db/models/fields/related.py:707 +#, 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] "" + +#: newforms/fields.py:46 +msgid "Enter a valid value." +msgstr "" + +#: newforms/fields.py:129 +#, python-format +msgid "Ensure this value has at most %(max)d characters (it has %(length)d)." +msgstr "" + +#: newforms/fields.py:130 +#, python-format +msgid "Ensure this value has at least %(min)d characters (it has %(length)d)." +msgstr "" + +#: newforms/fields.py:158 newforms/fields.py:187 newforms/fields.py:216 +#, python-format +msgid "Ensure this value is less than or equal to %s." +msgstr "" + +#: newforms/fields.py:159 newforms/fields.py:188 newforms/fields.py:217 +#, python-format +msgid "Ensure this value is greater than or equal to %s." +msgstr "" + +#: newforms/fields.py:186 newforms/fields.py:215 +msgid "Enter a number." +msgstr "" + +#: newforms/fields.py:218 +#, python-format +msgid "Ensure that there are no more than %s digits in total." +msgstr "" + +#: newforms/fields.py:219 +#, python-format +msgid "Ensure that there are no more than %s decimal places." +msgstr "" + +#: newforms/fields.py:220 +#, python-format +msgid "Ensure that there are no more than %s digits before the decimal point." +msgstr "" + +#: newforms/fields.py:268 newforms/fields.py:724 +msgid "Enter a valid date." +msgstr "" + +#: newforms/fields.py:301 newforms/fields.py:725 +msgid "Enter a valid time." +msgstr "" + +#: newforms/fields.py:340 +msgid "Enter a valid date/time." +msgstr "" + +#: newforms/fields.py:439 +msgid "No file was submitted." +msgstr "" + +#: newforms/fields.py:440 oldforms/__init__.py:689 +msgid "The submitted file is empty." +msgstr "" + +#: newforms/fields.py:498 +msgid "Enter a valid URL." +msgstr "" + +#: newforms/fields.py:499 +msgid "This URL appears to be a broken link." +msgstr "" + +#: newforms/fields.py:560 newforms/models.py:155 +msgid "Select a valid choice. That choice is not one of the available choices." +msgstr "" + +#: newforms/fields.py:599 +#, python-format +msgid "Select a valid choice. %(value)s is not one of the available choices." +msgstr "" + +#: newforms/fields.py:600 newforms/fields.py:662 newforms/models.py:215 +msgid "Enter a list of values." +msgstr "" + +#: newforms/fields.py:753 +msgid "Enter a valid IPv4 address." +msgstr "" + +#: newforms/models.py:216 +#, python-format +msgid "Select a valid choice. %s is not one of the available choices." +msgstr "" + +#: oldforms/__init__.py:409 +#, 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:414 +msgid "Line breaks are not allowed here." +msgstr "" + +#: oldforms/__init__.py:512 oldforms/__init__.py:586 oldforms/__init__.py:625 +#, python-format +msgid "Select a valid choice; '%(data)s' is not in %(choices)s." +msgstr "" + +#: oldforms/__init__.py:745 +msgid "Enter a whole number between -32,768 and 32,767." +msgstr "" + +#: oldforms/__init__.py:755 +msgid "Enter a positive number." +msgstr "" + +#: oldforms/__init__.py:765 +msgid "Enter a whole number between 0 and 32,767." +msgstr "" + +#: template/defaultfilters.py:658 +msgid "yes,no,maybe" +msgstr "" + +#: template/defaultfilters.py:689 +#, python-format +msgid "%(size)d byte" +msgid_plural "%(size)d bytes" +msgstr[0] "" +msgstr[1] "" + +#: template/defaultfilters.py:691 +#, python-format +msgid "%.1f KB" +msgstr "" + +#: template/defaultfilters.py:693 +#, python-format +msgid "%.1f MB" +msgstr "" + +#: template/defaultfilters.py:694 +#, python-format +msgid "%.1f GB" +msgstr "" + +#: utils/dateformat.py:41 +msgid "p.m." +msgstr "" + +#: utils/dateformat.py:42 +msgid "a.m." +msgstr "" + +#: utils/dateformat.py:47 +msgid "PM" +msgstr "" + +#: utils/dateformat.py:48 +msgid "AM" +msgstr "" + +#: utils/dateformat.py:97 +msgid "midnight" +msgstr "" + +#: utils/dateformat.py:99 +msgid "noon" +msgstr "" + +#: 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:10 +msgid "Mon" +msgstr "" + +#: utils/dates.py:10 +msgid "Tue" +msgstr "" + +#: utils/dates.py:10 +msgid "Wed" +msgstr "" + +#: utils/dates.py:10 +msgid "Thu" +msgstr "" + +#: utils/dates.py:10 +msgid "Fri" +msgstr "" + +#: utils/dates.py:11 +msgid "Sat" +msgstr "" + +#: utils/dates.py:11 +msgid "Sun" +msgstr "" + +#: utils/dates.py:18 +msgid "January" +msgstr "" + +#: utils/dates.py:18 +msgid "February" +msgstr "" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "March" +msgstr "" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "April" +msgstr "" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "May" +msgstr "" + +#: utils/dates.py:18 utils/dates.py:31 +msgid "June" +msgstr "" + +#: utils/dates.py:19 utils/dates.py:31 +msgid "July" +msgstr "" + +#: utils/dates.py:19 +msgid "August" +msgstr "" + +#: utils/dates.py:19 +msgid "September" +msgstr "" + +#: utils/dates.py:19 +msgid "October" +msgstr "" + +#: utils/dates.py:19 +msgid "November" +msgstr "" + +#: utils/dates.py:20 +msgid "December" +msgstr "" + +#: utils/dates.py:23 +msgid "jan" +msgstr "" + +#: utils/dates.py:23 +msgid "feb" +msgstr "" + +#: utils/dates.py:23 +msgid "mar" +msgstr "" + +#: utils/dates.py:23 +msgid "apr" +msgstr "" + +#: utils/dates.py:23 +msgid "may" +msgstr "" + +#: utils/dates.py:23 +msgid "jun" +msgstr "" + +#: utils/dates.py:24 +msgid "jul" +msgstr "" + +#: utils/dates.py:24 +msgid "aug" +msgstr "" + +#: utils/dates.py:24 +msgid "sep" +msgstr "" + +#: utils/dates.py:24 +msgid "oct" +msgstr "" + +#: utils/dates.py:24 +msgid "nov" +msgstr "" + +#: utils/dates.py:24 +msgid "dec" +msgstr "" + +#: utils/dates.py:31 +msgid "Jan." +msgstr "" + +#: utils/dates.py:31 +msgid "Feb." +msgstr "" + +#: utils/dates.py:32 +msgid "Aug." +msgstr "" + +#: utils/dates.py:32 +msgid "Sept." +msgstr "" + +#: utils/dates.py:32 +msgid "Oct." +msgstr "" + +#: utils/dates.py:32 +msgid "Nov." +msgstr "" + +#: utils/dates.py:32 +msgid "Dec." +msgstr "" + +#: utils/text.py:127 +msgid "or" +msgstr "" + +#: utils/timesince.py:21 +msgid "year" +msgid_plural "years" +msgstr[0] "" +msgstr[1] "" + +#: utils/timesince.py:22 +msgid "month" +msgid_plural "months" +msgstr[0] "" +msgstr[1] "" + +#: utils/timesince.py:23 +msgid "week" +msgid_plural "weeks" +msgstr[0] "" +msgstr[1] "" + +#: utils/timesince.py:24 +msgid "day" +msgid_plural "days" +msgstr[0] "" +msgstr[1] "" + +#: utils/timesince.py:25 +msgid "hour" +msgid_plural "hours" +msgstr[0] "" +msgstr[1] "" + +#: utils/timesince.py:26 +msgid "minute" +msgid_plural "minutes" +msgstr[0] "" +msgstr[1] "" + +#: utils/timesince.py:46 +msgid "minutes" +msgstr "" + +#: utils/timesince.py:51 +#, python-format +msgid "%(number)d %(type)s" +msgstr "" + +#: utils/timesince.py:57 +#, python-format +msgid ", %(number)d %(type)s" +msgstr "" + +#: utils/translation/trans_real.py:399 +msgid "DATE_FORMAT" +msgstr "N j, Y" + +#: utils/translation/trans_real.py:400 +msgid "DATETIME_FORMAT" +msgstr "N j, Y, P" + +#: utils/translation/trans_real.py:401 +msgid "TIME_FORMAT" +msgstr "P" + +#: utils/translation/trans_real.py:417 +msgid "YEAR_MONTH_FORMAT" +msgstr "F Y" + +#: utils/translation/trans_real.py:418 +msgid "MONTH_DAY_FORMAT" +msgstr "F j" + +#: views/generic/create_update.py:43 +#, python-format +msgid "The %(verbose_name)s was created successfully." +msgstr "" + +#: views/generic/create_update.py:117 +#, python-format +msgid "The %(verbose_name)s was updated successfully." +msgstr "" + +#: views/generic/create_update.py:184 +#, python-format +msgid "The %(verbose_name)s was deleted." +msgstr "" diff --git a/django/conf/locale/en/LC_MESSAGES/djangojs.po b/django/conf/locale/en/LC_MESSAGES/djangojs.po index 802e0db605..c90b390589 100644 --- a/django/conf/locale/en/LC_MESSAGES/djangojs.po +++ b/django/conf/locale/en/LC_MESSAGES/djangojs.po @@ -7,12 +7,12 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-12-09 11:51+0100\n" +"POT-Creation-Date: 2007-11-29 10:58-0600\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "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" #: contrib/admin/media/js/SelectFilter2.js:33 @@ -45,64 +45,73 @@ msgstr "" msgid "Clear all" msgstr "" -#: contrib/admin/media/js/dateparse.js:26 #: 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/dateparse.js:27 +#: 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/calendar.js:25 -msgid "S M T W T F S" +#: 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:45 -#: contrib/admin/media/js/admin/DateTimeShortcuts.js:80 +#: 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 "" -#: 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/contrib/admin/templates/admin_doc/template_filter_index.html b/django/contrib/admin/templates/admin_doc/template_filter_index.html index f67f14eb35..902396d416 100644 --- a/django/contrib/admin/templates/admin_doc/template_filter_index.html +++ b/django/contrib/admin/templates/admin_doc/template_filter_index.html @@ -13,7 +13,7 @@ {% for library in filter_libraries %} <div class="module"> <h2>{% if library.grouper %}{{ library.grouper }}{% else %}Built-in filters{% endif %}</h2> - {% if library.grouper %}<p class="small quiet">To use these filters, put <code>{% templatetag openblock %} load {{ library.grouper }} {% templatetag closeblock %}</code> in your template before using the filter.</p><hr>{% endif %} + {% if library.grouper %}<p class="small quiet">To use these filters, put <code>{% templatetag openblock %} load {{ library.grouper }} {% templatetag closeblock %}</code> in your template before using the filter.</p><hr />{% endif %} {% for filter in library.list|dictsort:"name" %} <h3 id="{{ filter.name }}">{{ filter.name }}</h3> <p>{{ filter.title }}</p> diff --git a/django/contrib/admin/templates/admin_doc/template_tag_index.html b/django/contrib/admin/templates/admin_doc/template_tag_index.html index 9bd66b70e7..ea49529393 100644 --- a/django/contrib/admin/templates/admin_doc/template_tag_index.html +++ b/django/contrib/admin/templates/admin_doc/template_tag_index.html @@ -13,7 +13,7 @@ {% for library in tag_libraries %} <div class="module"> <h2>{% if library.grouper %}{{ library.grouper }}{% else %}Built-in tags{% endif %}</h2> - {% if library.grouper %}<p class="small quiet">To use these tags, put <code>{% templatetag openblock %} load {{ library.grouper }} {% templatetag closeblock %}</code> in your template before using the tag.</p><hr>{% endif %} + {% if library.grouper %}<p class="small quiet">To use these tags, put <code>{% templatetag openblock %} load {{ library.grouper }} {% templatetag closeblock %}</code> in your template before using the tag.</p><hr />{% endif %} {% for tag in library.list|dictsort:"name" %} <h3 id="{{ tag.name }}">{{ tag.name }}</h3> <h4>{{ tag.title }}</h4> diff --git a/django/contrib/admin/templates/admin_doc/view_index.html b/django/contrib/admin/templates/admin_doc/view_index.html index 47f99350a3..1ed5ba2ac1 100644 --- a/django/contrib/admin/templates/admin_doc/view_index.html +++ b/django/contrib/admin/templates/admin_doc/view_index.html @@ -29,10 +29,10 @@ {% for view in site_views.list|dictsort:"url" %}
{% ifchanged %}
-<h3><a href="{{ view.module }}.{{ view.name }}/"/>{{ view.url|escape }}</a></h3>
+<h3><a href="{{ view.module }}.{{ view.name }}/">{{ view.url|escape }}</a></h3>
<p class="small quiet">View function: {{ view.module }}.{{ view.name }}</p>
<p>{{ view.title }}</p>
-<hr>
+<hr />
{% endifchanged %}
{% endfor %}
</div>
diff --git a/django/contrib/comments/models.py b/django/contrib/comments/models.py index a88d2b3a8e..912f5a6cd2 100644 --- a/django/contrib/comments/models.py +++ b/django/contrib/comments/models.py @@ -102,7 +102,7 @@ class Comment(models.Model): date_hierarchy = 'submit_date' search_fields = ('comment', 'user__username') - def __repr__(self): + def __unicode__(self): return "%s: %s..." % (self.user.username, self.comment[:100]) def get_absolute_url(self): @@ -190,7 +190,7 @@ class FreeComment(models.Model): date_hierarchy = 'submit_date' search_fields = ('comment', 'person_name') - def __repr__(self): + def __unicode__(self): return "%s: %s..." % (self.person_name, self.comment[:100]) def get_absolute_url(self): @@ -244,7 +244,7 @@ class KarmaScore(models.Model): verbose_name_plural = _('karma scores') unique_together = (('user', 'comment'),) - def __repr__(self): + def __unicode__(self): return _("%(score)d rating by %(user)s") % {'score': self.score, 'user': self.user} class UserFlagManager(models.Manager): @@ -275,7 +275,7 @@ class UserFlag(models.Model): verbose_name_plural = _('user flags') unique_together = (('user', 'comment'),) - def __repr__(self): + def __unicode__(self): return _("Flag by %r") % self.user class ModeratorDeletion(models.Model): @@ -287,5 +287,5 @@ class ModeratorDeletion(models.Model): verbose_name_plural = _('moderator deletions') unique_together = (('user', 'comment'),) - def __repr__(self): + def __unicode__(self): return _("Moderator deletion by %r") % self.user diff --git a/django/contrib/comments/tests.py b/django/contrib/comments/tests.py new file mode 100644 index 0000000000..a8275debf6 --- /dev/null +++ b/django/contrib/comments/tests.py @@ -0,0 +1,13 @@ +# coding: utf-8 + +r""" +>>> from django.contrib.comments.models import Comment +>>> from django.contrib.auth.models import User +>>> u = User.objects.create_user('commenttestuser', 'commenttest@example.com', 'testpw') +>>> c = Comment(user=u, comment=u'\xe2') +>>> c +<Comment: commenttestuser: â...> +>>> print c +commenttestuser: â... +""" + diff --git a/django/contrib/formtools/models.py b/django/contrib/formtools/models.py new file mode 100644 index 0000000000..13990e24af --- /dev/null +++ b/django/contrib/formtools/models.py @@ -0,0 +1 @@ +""" models.py (even empty) currently required by the runtests.py to enable unit tests """ diff --git a/django/contrib/formtools/test_urls.py b/django/contrib/formtools/test_urls.py new file mode 100644 index 0000000000..19dbbd1ae4 --- /dev/null +++ b/django/contrib/formtools/test_urls.py @@ -0,0 +1,12 @@ +""" + +This is a urlconf to be loaded by tests.py. Add any urls needed +for tests only. + +""" +from django.conf.urls.defaults import * +from django.contrib.formtools.tests import * + +urlpatterns = patterns('', + (r'^test1/', TestFormPreview(TestForm)), + ) diff --git a/django/contrib/formtools/tests.py b/django/contrib/formtools/tests.py new file mode 100644 index 0000000000..a5a9222c46 --- /dev/null +++ b/django/contrib/formtools/tests.py @@ -0,0 +1,93 @@ +from django import newforms as forms +from django.contrib.formtools import preview +from django import http +from django.conf import settings +from django.test import TestCase +from django.test.client import Client + + +success_string = "Done was called!" +test_data = {'field1': u'foo', + 'field1_': u'asdf'} + + +class TestFormPreview(preview.FormPreview): + + def done(self, request, cleaned_data): + return http.HttpResponse(success_string) + + +class TestForm(forms.Form): + field1 = forms.CharField() + field1_ = forms.CharField() + + +class PreviewTests(TestCase): + + def setUp(self): + settings.ROOT_URLCONF = 'django.contrib.formtools.test_urls' + # Create a FormPreview instance to share between tests + self.preview = preview.FormPreview(TestForm) + input_template = '<input type="hidden" name="%s" value="%s" />' + self.input = input_template % (self.preview.unused_name('stage'), "%d") + + def test_unused_name(self): + """ + Verifies name mangling to get uniue field name. + """ + self.assertEqual(self.preview.unused_name('field1'), 'field1__') + + def test_form_get(self): + """ + Test contrib.formtools.preview form retrieval. + + Use the client library to see if we can sucessfully retrieve + the form (mostly testing the setup ROOT_URLCONF + process). Verify that an additional hidden input field + is created to manage the stage. + + """ + response = self.client.get('/test1/') + stage = self.input % 1 + self.assertContains(response, stage, 1) + + def test_form_preview(self): + """ + Test contrib.formtools.preview form preview rendering. + + Use the client library to POST to the form to see if a preview + is returned. If we do get a form back check that the hidden + value is correctly managing the state of the form. + + """ + # Pass strings for form submittal and add stage variable to + # show we previously saw first stage of the form. + test_data.update({'stage': 1}) + response = self.client.post('/test1/', test_data) + # Check to confirm stage is set to 2 in output form. + stage = self.input % 2 + self.assertContains(response, stage, 1) + + def test_form_submit(self): + """ + Test contrib.formtools.preview form submittal. + + Use the client library to POST to the form with stage set to 3 + to see if our forms done() method is called. Check first + without the security hash, verify failure, retry with security + hash and verify sucess. + + """ + # Pass strings for form submittal and add stage variable to + # show we previously saw first stage of the form. + test_data.update({'stage': 2}) + response = self.client.post('/test1/', test_data) + self.failIfEqual(response.content, success_string) + hash = self.preview.security_hash(None, TestForm(test_data)) + test_data.update({'hash': hash}) + response = self.client.post('/test1/', test_data) + self.assertEqual(response.content, success_string) + + +if __name__ == '__main__': + unittest.main() diff --git a/django/contrib/localflavor/ca/ca_provinces.py b/django/contrib/localflavor/ca/ca_provinces.py index 072159ad57..746716fd21 100644 --- a/django/contrib/localflavor/ca/ca_provinces.py +++ b/django/contrib/localflavor/ca/ca_provinces.py @@ -33,6 +33,8 @@ PROVINCES_NORMALIZED = { 'british columbia': 'BC', 'mb': 'MB', 'manitoba': 'MB', + 'nb': 'NB', + 'new brunswick': 'NB', 'nf': 'NF', 'newfoundland': 'NF', 'newfoundland and labrador': 'NF', diff --git a/django/db/models/base.py b/django/db/models/base.py index 379ed898f6..6b8e8369b0 100644 --- a/django/db/models/base.py +++ b/django/db/models/base.py @@ -471,5 +471,5 @@ def method_get_order(ordered_obj, self): # HELPER FUNCTIONS (CURRIED MODEL FUNCTIONS) # ############################################## -def get_absolute_url(opts, func, self): - return settings.ABSOLUTE_URL_OVERRIDES.get('%s.%s' % (opts.app_label, opts.module_name), func)(self) +def get_absolute_url(opts, func, self, *args, **kwargs): + return settings.ABSOLUTE_URL_OVERRIDES.get('%s.%s' % (opts.app_label, opts.module_name), func)(self, *args, **kwargs) diff --git a/django/db/models/fields/__init__.py b/django/db/models/fields/__init__.py index af122b33d9..ddff9bde29 100644 --- a/django/db/models/fields/__init__.py +++ b/django/db/models/fields/__init__.py @@ -399,7 +399,7 @@ class Field(object): "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['widget'] = forms.Select(choices=self.get_choices(include_blank=self.blank or not (self.has_default() or 'initial' in kwargs))) if self.has_default(): defaults['initial'] = self.get_default() defaults.update(kwargs) diff --git a/django/db/models/fields/subclassing.py b/django/db/models/fields/subclassing.py index 1e4c8ca2e0..36f7e4d934 100644 --- a/django/db/models/fields/subclassing.py +++ b/django/db/models/fields/subclassing.py @@ -28,10 +28,10 @@ class Creator(object): def __get__(self, obj, type=None): if obj is None: raise AttributeError('Can only be accessed via an instance.') - return self.value + return obj.__dict__[self.field.name] def __set__(self, obj, value): - self.value = self.field.to_python(value) + obj.__dict__[self.field.name] = self.field.to_python(value) def make_contrib(func=None): """ diff --git a/django/middleware/cache.py b/django/middleware/cache.py index a88b4956b2..23a907f8be 100644 --- a/django/middleware/cache.py +++ b/django/middleware/cache.py @@ -1,14 +1,18 @@ from django.conf import settings from django.core.cache import cache -from django.utils.cache import get_cache_key, learn_cache_key, patch_response_headers +from django.utils.cache import get_cache_key, learn_cache_key, patch_response_headers, get_max_age class CacheMiddleware(object): """ Cache middleware. If this is enabled, each Django-powered page will be - cached for CACHE_MIDDLEWARE_SECONDS seconds. Cache is based on URLs. + cached (based on URLs). Only parameter-less GET or HEAD-requests with status code 200 are cached. + The number of seconds each page is stored for is set by the + "max-age" section of the response's "Cache-Control" header, falling back to + the CACHE_MIDDLEWARE_SECONDS setting if the section was not found. + If CACHE_MIDDLEWARE_ANONYMOUS_ONLY is set to True, only anonymous requests (i.e., those not made by a logged-in user) will be cached. This is a simple and effective way of avoiding the caching of the Django admin (and @@ -78,7 +82,16 @@ class CacheMiddleware(object): return response if not response.status_code == 200: return response - patch_response_headers(response, self.cache_timeout) - cache_key = learn_cache_key(request, response, self.cache_timeout, self.key_prefix) - cache.set(cache_key, response, self.cache_timeout) + # Try to get the timeout from the "max-age" section of the "Cache- + # Control" header before reverting to using the default cache_timeout + # length. + timeout = get_max_age(response) + if timeout == None: + timeout = self.cache_timeout + elif timeout == 0: + # max-age was set to 0, don't bother caching. + return response + patch_response_headers(response, timeout) + cache_key = learn_cache_key(request, response, timeout, self.key_prefix) + cache.set(cache_key, response, timeout) return response diff --git a/django/newforms/fields.py b/django/newforms/fields.py index 9bb2ced583..4a54a98d61 100644 --- a/django/newforms/fields.py +++ b/django/newforms/fields.py @@ -17,7 +17,7 @@ except NameError: from sets import Set as set from django.utils.translation import ugettext_lazy as _ -from django.utils.encoding import StrAndUnicode, smart_unicode +from django.utils.encoding import StrAndUnicode, smart_unicode, smart_str from util import ErrorList, ValidationError from widgets import TextInput, PasswordInput, HiddenInput, MultipleHiddenInput, FileInput, CheckboxInput, Select, NullBooleanSelect, SelectMultiple, DateTimeInput @@ -235,7 +235,7 @@ class DecimalField(Field): super(DecimalField, self).clean(value) if not self.required and value in EMPTY_VALUES: return None - value = str(value).strip() + value = smart_str(value).strip() try: value = Decimal(value) except DecimalException: @@ -536,11 +536,12 @@ class BooleanField(Field): widget = CheckboxInput def clean(self, value): - "Returns a Python boolean object." + """Returns a Python boolean object.""" super(BooleanField, self).clean(value) - # Explicitly check for the string '0', which is what as hidden field - # will submit for False. - if value == '0': + # Explicitly check for the string 'False', which is what a hidden field + # will submit for False (since bool("True") == True we don't need to + # handle that explicitly). + if value == 'False': return False return bool(value) diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py index e62e2e3eaf..f2be64ef1d 100644 --- a/django/template/defaultfilters.py +++ b/django/template/defaultfilters.py @@ -25,8 +25,8 @@ def stringfilter(func): if args: args = list(args) args[0] = force_unicode(args[0]) - if isinstance(args[0], SafeData) and getattr(func, 'is_safe', False): - return mark_safe(func(*args, **kwargs)) + if isinstance(args[0], SafeData) and getattr(func, 'is_safe', False): + return mark_safe(func(*args, **kwargs)) return func(*args, **kwargs) # Include a reference to the real function (used to check original @@ -91,7 +91,7 @@ def floatformat(text, arg=-1): """ try: f = float(text) - except ValueError: + except (ValueError, TypeError): return u'' try: d = int(arg) diff --git a/django/utils/cache.py b/django/utils/cache.py index 5654bed7aa..4fcf493944 100644 --- a/django/utils/cache.py +++ b/django/utils/cache.py @@ -74,6 +74,21 @@ def patch_cache_control(response, **kwargs): cc = ', '.join([dictvalue(el) for el in cc.items()]) response['Cache-Control'] = cc +def get_max_age(response): + """ + Returns the max-age from the response Cache-Control header as an integer + (or ``None`` if it wasn't found or wasn't an integer. + """ + if not response.has_header('Cache-Control'): + return + cc = dict([_to_tuple(el) for el in + cc_delim_re.split(response['Cache-Control'])]) + if 'max-age' in cc: + try: + return int(cc['max-age']) + except (ValueError, TypeError): + pass + def patch_response_headers(response, cache_timeout=None): """ Adds some useful headers to the given HttpResponse object: @@ -180,3 +195,10 @@ def learn_cache_key(request, response, cache_timeout=None, key_prefix=None): # for the request.path cache.set(cache_key, [], cache_timeout) return _generate_cache_key(request, [], key_prefix) + + +def _to_tuple(s): + t = s.split('=',1) + if len(t) == 2: + return t[0].lower(), t[1] + return t[0].lower(), True diff --git a/django/utils/datastructures.py b/django/utils/datastructures.py index ffdc73f922..ee156b11d0 100644 --- a/django/utils/datastructures.py +++ b/django/utils/datastructures.py @@ -60,7 +60,10 @@ class SortedDict(dict): if isinstance(data, dict): self.keyOrder = data.keys() else: - self.keyOrder = [key for key, value in data] + self.keyOrder = [] + for key, value in data: + if key not in self.keyOrder: + self.keyOrder.append(key) def __deepcopy__(self, memo): from copy import deepcopy diff --git a/django/utils/tzinfo.py b/django/utils/tzinfo.py index e2e1d10fc1..7d5ead9290 100644 --- a/django/utils/tzinfo.py +++ b/django/utils/tzinfo.py @@ -54,6 +54,12 @@ class LocalTimezone(tzinfo): def _isdst(self, dt): tt = (dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second, dt.weekday(), 0, -1) - stamp = time.mktime(tt) + try: + stamp = time.mktime(tt) + except OverflowError: + # 32 bit systems can't handle dates after Jan 2038, so we fake it + # in that case (since we only care about the DST flag here). + tt = (2037,) + tt[1:] + stamp = time.mktime(tt) tt = time.localtime(stamp) return tt.tm_isdst > 0 diff --git a/django/views/i18n.py b/django/views/i18n.py index cccec13941..cd23ff8777 100644 --- a/django/views/i18n.py +++ b/django/views/i18n.py @@ -120,8 +120,12 @@ def javascript_catalog(request, domain='djangojs', packages=None): p = __import__(package, {}, {}, ['']) path = os.path.join(os.path.dirname(p.__file__), 'locale') paths.append(path) - catalog = gettext_module.translation(domain, path, ['en']) - t.update(catalog._catalog) + try: + catalog = gettext_module.translation(domain, path, ['en']) + t.update(catalog._catalog) + except IOError: + # 'en' catalog was missing. This is harmless. + pass # next load the settings.LANGUAGE_CODE translations if it isn't english if default_locale != 'en': for path in paths: diff --git a/django/views/static.py b/django/views/static.py index b556c60ca6..f0e43ffe4e 100644 --- a/django/views/static.py +++ b/django/views/static.py @@ -33,6 +33,7 @@ def serve(request, path, document_root=None, show_indexes=False): # Clean up given path to only allow serving files below document_root. path = posixpath.normpath(urllib.unquote(path)) + path = path.lstrip('/') newpath = '' for part in path.split('/'): if not part: |
