コード例 #1
0
 def save(self, domain_override=None,
          subject_template_name='base_templates/registration/password_reset_subject.txt',
          email_template_name='base_templates/registration/password_reset_email.html',
          use_https=False, token_generator=default_token_generator,
          from_email=None, request=None):
     """
     Generates a one-use only link for resetting password and sends to the
     user.
     """
     from django.core.mail import send_mail
     for user in self.users_cache:
         if not domain_override:
             current_site = get_current_site(request)
             site_name = current_site.name
             domain = current_site.domain
         else:
             site_name = domain = domain_override
         from SiteManagement.sites import get_country_from_url
         c = {
             'email': user.email,
             'domain': domain,
             'site_name': site_name,
             'uid': int_to_base36(user.id),
             'user': user,
             'token': token_generator.make_token(user),
             'protocol': use_https and 'https' or 'http',
             'home_url': '/%s/' % get_country_from_url(request.get_full_path()),
         }
         subject = loader.render_to_string(subject_template_name, c)
         # Email subject *must not* contain newlines
         subject = ''.join(subject.splitlines())
         email = loader.render_to_string(email_template_name, c)
         #print >>sys.stdout,from_email
         #print >>sys.stdout,subject
         #print >>sys.stdout,user.email
         #print >>sys.stdout,email
         send_mail(subject, email, from_email, [user.email])
コード例 #2
0
    def process_request(self,request):
        now = datetime.now()
        #request.session['last_activity'] = now
        last_activity = now
        try:
            last_activity = request.session['last_activity']
        except:
            pass
        #print >> sys.stdout, last_activity
        #print >> sys.stdout, (now - last_activity).seconds/60
        if (now - last_activity).seconds/60 > 30:
            # Do logout / expire session
            # and then...
            from UserManagement import logout
            from SiteManagement.sites import get_country_from_url
            logout(request)
            request.session['last_activity'] = now
            return HttpResponseRedirect("/%s/" %get_country_from_url(request.get_full_path()))

        if not request.is_ajax():
            # don't set this for ajax requests or else your
            # expired session checks will keep the session from
            # expiring :)
            request.session['last_activity'] = now