Django

Code

Changeset 4212

Show
Ignore:
Timestamp:
12/15/06 12:32:47 (2 years ago)
Author:
bouldersprinters
Message:

boulder-oracle-sprint: Merged to trunk [4210].

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/boulder-oracle-sprint/AUTHORS

    r3963 r4212  
    5252    Ned Batchelder <http://www.nedbatchelder.com/> 
    5353    Shannon -jj Behrens <http://jjinux.blogspot.com/> 
     54    Esdras Beleza <linux@esdrasbeleza.com> 
    5455    James Bennett 
    5556    Paul Bissex <http://e-scribe.com/> 
     
    151152    sopel 
    152153    Thomas Steinacher <tom@eggdrop.ch> 
     154    nowell strite 
    153155    Radek Švarz <http://www.svarz.cz/translate/> 
    154156    Swaroop C H <http://www.swaroopch.info> 
  • django/branches/boulder-oracle-sprint/django/conf/global_settings.py

    r4066 r4212  
    2626 
    2727# Local time zone for this installation. All choices can be found here: 
    28 # http://www.postgresql.org/docs/current/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE 
     28# http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE 
    2929TIME_ZONE = 'America/Chicago' 
    3030 
  • django/branches/boulder-oracle-sprint/django/conf/project_template/settings.py

    r3607 r4212  
    1818 
    1919# Local time zone for this installation. All choices can be found here: 
    20 # http://www.postgresql.org/docs/current/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE 
     20# http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE 
    2121TIME_ZONE = 'America/Chicago' 
    2222 
  • django/branches/boulder-oracle-sprint/django/conf/project_template/urls.py

    r2809 r4212  
    33urlpatterns = patterns('', 
    44    # Example: 
    5     # (r'^{{ project_name }}/', include('{{ project_name }}.apps.foo.urls.foo')), 
     5    # (r'^{{ project_name }}/', include('{{ project_name }}.foo.urls')), 
    66 
    77    # Uncomment this for admin: 
  • django/branches/boulder-oracle-sprint/django/contrib/admin/media/js/admin/DateTimeShortcuts.js

    r3748 r4212  
    4545        inp.parentNode.insertBefore(shortcuts_span, inp.nextSibling); 
    4646        var now_link = document.createElement('a'); 
    47         now_link.setAttribute('href', "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", new Date().getHourMinute());"); 
     47        now_link.setAttribute('href', "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", new Date().getHourMinuteSecond());"); 
    4848        now_link.appendChild(document.createTextNode(gettext('Now'))); 
    4949        var clock_link = document.createElement('a'); 
     
    8181        time_list = quickElement('ul', clock_box, ''); 
    8282        time_list.className = 'timelist'; 
    83         quickElement("a", quickElement("li", time_list, ""), gettext("Now"), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", new Date().getHourMinute());") 
    84         quickElement("a", quickElement("li", time_list, ""), gettext("Midnight"), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", '00:00');") 
    85         quickElement("a", quickElement("li", time_list, ""), gettext("6 a.m."), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", '06:00');") 
    86         quickElement("a", quickElement("li", time_list, ""), gettext("Noon"), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", '12:00');") 
     83        quickElement("a", quickElement("li", time_list, ""), gettext("Now"), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", new Date().getHourMinuteSecond());") 
     84        quickElement("a", quickElement("li", time_list, ""), gettext("Midnight"), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", '00:00:00');") 
     85        quickElement("a", quickElement("li", time_list, ""), gettext("6 a.m."), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", '06:00:00');") 
     86        quickElement("a", quickElement("li", time_list, ""), gettext("Noon"), "href", "javascript:DateTimeShortcuts.handleClockQuicklink(" + num + ", '12:00:00');") 
    8787 
    8888        cancel_p = quickElement('p', clock_box, ''); 
  • django/branches/boulder-oracle-sprint/django/contrib/admin/media/js/core.js

    r3287 r4212  
    120120} 
    121121 
     122Date.prototype.getTwoDigitSecond = function() { 
     123    return (this.getSeconds() < 10) ? '0' + this.getSeconds() : this.getSeconds(); 
     124} 
     125 
    122126Date.prototype.getISODate = function() { 
    123127    return this.getCorrectYear() + '-' + this.getTwoDigitMonth() + '-' + this.getTwoDigitDate(); 
     
    126130Date.prototype.getHourMinute = function() { 
    127131    return this.getTwoDigitHour() + ':' + this.getTwoDigitMinute(); 
     132} 
     133 
     134Date.prototype.getHourMinuteSecond = function() { 
     135    return this.getTwoDigitHour() + ':' + this.getTwoDigitMinute() + ':' + this.getTwoDigitSecond(); 
    128136} 
    129137 
  • django/branches/boulder-oracle-sprint/django/contrib/admin/templates/admin/search_form.html

    r3097 r4212  
    88<input type="submit" value="{% trans 'Go' %}" /> 
    99{% if show_result_count %} 
    10     <span class="small quiet">{% blocktrans count cl.result_count as counter %}1 result{% plural %}{{ counter }} results{% endblocktrans %} (<a href="?">{% blocktrans with cl.full_result_count as full_result_count %}{{ full_result_count }} total{% endblocktrans %}</a>)</span> 
     10    <span class="small quiet">{% blocktrans count cl.result_count as counter %}1 result{% plural %}{{ counter }} results{% endblocktrans %} (<a href="?{% if cl.is_popup %}pop=1{% endif %}">{% blocktrans with cl.full_result_count as full_result_count %}{{ full_result_count }} total{% endblocktrans %}</a>)</span> 
    1111{% endif %} 
    1212{% for pair in cl.params.items %} 
  • django/branches/boulder-oracle-sprint/django/contrib/admin/views/auth.py

    r3925 r4212  
    33from django.contrib.auth.models import User 
    44from django.core.exceptions import PermissionDenied 
    5 from django import forms, template 
     5from django import oldforms, template 
    66from django.shortcuts import render_to_response 
    77from django.http import HttpResponseRedirect 
     
    2525    else: 
    2626        errors = new_data = {} 
    27     form = forms.FormWrapper(manipulator, new_data, errors) 
     27    form = oldforms.FormWrapper(manipulator, new_data, errors) 
    2828    return render_to_response('admin/auth/user/add_form.html', { 
    2929        'title': _('Add user'), 
  • django/branches/boulder-oracle-sprint/django/contrib/admin/views/main.py

    r3921 r4212  
    1 from django import forms, template 
     1from django import oldforms, template 
    22from django.conf import settings 
    33from django.contrib.admin.filterspecs import FilterSpec 
     
    227227    model = models.get_model(app_label, model_name) 
    228228    if model is None: 
    229         raise Http404, "App %r, model %r, not found" % (app_label, model_name
     229        raise Http404("App %r, model %r, not found" % (app_label, model_name)
    230230    opts = model._meta 
    231231 
     
    284284 
    285285    # Populate the FormWrapper. 
    286     form = forms.FormWrapper(manipulator, new_data, errors) 
     286    form = oldforms.FormWrapper(manipulator, new_data, errors) 
    287287 
    288288    c = template.RequestContext(request, { 
     
    303303    object_id = unquote(object_id) 
    304304    if model is None: 
    305         raise Http404, "App %r, model %r, not found" % (app_label, model_name
     305        raise Http404("App %r, model %r, not found" % (app_label, model_name)
    306306    opts = model._meta 
    307307 
     
    314314    try: 
    315315        manipulator = model.ChangeManipulator(object_id) 
    316     except ObjectDoesNotExist: 
    317         raise Http404 
     316    except model.DoesNotExist: 
     317        raise Http404('%s object with primary key %r does not exist' % (model_name, escape(object_id))) 
    318318 
    319319    if request.POST: 
     
    375375 
    376376    # Populate the FormWrapper. 
    377     form = forms.FormWrapper(manipulator, new_data, errors) 
     377    form = oldforms.FormWrapper(manipulator, new_data, errors) 
    378378    form.original = manipulator.original_object 
    379379    form.order_objects = [] 
     
    491491    object_id = unquote(object_id) 
    492492    if model is None: 
    493         raise Http404, "App %r, model %r, not found" % (app_label, model_name
     493        raise Http404("App %r, model %r, not found" % (app_label, model_name)
    494494    opts = model._meta 
    495495    if not request.user.has_perm(app_label + '.' + opts.get_delete_permission()): 
     
    528528    object_id = unquote(object_id) 
    529529    if model is None: 
    530         raise Http404, "App %r, model %r, not found" % (app_label, model_name
     530        raise Http404("App %r, model %r, not found" % (app_label, model_name)
    531531    action_list = LogEntry.objects.filter(object_id=object_id, 
    532532        content_type__id__exact=ContentType.objects.get_for_model(model).id).select_related().order_by('action_time') 
     
    744744    model = models.get_model(app_label, model_name) 
    745745    if model is None: 
    746         raise Http404, "App %r, model %r, not found" % (app_label, model_name
     746        raise Http404("App %r, model %r, not found" % (app_label, model_name)
    747747    if not request.user.has_perm(app_label + '.' + model._meta.get_change_permission()): 
    748748        raise PermissionDenied 
  • django/branches/boulder-oracle-sprint/django/contrib/admin/views/template.py

    r3951 r4212  
    11from django.contrib.admin.views.decorators import staff_member_required 
    22from django.core import validators 
    3 from django import template, forms 
     3from django import template, oldforms 
    44from django.template import loader 
    55from django.shortcuts import render_to_response 
     
    2626    return render_to_response('admin/template_validator.html', { 
    2727        'title': 'Template validator', 
    28         'form': forms.FormWrapper(manipulator, new_data, errors), 
     28        'form': oldforms.FormWrapper(manipulator, new_data, errors), 
    2929    }, context_instance=template.RequestContext(request)) 
    3030template_validator = staff_member_required(template_validator) 
    3131 
    32 class TemplateValidator(forms.Manipulator): 
     32class TemplateValidator(oldforms.Manipulator): 
    3333    def __init__(self, settings_modules): 
    3434        self.settings_modules = settings_modules 
    3535        site_list = Site.objects.in_bulk(settings_modules.keys()).values() 
    3636        self.fields = ( 
    37             forms.SelectField('site', is_required=True, choices=[(s.id, s.name) for s in site_list]), 
    38             forms.LargeTextField('template', is_required=True, rows=25, validator_list=[self.isValidTemplate]), 
     37            oldforms.SelectField('site', is_required=True, choices=[(s.id, s.name) for s in site_list]), 
     38            oldforms.LargeTextField('template', is_required=True, rows=25, validator_list=[self.isValidTemplate]), 
    3939        ) 
    4040 
  • django/branches/boulder-oracle-sprint/django/contrib/auth/forms.py

    r3908 r4212  
    44from django.template import Context, loader 
    55from django.core import validators 
    6 from django import forms 
     6from django import oldforms 
    77 
    8 class UserCreationForm(forms.Manipulator): 
     8class UserCreationForm(oldforms.Manipulator): 
    99    "A form that creates a user, with no privileges, from the given username and password." 
    1010    def __init__(self): 
    1111        self.fields = ( 
    12             forms.TextField(field_name='username', length=30, maxlength=30, is_required=True, 
     12            oldforms.TextField(field_name='username', length=30, maxlength=30, is_required=True, 
    1313                validator_list=[validators.isAlphaNumeric, self.isValidUsername]), 
    14             forms.PasswordField(field_name='password1', length=30, maxlength=60, is_required=True), 
    15             forms.PasswordField(field_name='password2', length=30, maxlength=60, is_required=True, 
     14            oldforms.PasswordField(field_name='password1', length=30, maxlength=60, is_required=True), 
     15            oldforms.PasswordField(field_name='password2', length=30, maxlength=60, is_required=True, 
    1616                validator_list=[validators.AlwaysMatchesOtherField('password1', _("The two password fields didn't match."))]), 
    1717        ) 
     
    2828        return User.objects.create_user(new_data['username'], '', new_data['password1']) 
    2929 
    30 class AuthenticationForm(forms.Manipulator): 
     30class AuthenticationForm(oldforms.Manipulator): 
    3131    """ 
    3232    Base class for authenticating users. Extend this to get a form that accepts 
     
    4242        self.request = request 
    4343        self.fields = [ 
    44             forms.TextField(field_name="username", length=15, maxlength=30, is_required=True, 
     44            oldforms.TextField(field_name="username", length=15, maxlength=30, is_required=True, 
    4545                validator_list=[self.isValidUser, self.hasCookiesEnabled]), 
    46             forms.PasswordField(field_name="password", length=15, maxlength=30, is_required=True), 
     46            oldforms.PasswordField(field_name="password", length=15, maxlength=30, is_required=True), 
    4747        ] 
    4848        self.user_cache = None 
     
    6969        return self.user_cache 
    7070 
    71 class PasswordResetForm(forms.Manipulator): 
     71class PasswordResetForm(oldforms.Manipulator): 
    7272    "A form that lets a user request a password reset" 
    7373    def __init__(self): 
    7474        self.fields = ( 
    75             forms.EmailField(field_name="email", length=40, is_required=True, 
     75            oldforms.EmailField(field_name="email", length=40, is_required=True, 
    7676                validator_list=[self.isValidUserEmail]), 
    7777        ) 
     
    106106        send_mail('Password reset on %s' % site_name, t.render(Context(c)), None, [self.user_cache.email]) 
    107107 
    108 class PasswordChangeForm(forms.Manipulator): 
     108class PasswordChangeForm(oldforms.Manipulator): 
    109109    "A form that lets a user change his password." 
    110110    def __init__(self, user): 
    111111        self.user = user 
    112112        self.fields = ( 
    113             forms.PasswordField(field_name="old_password", length=30, maxlength=30, is_required=True, 
     113            oldforms.PasswordField(field_name="old_password", length=30, maxlength=30, is_required=True, 
    114114                validator_list=[self.isValidOldPassword]), 
    115             forms.PasswordField(field_name="new_password1", length=30, maxlength=30, is_required=True, 
     115            oldforms.PasswordField(field_name="new_password1", length=30, maxlength=30, is_required=True, 
    116116                validator_list=[validators.AlwaysMatchesOtherField('new_password2', _("The two 'new password' fields didn't match."))]), 
    117             forms.PasswordField(field_name="new_password2", length=30, maxlength=30, is_required=True), 
     117            oldforms.PasswordField(field_name="new_password2", length=30, maxlength=30, is_required=True), 
    118118        ) 
    119119 
  • django/branches/boulder-oracle-sprint/django/contrib/auth/views.py

    r3462 r4212  
    11from django.contrib.auth.forms import AuthenticationForm 
    22from django.contrib.auth.forms import PasswordResetForm, PasswordChangeForm 
    3 from django import forms 
     3from django import oldforms 
    44from django.shortcuts import render_to_response 
    55from django.template import RequestContext 
     
    2727    request.session.set_test_cookie() 
    2828    return render_to_response(template_name, { 
    29         'form': forms.FormWrapper(manipulator, request.POST, errors), 
     29        'form': oldforms.FormWrapper(manipulator, request.POST, errors), 
    3030        REDIRECT_FIELD_NAME: redirect_to, 
    3131        'site_name': Site.objects.get_current().name, 
     
    6363                form.save(email_template_name=email_template_name) 
    6464            return HttpResponseRedirect('%sdone/' % request.path) 
    65     return render_to_response(template_name, {'form': forms.FormWrapper(form, new_data, errors)}, 
     65    return render_to_response(template_name, {'form': oldforms.FormWrapper(form, new_data, errors)}, 
    6666        context_instance=RequestContext(request)) 
    6767 
     
    7878            form.save(new_data) 
    7979            return HttpResponseRedirect('%sdone/' % request.path) 
    80     return render_to_response(template_name, {'form': forms.FormWrapper(form, new_data, errors)}, 
     80    return render_to_response(template_name, {'form': oldforms.FormWrapper(form, new_data, errors)}, 
    8181        context_instance=RequestContext(request)) 
    8282password_change = login_required(password_change) 
  • django/branches/boulder-oracle-sprint/django/contrib/comments/views/comments.py

    r3936 r4212  
    11from django.core import validators 
    2 from django import forms 
     2from django import oldforms 
    33from django.core.mail import mail_admins, mail_managers 
    44from django.http import Http404 
     
    2929                return [] 
    3030        self.fields.extend([ 
    31             forms.LargeTextField(field_name="comment", maxlength=3000, is_required=True, 
     31            oldforms.LargeTextField(field_name="comment", maxlength=3000, is_required=True, 
    3232                validator_list=[self.hasNoProfanities]), 
    33             forms.RadioSelectField(field_name="rating1", choices=choices, 
     33            oldforms.RadioSelectField(field_name="rating1", choices=choices, 
    3434                is_required=ratings_required and num_rating_choices > 0, 
    3535                validator_list=get_validator_list(1), 
    3636            ), 
    37             forms.RadioSelectField(field_name="rating2", choices=choices, 
     37            oldforms.RadioSelectField(field_name="rating2", choices=choices, 
    3838                is_required=ratings_required and num_rating_choices > 1, 
    3939                validator_list=get_validator_list(2), 
    4040            ), 
    41             forms.RadioSelectField(field_name="rating3", choices=choices, 
     41            oldforms.RadioSelectField(field_name="rating3", choices=choices, 
    4242                is_required=ratings_required and num_rating_choices > 2, 
    4343                validator_list=get_validator_list(3), 
    4444            ), 
    45             forms.RadioSelectField(field_name="rating4", choices=choices, 
     45            oldforms.RadioSelectField(field_name="rating4", choices=choices, 
    4646                is_required=ratings_required and num_rating_choices > 3, 
    4747                validator_list=get_validator_list(4), 
    4848            ), 
    49             forms.RadioSelectField(field_name="rating5", choices=choices, 
     49            oldforms.RadioSelectField(field_name="rating5", choices=choices, 
    5050                is_required=ratings_required and num_rating_choices > 4, 
    5151                validator_list=get_validator_list(5), 
    5252            ), 
    53             forms.RadioSelectField(field_name="rating6", choices=choices, 
     53            oldforms.RadioSelectField(field_name="rating6", choices=choices, 
    5454                is_required=ratings_required and num_rating_choices > 5, 
    5555                validator_list=get_validator_list(6), 
    5656            ), 
    57             forms.RadioSelectField(field_name="rating7", choices=choices, 
     57            oldforms.RadioSelectField(field_name="rating7", choices=choices, 
    5858                is_required=ratings_required and num_rating_choices > 6, 
    5959                validator_list=get_validator_list(7), 
    6060            ), 
    61             forms.RadioSelectField(field_name="rating8", choices=choices, 
     61            oldforms.RadioSelectField(field_name="rating8", choices=choices, 
    6262                is_required=ratings_required and num_rating_choices > 7, 
    6363                validator_list=get_validator_list(8), 
     
    118118        return c 
    119119 
    120 class PublicFreeCommentManipulator(forms.Manipulator): 
     120class PublicFreeCommentManipulator(oldforms.Manipulator): 
    121121    "Manipulator that handles public free (unregistered) comments" 
    122122    def __init__(self): 
    123123        self.fields = ( 
    124             forms.TextField(field_name="person_name", maxlength=50, is_required=True, 
     124            oldforms.TextField(field_name="person_name", maxlength=50, is_required=True, 
    125125                validator_list=[self.hasNoProfanities]), 
    126             forms.LargeTextField(field_name="comment", maxlength=3000, is_required=True, 
     126            oldforms.LargeTextField(field_name="comment", maxlength=3000, is_required=True, 
    127127                validator_list=[self.hasNoProfanities]), 
    128128        ) 
     
    222222        login(request, manipulator.get_user()) 
    223223    if errors or request.POST.has_key('preview'): 
    224         class CommentFormWrapper(forms.FormWrapper): 
     224        class CommentFormWrapper(oldforms.FormWrapper): 
    225225            def __init__(self, manipulator, new_data, errors, rating_choices): 
    226                 forms.FormWrapper.__init__(self, manipulator, new_data, errors) 
     226                oldforms.FormWrapper.__init__(self, manipulator, new_data, errors) 
    227227                self.rating_choices = rating_choices 
    228228            def ratings(self): 
     
    303303        return render_to_response('comments/free_preview.html', { 
    304304            'comment': comment, 
    305             'comment_form': forms.FormWrapper(manipulator, new_data, errors), 
     305            'comment_form': oldforms.FormWrapper(manipulator, new_data, errors), 
    306306            'options': options, 
    307307            'target': target, 
  • django/branches/boulder-oracle-sprint/django/contrib/contenttypes/management.py

    r3660 r4212  
    44 
    55from django.dispatch import dispatcher 
    6 from django.db.models import get_models, signals 
     6from django.db.models import get_apps, get_models, signals 
    77 
    8 def create_contenttypes(app, created_models, verbosity): 
     8def create_contenttypes(app, created_models, verbosity=2): 
    99    from django.contrib.contenttypes.models import ContentType 
    1010    app_models = get_models(app) 
     
    2323                print "Adding content type '%s | %s'" % (ct.app_label, ct.model) 
    2424 
     25def create_all_contenttypes(verbosity=2): 
     26    for app in get_apps(): 
     27        create_contenttypes(app, None, verbosity) 
     28 
    2529dispatcher.connect(create_contenttypes, signal=signals.post_syncdb) 
     30 
     31if __name__ == "__main__": 
     32    create_all_contenttypes() 
  • django/branches/boulder-oracle-sprint/django/contrib/sitemaps/__init__.py

    r3710 r4212  
    3030    from django.contrib.sites.models import Site 
    3131    current_site = Site.objects.get_current() 
    32     url = "%s%s" % (current_site.domain, sitemap
     32    url = "%s%s" % (current_site.domain, sitemap_url
    3333    params = urllib.urlencode({'sitemap':url}) 
    3434    urllib.urlopen("%s?%s" % (ping_url, params)) 
  • django/branches/boulder-oracle-sprint/django/contrib/sitemaps/templates/sitemap_index.xml

    r3869 r4212  
    11<?xml version="1.0" encoding="UTF-8"?> 
    2 <sitemapindex xmlns="http://www.google.com/schemas/sitemap/0.84"> 
     2<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> 
    33{% for location in sitemaps %}<sitemap><loc>{{ location|escape }}</loc></sitemap>{% endfor %} 
    44</sitemapindex> 
  • django/branches/boulder-oracle-sprint/django/contrib/sitemaps/templates/sitemap.xml

    r3869 r4212  
    11<?xml version="1.0" encoding="UTF-8"?> 
    2 <urlset xmlns="http://www.google.com/schemas/sitemap/0.84"> 
     2<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> 
    33{% spaceless %} 
    44{% for url in urlset %} 
  • django/branches/boulder-oracle-sprint/django/core/handlers/base.py

    r3951 r4212  
    8585            # Complain if the view returned None (a common error). 
    8686            if response is None: 
    87                 raise ValueError, "The view %s.%s didn't return an HttpResponse object." % (callback.__module__, callback.func_name) 
     87                try: 
     88                    view_name = callback.func_name # If it's a function 
     89                except AttributeError: 
     90                    view_name = callback.__class__.__name__ + '.__call__' # If it's a class 
     91                raise ValueError, "The view %s.%s didn't return an HttpResponse object." % (callback.__module__, view_name) 
    8892 
    8993            return response 
  • django/branches/boulder-oracle-sprint/django/core/handlers/wsgi.py

    r3877 r4212  
    6363    """ 
    6464    if not size: 
    65         return copyfileobj(fsrc, fdst, length) 
     65        return 
    6666    while size > 0: 
    6767        buf = fsrc.read(min(length, size)) 
     
    158158        except AttributeError: 
    159159            buf = StringIO() 
    160             content_length = int(self.environ['CONTENT_LENGTH']) 
     160            try: 
     161                # CONTENT_LENGTH might be absent if POST doesn't have content at all (lighttpd) 
     162                content_length = int(self.environ.get('CONTENT_LENGTH', 0)) 
     163            except ValueError: # if CONTENT_LENGTH was empty string or not an integer 
     164                content_length = 0 
    161165            safe_copyfileobj(self.environ['wsgi.input'], buf, size=content_length) 
    162166            self._raw_post_data = buf.getvalue() 
  • django/branches/boulder-oracle-sprint/django/core/servers/fastcgi.py

    r4066 r4212  
    119119        return fastcgi_help("ERROR: Implementation must be one of prefork or thread.") 
    120120 
     121    wsgi_opts['debug'] = False # Turn off flup tracebacks 
     122 
    121123    # Prep up and go 
    122124    from django.core.handlers.wsgi import WSGIHandler 
  • django/branches/boulder-oracle-sprint/django/core/xheaders.py

    r3786 r4212  
    1818    """ 
    1919    from django.conf import settings 
    20     if request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS or (request.user.is_authenticated() and request.user.is_staff): 
     20    if request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS or (hasattr(request, 'user') and request.user.is_authenticated() and request.user.is_staff): 
    2121        response['X-Object-Type'] = "%s.%s" % (model._meta.app_label, model._meta.object_name.lower()) 
    2222        response['X-Object-Id'] = str(object_id) 
  • django/branches/boulder-oracle-sprint/django/db/models/fields/generic.py

    r3787 r4212  
    33""" 
    44 
    5 from django import forms 
     5from django import oldforms 
    66from django.core.exceptions import ObjectDoesNotExist 
    77from django.db import backend 
     
    9999    def get_manipulator_field_objs(self): 
    100100        choices = self.get_choices_default() 
    101         return [curry(forms.SelectMultipleField, size=min(max(len(choices), 5), 15), choices=choices)] 
     101        return [curry(oldforms.SelectMultipleField, size=min(max(len(choices), 5), 15), choices=choices)] 
    102102 
    103103    def get_choices_default(self): 
  • django/branches/boulder-oracle-sprint/django/db/models/fields/__init__.py

    r4066 r4212  
    33from django.conf import settings 
    44from django.core import validators 
    5 from django import forms 
     5from django import oldforms 
    66from django.core.exceptions import ObjectDoesNotExist 
    77from django.utils.functional import curry 
     
    211211        if self.choices: 
    212212            if self.radio_admin: 
    213                 field_objs = [forms.RadioSelectField] 
     213                field_objs = [oldforms.RadioSelectField] 
    214214                params['ul_class'] = get_ul_class(self.radio_admin) 
    215215            else: 
    216                 field_objs = [forms.SelectField] 
     216                field_objs = [oldforms.SelectField] 
    217217 
    218218            params['choices'] = self.get_choices_default() 
     
    223223    def get_manipulator_fields(self, opts, manipulator, change, name_prefix='', rel=False, follow=True): 
    224224        """ 
    225         Returns a list of forms.FormField instances for this field. It 
     225        Returns a list of oldforms.FormField instances for this field. It 
    226226        calculates the choices at runtime, not at compile time. 
    227227 
     
    338338    choices = property(_get_choices) 
    339339 
     340    def formfield(self): 
     341        "Returns a django.newforms.Field instance for this database Field." 
     342        from django.newforms import CharField 
     343        # TODO: This is just a temporary default during development. 
     344        return CharField(label=capfirst(self.verbose_name)) 
     345 
    340346class AutoField(Field): 
    341347    empty_strings_allowed = False 
     
    359365 
    360366    def get_manipulator_field_objs(self): 
    361         return [forms.HiddenField] 
     367        return [oldforms.HiddenField] 
    362368 
    363369    def get_manipulator_new_data(self, new_data, rel=False): 
     
    386392 
    387393    def get_manipulator_field_objs(self): 
    388         return [forms.CheckboxField] 
     394        return [oldforms.CheckboxField] 
    389395 
    390396class CharField(Field): 
    391397    def get_manipulator_field_objs(self): 
    392         return [forms.TextField] 
     398        return [oldforms.TextField] 
    393399 
    394400    def to_python(self, value): 
     
    405411class CommaSeparatedIntegerField(CharField): 
    406412    def get_manipulator_field_objs(self): 
    407         return [forms.CommaSeparatedIntegerField] 
     413        return [oldforms.CommaSeparatedIntegerField] 
    408414 
    409415class DateField(Field): 
     
    473479 
    474480    def get_manipulator_field_objs(self): 
    475         return [forms.DateField] 
     481        return [oldforms.DateField] 
    476482 
    477483    def flatten_data(self, follow, obj = None): 
     
    498504    def get_db_prep_save(s