Ticket #2332: is_logged_in.diff
File is_logged_in.diff, 13.3 KB (added by , 18 years ago) |
---|
-
django/views/generic/create_update.py
20 20 the form wrapper for the object 21 21 """ 22 22 if extra_context is None: extra_context = {} 23 if login_required and request.user.is_anonymous():23 if login_required and not request.user.is_logged_in(): 24 24 return redirect_to_login(request.path) 25 25 26 26 manipulator = model.AddManipulator(follow=follow) … … 39 39 # No errors -- this means we can save the data! 40 40 new_object = manipulator.save(new_data) 41 41 42 if not request.user.is_anonymous():42 if request.user.is_logged_in(): 43 43 request.user.message_set.create(message="The %s was created successfully." % model._meta.verbose_name) 44 44 45 45 # Redirect to the new object: first by trying post_save_redirect, … … 86 86 the original object being edited 87 87 """ 88 88 if extra_context is None: extra_context = {} 89 if login_required and request.user.is_anonymous():89 if login_required and not request.user.is_logged_in(): 90 90 return redirect_to_login(request.path) 91 91 92 92 # Look up the object to be edited … … 113 113 if not errors: 114 114 object = manipulator.save(new_data) 115 115 116 if not request.user.is_anonymous():116 if request.user.is_logged_in(): 117 117 request.user.message_set.create(message="The %s was updated successfully." % model._meta.verbose_name) 118 118 119 119 # Do a post-after-redirect so that reload works, etc. … … 162 162 the original object being deleted 163 163 """ 164 164 if extra_context is None: extra_context = {} 165 if login_required and request.user.is_anonymous():165 if login_required and not request.user.is_logged_in(): 166 166 return redirect_to_login(request.path) 167 167 168 168 # Look up the object to be edited … … 180 180 181 181 if request.method == 'POST': 182 182 object.delete() 183 if not request.user.is_anonymous():183 if request.user.is_logged_in(): 184 184 request.user.message_set.create(message="The %s was deleted." % model._meta.verbose_name) 185 185 return HttpResponseRedirect(post_delete_redirect) 186 186 else: -
django/contrib/auth/models.py
124 124 125 125 def is_anonymous(self): 126 126 "Always returns False. This is a way of comparing User objects to anonymous users." 127 import warnings 128 warnings.warn("is_anonymous is deprecated. Use is_logged_in instead.") 127 129 return False 130 131 def is_logged_in(self): 132 "Always return True. This is a way of comparing User objects to anonymous users." 133 return True 128 134 129 135 def get_full_name(self): 130 136 "Returns the first_name plus the last_name, with a space in between." … … 292 298 return [] 293 299 294 300 def is_anonymous(self): 301 import warnings 302 warnings.warn("is_anonymous is deprecated. Use is_logged_in instead.") 295 303 return True 304 305 def is_logged_in(self): 306 return False -
django/contrib/auth/decorators.py
17 17 return _checklogin 18 18 return _dec 19 19 20 login_required = user_passes_test(lambda u: not u.is_anonymous())20 login_required = user_passes_test(lambda u: u.is_logged_in()) 21 21 login_required.__doc__ = ( 22 22 """ 23 23 Decorator for views that checks that the user is logged in, redirecting -
django/contrib/comments/templatetags/comments.py
114 114 comment_list = get_list_function(**kwargs).order_by(self.ordering + 'submit_date').select_related() 115 115 116 116 if not self.free: 117 if context.has_key('user') and not context['user'].is_anonymous():117 if context.has_key('user') and context['user'].is_logged_in(): 118 118 user_id = context['user'].id 119 119 context['user_can_moderate_comments'] = Comment.objects.user_is_moderator(context['user']) 120 120 else: -
django/contrib/comments/views/karma.py
15 15 rating = {'up': 1, 'down': -1}.get(vote, False) 16 16 if not rating: 17 17 raise Http404, "Invalid vote" 18 if request.user.is_anonymous():18 if not request.user.is_logged_in(): 19 19 raise Http404, _("Anonymous users cannot vote") 20 20 try: 21 21 comment = Comment.objects.get(pk=comment_id) -
django/contrib/comments/views/comments.py
63 63 validator_list=get_validator_list(8), 64 64 ), 65 65 ]) 66 if not user.is_anonymous():66 if user.is_logged_in(): 67 67 self["username"].is_required = False 68 68 self["username"].validator_list = [] 69 69 self["password"].is_required = False -
django/contrib/comments/templates/comments/form.html
2 2 {% if display_form %} 3 3 <form {% if photos_optional or photos_required %}enctype="multipart/form-data" {% endif %}action="/comments/post/" method="post"> 4 4 5 {% if user.is_anonymous %} 5 {% if user.is_logged_in %} 6 <p>{% trans "Username:" %} <strong>{{ user.username }}</strong> (<a href="/accounts/logout/">{% trans "Log out" %}</a>)</p> 7 {% else %} 6 8 <p><label for="id_username">{% trans "Username:" %}</label> <input type="text" name="username" id="id_username" /><br />{% trans "Password:" %} <input type="password" name="password" id="id_password" /> (<a href="/accounts/password_reset/">{% trans "Forgotten your password?" %}</a>)</p> 7 {% else %}8 <p>{% trans "Username:" %} <strong>{{ user.username }}</strong> (<a href="/accounts/logout/">{% trans "Log out" %}</a>)</p>9 9 {% endif %} 10 10 11 11 {% if ratings_optional or ratings_required %} -
django/contrib/flatpages/views.py
22 22 f = get_object_or_404(FlatPage, url__exact=url, sites__id__exact=settings.SITE_ID) 23 23 # If registration is required for accessing this page, and the user isn't 24 24 # logged in, redirect to the login page. 25 if f.registration_required and request.user.is_anonymous():25 if f.registration_required and not request.user.is_logged_in(): 26 26 from django.contrib.auth.views import redirect_to_login 27 27 return redirect_to_login(request.path) 28 28 if f.template_name: -
django/contrib/admin/views/decorators.py
46 46 member, displaying the login page if necessary. 47 47 """ 48 48 def _checklogin(request, *args, **kwargs): 49 if not request.user.is_anonymous() and request.user.is_staff:49 if request.user.is_logged_in() and request.user.is_staff: 50 50 # The user is valid. Continue to the admin page. 51 51 if request.POST.has_key('post_data'): 52 52 # User must have re-authenticated through a different window -
django/contrib/admin/templates/admin/base.html
20 20 <div id="branding"> 21 21 {% block branding %}{% endblock %} 22 22 </div> 23 {% if not user.is_anonymous%}{% if user.is_staff %}23 {% if user.is_logged_in %}{% if user.is_staff %} 24 24 <div id="user-tools">{% trans 'Welcome,' %} <strong>{% if user.first_name %}{{ user.first_name|escape }}{% else %}{{ user.username }}{% endif %}</strong>. {% block userlinks %}<a href="doc/">{% trans 'Documentation' %}</a> / <a href="password_change/">{% trans 'Change password' %}</a> / <a href="logout/">{% trans 'Log out' %}</a>{% endblock %}</div> 25 25 {% endif %}{% endif %} 26 26 {% block nav-global %}{% endblock %} -
docs/request_response.txt
106 106 A ``django.contrib.auth.models.User`` object representing the currently 107 107 logged-in user. If the user isn't currently logged in, ``user`` will be set 108 108 to an instance of ``django.contrib.auth.models.AnonymousUser``. You 109 can tell them apart with ``is_ anonymous()``, like so::109 can tell them apart with ``is_logged_in()``, like so:: 110 110 111 if request.user.is_anonymous(): 111 if request.user.is_logged_in(): 112 # Do something for logged-in users. 113 else: 112 114 # Do something for anonymous users. 113 else:114 # Do something for logged-in users.115 115 116 116 ``user`` is only available if your Django installation has the 117 117 ``AuthenticationMiddleware`` activated. For more, see -
docs/authentication.txt
94 94 In addition to those automatic API methods, ``User`` objects have the following 95 95 custom methods: 96 96 97 * ``is_ anonymous()`` -- Always returns ``False``. This is a way of97 * ``is_logged_in()`` -- Always returns ``True``. This is a way of 98 98 comparing ``User`` objects to anonymous users. 99 99 100 100 * ``get_full_name()`` -- Returns the ``first_name`` plus the ``last_name``, … … 218 218 the ``django.contrib.auth.models.User`` interface, with these differences: 219 219 220 220 * ``id`` is always ``None``. 221 * ``is_ anonymous()`` returns ``True`` instead of ``False``.221 * ``is_logged_in()`` returns ``False`` instead of ``True``. 222 222 * ``has_perm()`` always returns ``False``. 223 223 * ``set_password()``, ``check_password()``, ``save()``, ``delete()``, 224 224 ``set_groups()`` and ``set_permissions()`` raise ``NotImplementedError``. … … 254 254 ``request.user`` in views. ``request.user`` will give you a ``User`` object 255 255 representing the currently logged-in user. If a user isn't currently logged in, 256 256 ``request.user`` will be set to an instance of ``AnonymousUser`` (see the 257 previous section). You can tell them apart with ``is_ anonymous()``, like so::257 previous section). You can tell them apart with ``is_logged_in()``, like so:: 258 258 259 if request.user.is_anonymous(): 259 if request.user.is_logged_in(): 260 # Do something for logged-in users. 261 else: 260 262 # Do something for anonymous users. 261 else:262 # Do something for logged-in users.263 263 264 264 .. _request objects: http://www.djangoproject.com/documentation/request_response/#httprequest-objects 265 265 .. _session documentation: http://www.djangoproject.com/documentation/sessions/ … … 323 323 ~~~~~~~~~~~ 324 324 325 325 The simple, raw way to limit access to pages is to check 326 ``request.user.is_ anonymous()`` and either redirect to a login page::326 ``request.user.is_logged_in()`` and either redirect to a login page:: 327 327 328 328 from django.http import HttpResponseRedirect 329 329 330 330 def my_view(request): 331 if request.user.is_anonymous():331 if not request.user.is_logged_in(): 332 332 return HttpResponseRedirect('/login/?next=%s' % request.path) 333 333 # ... 334 334 335 335 ...or display an error message:: 336 336 337 337 def my_view(request): 338 if request.user.is_anonymous():338 if not request.user.is_logged_in(): 339 339 return render_to_response('myapp/login_error.html') 340 340 # ... 341 341 … … 439 439 permission ``polls.can_vote``:: 440 440 441 441 def my_view(request): 442 if request.user.is_anonymous() or not request.user.has_perm('polls.can_vote'):442 if not request.user.is_logged_in() or not request.user.has_perm('polls.can_vote'): 443 443 return HttpResponse("You can't vote in this poll.") 444 444 # ... 445 445 … … 605 605 The currently logged-in user, either a ``User`` instance or an``AnonymousUser`` 606 606 instance, is stored in the template variable ``{{ user }}``:: 607 607 608 {% if user.is_anonymous %} 608 {% if user.is_logged_in %} 609 <p>Welcome, {{ user.username }}. Thanks for logging in.</p> 610 {% else %} 609 611 <p>Welcome, new user. Please log in.</p> 610 {% else %}611 <p>Welcome, {{ user.username }}. Thanks for logging in.</p>612 612 {% endif %} 613 613 614 614 Permissions