Changeset 5230
- Timestamp:
- 05/14/07 06:56:20 (1 year ago)
- Files:
-
- django/branches/unicode/django/contrib/admin/filterspecs.py (modified) (1 diff)
- django/branches/unicode/django/contrib/admin/templatetags/admin_list.py (modified) (1 diff)
- django/branches/unicode/django/contrib/admin/views/auth.py (modified) (1 diff)
- django/branches/unicode/django/contrib/admin/views/decorators.py (modified) (1 diff)
- django/branches/unicode/django/contrib/admin/views/doc.py (modified) (1 diff)
- django/branches/unicode/django/contrib/admin/views/main.py (modified) (1 diff)
- django/branches/unicode/django/contrib/auth/models.py (modified) (1 diff)
- django/branches/unicode/django/contrib/auth/views.py (modified) (1 diff)
- django/branches/unicode/django/contrib/comments/views/karma.py (modified) (1 diff)
- django/branches/unicode/django/core/validators.py (modified) (15 diffs)
- django/branches/unicode/django/db/models/fields/__init__.py (modified) (7 diffs)
- django/branches/unicode/django/db/models/fields/related.py (modified) (1 diff)
- django/branches/unicode/django/db/models/manipulators.py (modified) (1 diff)
- django/branches/unicode/django/oldforms/__init__.py (modified) (1 diff)
- django/branches/unicode/django/template/__init__.py (modified) (1 diff)
- django/branches/unicode/django/utils/translation/trans_real.py (modified) (2 diffs)
- django/branches/unicode/tests/regressiontests/templates/tests.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/branches/unicode/django/contrib/admin/filterspecs.py
r5200 r5230 9 9 from django.db import models 10 10 from django.utils.encoding import smart_unicode 11 from django.utils.translation import ugettext as _ 11 12 import datetime 12 13 django/branches/unicode/django/contrib/admin/templatetags/admin_list.py
r5200 r5230 7 7 from django.utils.html import escape 8 8 from django.utils.text import capfirst 9 from django.utils.translation import get_date_formats, get_partial_date_formats 9 from django.utils.translation import get_date_formats, get_partial_date_formats, ugettext as _ 10 10 from django.utils.encoding import smart_unicode, smart_str 11 11 from django.template import Library django/branches/unicode/django/contrib/admin/views/auth.py
r5126 r5230 7 7 from django.http import HttpResponseRedirect 8 8 from django.utils.html import escape 9 from django.utils.translation import ugettext as _ 9 10 10 11 def user_add_stage(request): django/branches/unicode/django/contrib/admin/views/decorators.py
r5229 r5230 4 4 from django.contrib.auth import authenticate, login 5 5 from django.shortcuts import render_to_response 6 from django.utils.translation import ugettext_lazy 6 from django.utils.translation import ugettext_lazy, ugettext as _ 7 7 import base64, datetime, md5 8 8 import cPickle as pickle django/branches/unicode/django/contrib/admin/views/doc.py
r4704 r5230 10 10 from django.contrib.admin import utils 11 11 from django.contrib.sites.models import Site 12 from django.utils.translation import ugettext as _ 12 13 import inspect, os, re 13 14 django/branches/unicode/django/contrib/admin/views/main.py
r5200 r5230 14 14 from django.utils.text import capfirst, get_text_list 15 15 from django.utils.encoding import smart_unicode 16 from django.utils.translation import ugettext as _ 16 17 import operator 17 18 django/branches/unicode/django/contrib/auth/models.py
r5081 r5230 3 3 from django.db import backend, connection, models 4 4 from django.contrib.contenttypes.models import ContentType 5 from django.utils.translation import ugettext_lazy 5 from django.utils.translation import ugettext_lazy, ugettext as _ 6 6 import datetime 7 7 django/branches/unicode/django/contrib/auth/views.py
r5081 r5230 8 8 from django.contrib.auth.decorators import login_required 9 9 from django.contrib.auth import REDIRECT_FIELD_NAME 10 from django.utils.translation import ugettext as _ 10 11 11 12 def login(request, template_name='registration/login.html'): django/branches/unicode/django/contrib/comments/views/karma.py
r4486 r5230 3 3 from django.template import RequestContext 4 4 from django.contrib.comments.models import Comment, KarmaScore 5 from django.utils.translation import ugettext as _ 5 6 6 7 def vote(request, comment_id, vote): django/branches/unicode/django/core/validators.py
r5126 r5230 11 11 import urllib2 12 12 from django.conf import settings 13 from django.utils.translation import ugettext , ugettext_lazy, ungettext13 from django.utils.translation import ugettext as _, ugettext_lazy, ungettext 14 14 from django.utils.functional import Promise, lazy 15 15 import re … … 62 62 def isAlphaNumeric(field_data, all_data): 63 63 if not alnum_re.search(field_data): 64 raise ValidationError, ugettext("This value must contain only letters, numbers and underscores.")64 raise ValidationError, _("This value must contain only letters, numbers and underscores.") 65 65 66 66 def isAlphaNumericURL(field_data, all_data): 67 67 if not alnumurl_re.search(field_data): 68 raise ValidationError, ugettext("This value must contain only letters, numbers, underscores, dashes or slashes.")68 raise ValidationError, _("This value must contain only letters, numbers, underscores, dashes or slashes.") 69 69 70 70 def isSlug(field_data, all_data): 71 71 if not slug_re.search(field_data): 72 raise ValidationError, ugettext("This value must contain only letters, numbers, underscores or hyphens.")72 raise ValidationError, _("This value must contain only letters, numbers, underscores or hyphens.") 73 73 74 74 def isLowerCase(field_data, all_data): 75 75 if field_data.lower() != field_data: 76 raise ValidationError, ugettext("Uppercase letters are not allowed here.")76 raise ValidationError, _("Uppercase letters are not allowed here.") 77 77 78 78 def isUpperCase(field_data, all_data): 79 79 if field_data.upper() != field_data: 80 raise ValidationError, ugettext("Lowercase letters are not allowed here.")80 raise ValidationError, _("Lowercase letters are not allowed here.") 81 81 82 82 def isCommaSeparatedIntegerList(field_data, all_data): … … 85 85 int(supposed_int) 86 86 except ValueError: 87 raise ValidationError, ugettext("Enter only digits separated by commas.")87 raise ValidationError, _("Enter only digits separated by commas.") 88 88 89 89 def isCommaSeparatedEmailList(field_data, all_data): … … 97 97 isValidEmail(supposed_email.strip(), '') 98 98 except ValidationError: 99 raise ValidationError, ugettext("Enter valid e-mail addresses separated by commas.")99 raise ValidationError, _("Enter valid e-mail addresses separated by commas.") 100 100 101 101 def isValidIPAddress4(field_data, all_data): 102 102 if not ip4_re.search(field_data): 103 raise ValidationError, ugettext("Please enter a valid IP address.")103 raise ValidationError, _("Please enter a valid IP address.") 104 104 105 105 def isNotEmpty(field_data, all_data): 106 106 if field_data.strip() == '': 107 raise ValidationError, ugettext("Empty values are not allowed here.")107 raise ValidationError, _("Empty values are not allowed here.") 108 108 109 109 def isOnlyDigits(field_data, all_data): 110 110 if not field_data.isdigit(): 111 raise ValidationError, ugettext("Non-numeric characters aren't allowed here.")111 raise ValidationError, _("Non-numeric characters aren't allowed here.") 112 112 113 113 def isNotOnlyDigits(field_data, all_data): 114 114 if field_data.isdigit(): 115 raise ValidationError, ugettext("This value can't be comprised solely of digits.")115 raise ValidationError, _("This value can't be comprised solely of digits.") 116 116 117 117 def isInteger(field_data, all_data): 118 118 # This differs from isOnlyDigits because this accepts the negative sign 119 119 if not integer_re.search(field_data): 120 raise ValidationError, ugettext("Enter a whole number.")120 raise ValidationError, _("Enter a whole number.") 121 121 122 122 def isOnlyLetters(field_data, all_data): 123 123 if not field_data.isalpha(): 124 raise ValidationError, ugettext("Only alphabetical characters are allowed here.")124 raise ValidationError, _("Only alphabetical characters are allowed here.") 125 125 126 126 def _isValidDate(date_string): … … 137 137 # value to the database, and strftime requires that the year be >=1900. 138 138 if year < 1900: 139 raise ValidationError, ugettext('Year must be 1900 or later.')139 raise ValidationError, _('Year must be 1900 or later.') 140 140 try: 141 141 date(year, month, day) 142 142 except ValueError, e: 143 msg = ugettext('Invalid date: %s') % ugettext(str(e))143 msg = _('Invalid date: %s') % _(str(e)) 144 144 raise ValidationError, msg 145 145 146 146 def isValidANSIDate(field_data, all_data): 147 147 if not ansi_date_re.search(field_data): 148 raise ValidationError, ugettext('Enter a valid date in YYYY-MM-DD format.')148 raise ValidationError, _('Enter a valid date in YYYY-MM-DD format.') 149 149 _isValidDate(field_data) 150 150 151 151 def isValidANSITime(field_data, all_data): 152 152 if not ansi_time_re.search(field_data): 153 raise ValidationError, ugettext('Enter a valid time in HH:MM format.')153 raise ValidationError, _('Enter a valid time in HH:MM format.') 154 154 155 155 def isValidANSIDatetime(field_data, all_data): 156 156 if not ansi_datetime_re.search(field_data): 157 raise ValidationError, ugettext('Enter a valid date/time in YYYY-MM-DD HH:MM format.')157 raise ValidationError, _('Enter a valid date/time in YYYY-MM-DD HH:MM format.') 158 158 _isValidDate(field_data.split()[0]) 159 159 160 160 def isValidEmail(field_data, all_data): 161 161 if not email_re.search(field_data): 162 raise ValidationError, ugettext('Enter a valid e-mail address.')162 raise ValidationError, _('Enter a valid e-mail address.') 163 163 164 164 def isValidImage(field_data, all_data): … … 172 172 content = field_data['content'] 173 173 except TypeError: 174 raise ValidationError, ugettext("No file was submitted. Check the encoding type on the form.")174 raise ValidationError, _("No file was submitted. Check the encoding type on the form.") 175 175 try: 176 176 Image.open(StringIO(content)) 177 177 except IOError: # Python Imaging Library doesn't recognize it as an image 178 raise ValidationError, ugettext("Upload a valid image. The file you uploaded was either not an image or a corrupted image.")178 raise ValidationError, _("Upload a valid image. The file you uploaded was either not an image or a corrupted image.") 179 179 180 180 def isValidImageURL(field_data, all_data): … … 183 183 uc(field_data, all_data) 184 184 except URLMimeTypeCheck.InvalidContentType: 185 raise ValidationError, ugettext("The URL %s does not point to a valid image.") % field_data185 raise ValidationError, _("The URL %s does not point to a valid image.") % field_data 186 186 187 187 def isValidPhone(field_data, all_data): 188 188 if not phone_re.search(field_data): 189 raise ValidationError, ugettext('Phone numbers must be in XXX-XXX-XXXX format. "%s" is invalid.') % field_data189 raise ValidationError, _('Phone numbers must be in XXX-XXX-XXXX format. "%s" is invalid.') % field_data 190 190 191 191 def isValidQuicktimeVideoURL(field_data, all_data): … … 195 195 uc(field_data, all_data) 196 196 except URLMimeTypeCheck.InvalidContentType: 197 raise ValidationError, ugettext("The URL %s does not point to a valid QuickTime video.") % field_data197 raise ValidationError, _("The URL %s does not point to a valid QuickTime video.") % field_data 198 198 199 199 def isValidURL(field_data, all_data): 200 200 if not url_re.search(field_data): 201 raise ValidationError, ugettext("A valid URL is required.")201 raise ValidationError, _("A valid URL is required.") 202 202 203 203 def isValidHTML(field_data, all_data): … … 213 213 from xml.dom.minidom import parseString 214 214 error_messages = [e.firstChild.wholeText for e in parseString(u.read()).getElementsByTagName('messages')[0].getElementsByTagName('msg')] 215 raise ValidationError, ugettext("Valid HTML is required. Specific errors are:\n%s") % "\n".join(error_messages)215 raise ValidationError, _("Valid HTML is required. Specific errors are:\n%s") % "\n".join(error_messages) 216 216 217 217 def isWellFormedXml(field_data, all_data): … … 220 220 parseString(field_data) 221 221 except Exception, e: # Naked except because we're not sure what will be thrown 222 raise ValidationError, ugettext("Badly formed XML: %s") % str(e)222 raise ValidationError, _("Badly formed XML: %s") % str(e) 223 223 224 224 def isWellFormedXmlFragment(field_data, all_data): … … 250 250 states = ['AA', 'AE', 'AK', 'AL', 'AP', 'AR', 'AS', 'AZ', 'CA', 'CO', 'CT', 'DC', 'DE', 'FL', 'FM', 'GA', 'GU', 'HI', 'IA', 'ID', 'IL', 'IN', 'KS', 'KY', 'LA', 'MA', 'MD', 'ME', 'MH', 'MI', 'MN', 'MO', 'MP', 'MS', 'MT', 'NC', 'ND', 'NE', 'NH', 'NJ', 'NM', 'NV', 'NY', 'OH', 'OK', 'OR', 'PA', 'PR', 'PW', 'RI', 'SC', 'SD', 'TN', 'TX', 'UT', 'VA', 'VI', 'VT', 'WA', 'WI', 'WV', 'WY'] 251 251 if field_data.upper() not in states: 252 raise ValidationError, ugettext("Enter a valid U.S. state abbreviation.")252 raise ValidationError, _("Enter a valid U.S. state abbreviation.") 253 253 254 254 def hasNoProfanities(field_data, all_data): … … 365 365 if not error_message: 366 366 if lower and upper: 367 self.error_message = ugettext("This value must be between %(lower)s and %(upper)s.") % {'lower': lower, 'upper': upper}367 self.error_message = _("This value must be between %(lower)s and %(upper)s.") % {'lower': lower, 'upper': upper} 368 368 elif lower: 369 self.error_message = ugettext("This value must be at least %s.") % lower369 self.error_message = _("This value must be at least %s.") % lower 370 370 elif upper: 371 self.error_message = ugettext("This value must be no more than %s.") % upper371 self.error_message = _("This value must be no more than %s.") % upper 372 372 else: 373 373 self.error_message = error_message … … 405 405 val = log(int(field_data)) / log(self.power_of) 406 406 if val != int(val): 407 raise ValidationError, ugettext("This value must be a power of %s.") % self.power_of407 raise ValidationError, _("This value must be a power of %s.") % self.power_of 408 408 409 409 class IsValidFloat(object): … … 416 416 float(data) 417 417 except ValueError: 418 raise ValidationError, ugettext("Please enter a valid decimal number.")418 raise ValidationError, _("Please enter a valid decimal number.") 419 419 # Negative floats require more space to input. 420 420 max_allowed_length = data.startswith('-') and (self.max_digits + 2) or (self.max_digits + 1) … … 505 505 info = urllib2.urlopen(field_data).info() 506 506 except (urllib2.HTTPError, urllib2.URLError): 507 raise URLMimeTypeCheck.CouldNotRetrieve, ugettext("Could not retrieve anything from %s.") % field_data507 raise URLMimeTypeCheck.CouldNotRetrieve, _("Could not retrieve anything from %s.") % field_data 508 508 content_type = info['content-type'] 509 509 if content_type not in self.mime_type_list: 510 raise URLMimeTypeCheck.InvalidContentType, ugettext("The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'.") % {510 raise URLMimeTypeCheck.InvalidContentType, _("The URL %(url)s returned the invalid Content-Type header '%(contenttype)s'.") % { 511 511 'url': field_data, 'contenttype': content_type} 512 512 django/branches/unicode/django/db/models/fields/__init__.py
r5203 r5230 9 9 from django.utils.itercompat import tee 10 10 from django.utils.text import capfirst 11 from django.utils.translation import ugettext , ugettext_lazy11 from django.utils.translation import ugettext_lazy, ugettext as _ 12 12 from django.utils.encoding import smart_unicode 13 13 import datetime, os, time … … 41 41 if getattr(self, 'original_object', None) and self.original_object._get_pk_val() == old_obj._get_pk_val(): 42 42 return 43 raise validators.ValidationError, ugettext("%(optname)s with this %(fieldname)s already exists.") % {'optname': capfirst(opts.verbose_name), 'fieldname': f.verbose_name}43 raise validators.ValidationError, _("%(optname)s with this %(fieldname)s already exists.") % {'optname': capfirst(opts.verbose_name), 'fieldname': f.verbose_name} 44 44 45 45 # A guide to Field parameters: … … 368 368 return int(value) 369 369 except (TypeError, ValueError): 370 raise validators.ValidationError, ugettext("This value must be an integer.")370 raise validators.ValidationError, _("This value must be an integer.") 371 371 372 372 def get_manipulator_fields(self, opts, manipulator, change, name_prefix='', rel=False, follow=True): … … 403 403 if value in ('t', 'True', '1'): return True 404 404 if value in ('f', 'False', '0'): return False 405 raise validators.ValidationError, ugettext("This value must be either True or False.")405 raise validators.ValidationError, _("This value must be either True or False.") 406 406 407 407 def get_manipulator_field_objs(self): … … 458 458 return datetime.date(*time.strptime(value, '%Y-%m-%d')[:3]) 459 459 except ValueError: 460 raise validators.ValidationError, ugettext('Enter a valid date in YYYY-MM-DD format.')460 raise validators.ValidationError, _('Enter a valid date in YYYY-MM-DD format.') 461 461 462 462 def get_db_prep_lookup(self, lookup_type, value): … … 527 527 return datetime.datetime(*time.strptime(value, '%Y-%m-%d')[:3]) 528 528 except ValueError: 529 raise validators.ValidationError, ugettext('Enter a valid date/time in YYYY-MM-DD HH:MM format.')529 raise validators.ValidationError, _('Enter a valid date/time in YYYY-MM-DD HH:MM format.') 530 530 531 531 def get_db_prep_save(self, value): … … 752 752 if value in ('t', 'True', '1'): return True 753 753 if value in ('f', 'False', '0'): return False 754 raise validators.ValidationError, ugettext("This value must be either None, True or False.")754 raise validators.ValidationError, _("This value must be either None, True or False.") 755 755 756 756 def get_manipulator_field_objs(self): django/branches/unicode/django/db/models/fields/related.py
r5229 r5230 4 4 from django.db.models.related import RelatedObject 5 5 from django.utils.text import capfirst 6 from django.utils.translation import ugettext_lazy, string_concat, ungettext 6 from django.utils.translation import ugettext_lazy, string_concat, ungettext, ugettext as _ 7 7 from django.utils.functional import curry 8 8 from django.utils.encoding import smart_unicode django/branches/unicode/django/db/models/manipulators.py
r5090 r5230 9 9 from django.utils.text import capfirst 10 10 from django.utils.encoding import smart_str 11 from django.utils.translation import ugettext as _ 11 12 import types 12 13 django/branches/unicode/django/oldforms/__init__.py
r5192 r5230 585 585 def __init__(self, field_name, is_required=False, validator_list=None): 586 586 if validator_list is None: validator_list = [] 587 SelectField.__init__(self, field_name, choices=[('1', _('Unknown')), ('2', _('Yes')), ('3', _('No'))],587 SelectField.__init__(self, field_name, choices=[('1', ugettext('Unknown')), ('2', ugettext('Yes')), ('3', ugettext('No'))], 588 588 is_required=is_required, validator_list=validator_list) 589 589 django/branches/unicode/django/template/__init__.py
r5199 r5230 62 62 from django.utils.text import smart_split 63 63 from django.utils.encoding import smart_unicode, smart_str 64 from django.utils.translation import ugettext as _ 64 65 65 66 __all__ = ('Template', 'Context', 'RequestContext', 'compile_string') django/branches/unicode/django/utils/translation/trans_real.py
r5126 r5230 381 381 """ 382 382 from django.conf import settings 383 date_format = _('DATE_FORMAT')384 datetime_format = _('DATETIME_FORMAT')385 time_format = _('TIME_FORMAT')383 date_format = ugettext('DATE_FORMAT') 384 datetime_format = ugettext('DATETIME_FORMAT') 385 time_format = ugettext('TIME_FORMAT') 386 386 if date_format == 'DATE_FORMAT': 387 387 date_format = settings.DATE_FORMAT … … 399 399 """ 400 400 from django.conf import settings 401 year_month_format = _('YEAR_MONTH_FORMAT')402 month_day_format = _('MONTH_DAY_FORMAT')401 year_month_format = ugettext('YEAR_MONTH_FORMAT') 402 month_day_format = ugettext('MONTH_DAY_FORMAT') 403 403 if year_month_format == 'YEAR_MONTH_FORMAT': 404 404 year_month_format = settings.YEAR_MONTH_FORMAT django/branches/unicode/tests/regressiontests/templates/tests.py
r5185 r5230 9 9 from django import template 10 10 from django.template import loader 11 from django.utils.translation import activate, deactivate, install 11 from django.utils.translation import activate, deactivate, install, ugettext as _ 12 12 from django.utils.tzinfo import LocalTimezone 13 13 from datetime import datetime, timedelta
