コード例 #1
0
ファイル: auth.py プロジェクト: DDMAL/musiclibs
    def post(self, request):
        """Log out a user.

        The data of the post can (and should) be empty.
        """
        logout(request)
        return Response({"message": "Logged out."})
コード例 #2
0
ファイル: views.py プロジェクト: tcollart/intra42
def signout(request):
    if request.user.is_authenticated():
        log_entry = MyLogEntry(user=User.objects.get(pk=request.user.id),
                               message="logged out.")
        log_entry.save()
        logout(request)
    return HttpResponseRedirect('/')
コード例 #3
0
 def delete(self, request):
     """
     this model delete will log the user out
     """
     # user = self.get_object(request.user)
     logout(request)
     return Response(status=status.HTTP_204_NO_CONTENT)
コード例 #4
0
ファイル: views.py プロジェクト: joash/djangotemplate
def logout_view(request):
    """
    Logout a user
    """
    logout(request)
    # Redirect to a success page.
    return HttpResponseRedirect("/")
コード例 #5
0
ファイル: views.py プロジェクト: ahankinson/imageserve
def logout_view(request):
    """
    Logs out the current user.
    """
    logout(request)
    next = request.GET["next"]
    return redirect(next)
コード例 #6
0
ファイル: urls.py プロジェクト: Syerram/kairos
def logout(request):
    views.logout(request)
    next = '/login/'
    if 'next' in request.GET:
        next = request.GET['next']
    
    return HttpResponseRedirect(next)
コード例 #7
0
ファイル: views.py プロジェクト: arthurlutz/btb
def flag_comment(request, comment_id):
    """
    Flag a comment. 
    """
    if not request.user.is_active:
        raise PermissionDenied
    comment = get_object_or_404(Comment, pk=comment_id)
    form = FlagForm(request.POST or None)
    if form.is_valid():
        if handle_flag_spam(request.user, form.cleaned_data['reason']):
            messages.info(request, _(u"Your account has been suspended due to behavior that looks like spam. If this is an error, please contact us using the contact link at the bottom of the page."))
            logout(request)
            return redirect("/")
        ticket, created = Note.objects.get_or_create(
            creator=request.user,
            text="FLAG from user. \n %s" % form.cleaned_data['reason'],
            resolved=None,
            important=form.cleaned_data['urgent'],
            comment=comment,
        )
        # Queue up an async process to send notification email in 2 minutes (we
        # delay to trap spam floods).
        if created:
             send_flag_notification_email.apply_async(
                     args=[ticket.pk], countdown=120)
        messages.info(request, _(u"A moderator will review that comment shortly. Thanks for helping us run a tight ship."))
        return redirect(comment.document.get_absolute_url())

        # redirect to confirmation.
    return render(request, "scanning/flag.html", {
            'form': form,
        })
コード例 #8
0
ファイル: views.py プロジェクト: gmuresan/repunch
def index(request, template_name='index.html'):

    if request.user.is_authenticated():

        if hasattr(request.user, 'retailer'):
            return HttpResponseRedirect('/retailer/home/')
        elif request.user.is_superuser:
            logout(request)
            return HttpResponseRedirect('/')
        else:
            return HttpResponseRedirect('/vault/')

        user = request.user
        user_updates = user.updates.all()[0:10]
        retailer_updates = list()

        for retailer in user.subscribed_retailers.all():
            retailer_updates.extend(retailer.updates.filter()[0:3])

        updates = retailer_updates
        updates.extend(user_updates)

        updates = sorted(updates, key= lambda update: update.date, reverse=True)

        variables = RequestContext(request, {
            'updates':updates,

        })
    else:
        variables = RequestContext(request, {})

    
    return render_to_response(template_name, variables)
コード例 #9
0
ファイル: views.py プロジェクト: anhpt204/hvhc
def baithi_finish(request, pk):
    if not request.user.is_authenticated():
        return  HttpResponseRedirect('/hvhc/tracnghiem/')

    baithi = BaiThi.objects.get(pk=pk)

    answers = {}

    if request.POST:
        questions = json.loads(baithi.ds_cauhoi)
        for q_id,_ in questions:
            try:
                answers[q_id] = int(request.POST[q_id])
            except:
                continue

    baithi.save_tralois(answers)

    baithi.cham_diem()
    baithi.finish()

    logout(request)
    template = loader.get_template('ketqua.html')
    context = RequestContext(request, {
        'diem': baithi.diem,
    })
    return HttpResponse(template.render(context))
コード例 #10
0
ファイル: views.py プロジェクト: agarnelo/Interrobang
def logout(request):
    logout(request)
    return redirect('index')



#http://stackoverflow.com/questions/32292769/django-user-logout-fails-to-redirect-homepage
コード例 #11
0
ファイル: views.py プロジェクト: anhpt204/tracnghiem
def login_user(request):
    logout(request)
    username = password = ''
    
#     ds_mothi = MonThi.objects.all();
    today = datetime.now().date()
    ds_cathi = CaThi.objects.filter(ngay_thi=today)
    template = loader.get_template('login.html')
    context = RequestContext(request, {
        'ds_cathi': ds_cathi,
    })
    
    if(request.POST):
        username = request.POST['username']
        password = request.POST['password']
        cathi_id = request.POST['cathi']
         
        user = authenticate(username=username, password=password)
         
        if user is not None:
            login(request, user)
            
            dethi = DeThi.objects.filter(sinh_vien__ma_sv=username, ca_thi=cathi_id)[0]
            return HttpResponseRedirect('/quiz/cathi/' + str(dethi.id) + '/')
         
    return HttpResponse(template.render(context))
コード例 #12
0
ファイル: views.py プロジェクト: kotky/socialapplication
def logout_user(request):
    if request.user.is_authenticated():
        views.logout(request ,template_name="index.html")
    isAuth = False
    username = ""
    print isAuth
    return render(request, 'index.html', {'user':{'is_authenticated':isAuth, 'username':username}})
コード例 #13
0
ファイル: views.py プロジェクト: TouK/vumi-go
def token(request, token):
    # We only need the redis manager here, but it's saner to get a whole
    # vumi_api and not worry about all the setup magic.
    api = vumi_api()
    token_data = api.token_manager.get(token)
    if not token_data:
        raise Http404

    user_id = int(token_data['user_id'])
    redirect_to = token_data['redirect_to']
    system_token = token_data['system_token']

    # If we're authorized and we're the same user_id then redirect to
    # where we need to be
    if not user_id or request.user.id == user_id:
        path, _, qs = redirect_to.partition('?')
        params = urlparse.parse_qs(qs)
        # since the token can be custom we prepend the size of the user_token
        # to the token being forwarded so the view handling the `redirect_to`
        # can lookup the token and verify the system token.
        params.update({'token': '%s-%s%s' % (len(token), token, system_token)})
        return redirect('%s?%s' % (path, urlencode(params)))

    # If we got here then we need authentication and the user's either not
    # logged in or is logged in with a wrong account.
    if request.user.is_authenticated():
        logout(request)
        messages.info(request, 'Wrong account for this token.')
    return redirect('%s?%s' % (reverse('auth_login'), urlencode({
        'next': reverse('token', kwargs={'token': token}),
        })))
コード例 #14
0
ファイル: views.py プロジェクト: anhpt204/hvhc
def theodoithi_ketthuc(request, pk):
    khthi = KHThi.objects.get(pk=pk)
    khthi.trang_thai = KHTHI_DATHI
    khthi.save()
    logout(request)

    return HttpResponse('Bạn đã thoát khỏi hệ thống. Bấm <a href=\'/hvhc/tracnghiem/ \'> VÀO ĐÂY </a> để đăng nhập lại')
コード例 #15
0
ファイル: views.py プロジェクト: scvillon/loja-progweb
def finalizar_compra(request):
    for prod_id in request.session['prod_ids']:
        prod = Produto.objects.get(id=prod_id)
        prod.qtd_em_estoque -= 1
        prod.save()
    logout(request)
    return HttpResponseRedirect('/')
コード例 #16
0
ファイル: views.py プロジェクト: CicloviaTeam/CicloviaProgram
def user(request):
	"""User page."""
	if request.method == 'POST':
		if request.POST['opcion']=='Cerrar sesión'.decode('utf-8'):
			return auth_views.logout(request,next_page='CicloviaProgram:index')
		elif request.POST['opcion']=='Borrar usuario':
			DeleteU(request.user.username)
			return auth_views.logout(request,next_page='CicloviaProgram:index')
		elif request.POST['opcion']=='Actualizar datos':
			form = UserChangeFormUniqueEmail(request.POST, instance=User.objects.get(pk=request.user.pk))
			if form.is_valid():
				userTemp = User.objects.get(pk=request.user.pk)
				if form.cleaned_data['email']==userTemp.email or \
								len(User.objects.filter(email=form.cleaned_data['email']))is 0:
					form.save()
					return render(request, 'ciclovia/user.html',
								  {'form': form,'mensaje': _('User info updated.')})
				else:
					form.add_error('email',forms.ValidationError(_('email already exists.'),code='used email'))
					return render(request, 'ciclovia/user.html', {'form': form})

			else:
				return render(request, 'ciclovia/user.html', {'form': form})
	else:
		form = UserChangeFormUniqueEmail(instance=User.objects.get(pk=request.user.pk))
		return render(request, 'ciclovia/user.html', {'form': form})
コード例 #17
0
ファイル: account.py プロジェクト: nuannuanwu/weixiao
def oa_logout(request):
    """登出账号"""
    if request.user.is_authenticated:
        logout(request)
        messages.success(request, _('You have been signed out.'))
        return redirect("kinger_edu_index")
    else:
        return redirect(request.get_full_path())
コード例 #18
0
ファイル: views.py プロジェクト: D-I-L/django-pydgin-auth
def register(request, extra_context=None):
    '''register a new user after agreeing to terms and condition'''

    try:
        base_html_dir = settings.BASE_HTML_DIR
    except AttributeError:
        base_html_dir = ''

    token = {}

    if request.method == 'POST':
        form = PydginUserCreationForm(request.POST)
        if form.is_valid():
            new_user = form.save()
            new_user.backend = 'django.contrib.auth.backends.ModelBackend'
            new_user = authenticate(username=form.cleaned_data['username'].lower(),
                                    password=form.cleaned_data['password1'],
                                    email=form.cleaned_data['email'],
                                    is_terms_agreed=form.cleaned_data['is_terms_agreed'])

            # login(request, new_user)
            if new_user and new_user.is_authenticated:
                '''We have to login once so the last login date is set'''
                login(request, new_user)

                request_context = RequestContext(request)
                request_context.push({"basehtmldir": base_html_dir})
                request_context.push({"first_name": new_user.first_name})
                request_context.push({"last_name": new_user.last_name})
                request_context.push({"user_name": new_user.username})
                request_context.push({"user_email": new_user.email})

                logout(request)

                has_send = send_email_confirmation(request, new_user)

                request_context = RequestContext(request)
                request_context.push({"basehtmldir": base_html_dir})

                if has_send:
                    request_context.push({"success_registration": True})
                    return render(request, 'registration/registration_form_complete.html', request_context)
                else:
                    request_context.push({"failure_registration": True})
                    return render(request, 'registration/registration_form_complete.html', request_context)
            else:
                print('new_user is not authenticated')
        else:
            '''not a valid form'''
            # print(form.error_messages)
    else:
        form = PydginUserCreationForm()

    token.update(csrf(request))
    token['form'] = form
    token['basehtmldir'] = base_html_dir

    return render(request, 'registration/registration_form.html', token)
コード例 #19
0
ファイル: views.py プロジェクト: ATOM49/django-voip
def logout(request, next_page=None, template_name='registration/logged_out.html'):
    "Logs out the user and displays 'You are logged out' message."
    from django.contrib.auth import logout
    logout(request)
    if next_page is None:
        return render_to_response(template_name, {'title': 'Logged out'}, context_instance=RequestContext(request))
    else:
        # Redirect to this page until the session has been cleared.
        return HttpResponseRedirect(next_page or request.path)
コード例 #20
0
ファイル: views.py プロジェクト: fahmyabdul/web-pertama
def login_adm(request):
    if request.user.is_authenticated():
        if request.user.is_staff:
            return redirect('/adm/blog/post')
        else:
            stat = 'bukanadmin'
            logout(request)
            return render(request, 'registration/login.html', {'stat':stat})
    else:
        return login(request)
コード例 #21
0
ファイル: views.py プロジェクト: DasunAriyarathna/djapps
def normal_account_logout(request):
    if settings.USING_APPENGINE:
        # how to log out?
        assert "GAE Cannot logout yet"
    else:
        from django.contrib.auth.views import logout
        logout(request)

    next_page = djrequest.get_getvar(request, "next", "/")
    return HttpResponseRedirect(next_page or request.path)
コード例 #22
0
ファイル: auth.py プロジェクト: acTanguy/projet
 def get(self, request):
     """
     Logs out the current user.
     """
     logout(request)
     next = request.GET.get('next', None)
     if next:
         return redirect(next)
     else:
         return redirect('/')
コード例 #23
0
def custom_logout(request):
    
    redirect_to = "/"
    
    if 'ORG_SETTINGS' in request.session and request.session['ORG_SETTINGS']:
        redirect_to = "/"+request.session['ORG_SETTINGS'].login_url+"/"
        
    django_auth_views.logout(request)
    
    print redirect_to
         
    return HttpResponseRedirect(redirect_to)      
コード例 #24
0
ファイル: views.py プロジェクト: anhpt204/hvhc
def boc_tron_de_thi(request, pk):
    khthi = KHThi.objects.get(pk=pk)
    # get nguoi boc de
    nguoi_boc_de = GiaoVien.objects.get(user__pk = request.user.pk)

    succ = khthi.boc_va_tron_de(nguoi_boc_de)
    logout(request)
    if succ:
#         return HttpResponseRedirect("/hvhc/tracnghiem/khthi/show/" + str(pk) + "/" )
        return HttpResponse("Bốc và trộn đề thành công! Bấm <a href=\"/admin\">VÀO ĐÂY</a> để đăng nhập lại vào hệ thống.")
    else:
        return HttpResponse(u"Bốc và trộn đề thi KHÔNG thành công! Kiểm tra lại cấu hình sinh đề thi.")
コード例 #25
0
ファイル: middlewares.py プロジェクト: DongHuaLu/mdcom
	def process_view(self, request, view_func, view_args, view_kwargs):
		if (request.user.is_authenticated() and not 'ss' in request.COOKIES):
			logout(request)
			return HttpResponseRedirect('/')

		if (not request.path.startswith("/IVR/") and
				request.user.is_authenticated() and
					'password_change_time' in request.session and
			MHLUser.objects.filter(pk=request.user.pk).only("password_change_time").\
				get().password_change_time > request.session['password_change_time']):

			logout(request)
			return HttpResponseRedirect('/')
コード例 #26
0
    def get(self, request):
        access_token = request.GET.get('access_token', None)
        request_token = request.GET.get('request_token', None)
        if not request_token or not access_token:
            return self.missing_token_argument()
        try:
            self.token = Token.objects.select_related('consumer').get(access_token=access_token, request_token=request_token)
        except Token.DoesNotExist:
            return self.token_not_found()

        self.token.delete()
        logout(request)

        return self.handle_logging_user_out()
コード例 #27
0
def logout(request, template_name="logout.html"):

    resDict = {}

    # decide another available language.
    lang = get_language()
    lang_name, lang_link = prepareOtherLang(request, "fake", lang)
    resDict["lang_name"] = lang_name
    resDict["lang_link"] = lang_link

    from django.contrib.auth.views import logout

    logout(request)

    return render_to_response(template_name, resDict, context_instance=RequestContext(request))
コード例 #28
0
def account_delete(request):
    """
    Provides a method for deleting the users account
    
    """
    if request.method == "POST":
        form = DeleteAccountForm(request.POST)
        if form.is_valid():
            user = User.objects.get(pk=request.user.id)
            logout(request)
            user.delete()
            return redirect("/")
    else:
        form = DeleteAccountForm()
    return render(request, "authentication/account_delete.html", {"form": form})
コード例 #29
0
ファイル: account.py プロジェクト: gdjet/gdjet
def logout( request, next = None, next_url = None, 
            template = 'gdjet/account/logout.html',
            template_name = None ):
    if template_name:
        template = template_name
    if 'next' in request.GET.keys():
        next = request.GET['next']
    django_auth.logout(request)
    if next_url:
        return HttpResponseRedirect( reverse( next_url ) )
    if next:
        return HttpResponseRedirect(next)
    else:
        return HttpResponse( loader.get_template ( template ).render(
                                RequestContext(request, {}) ) )
コード例 #30
0
ファイル: views.py プロジェクト: carriercomm/django_atomiadns
def change_password(request):
    if request.method == 'GET':
        return render_to_response("change_password.html", {}, context_instance=RequestContext(request))

    if not request.session.has_key("logged_in"):
        return home(request)

    old_password = request.POST.get('old_pass', None)
    password = request.POST.get('pass', None)
    conf_password = request.POST.get('conf_pass', None)

    if old_password != request.session.get('password'):
        return render_to_response("error.html",
                                  {
                                      "error_message": "Incorrect old password!"
                                  },
                                  context_instance=RequestContext(request))

    if password == conf_password:
        client = get_client(request.session)
        res = json.loads(client.EditAccount(request.session.get('username'), password))

        if "error_message" in res:
            return render_to_response("error.html",
                                      {
                                          "error_message": "Server error while changing password."
                                      },
                                      context_instance=RequestContext(request))
        return logout(request, next_page='/')
    else:
        return render_to_response("error.html",
                                  {
                                      "error_message": "Password and confirmation do not match."
                                  },
                                  context_instance=RequestContext(request))
コード例 #31
0
def connect(request, redirect_field_name=REDIRECT_FIELD_NAME, app_name=None):
    """ Connects the Facebook Account to the current logged-in user. """
    fb_app = get_app_dict(app_name)
    graph = get_graph(request, app_name=app_name)
    redirect_to = request.REQUEST.get(redirect_field_name,
                                      fb_app['REDIRECT-URL'])

    if request.user.is_authenticated():
        try:
            me = graph.get_object("me")
        except facebook.GraphAPIError as e:
            return redirect('fb_login')

        # if the user has already a facebook connection, abort and show
        # error message
        if hasattr(request.user, 'user'):
            logger.debug('The logged in user is already connected.')
            # check if the django user and FB user match:
            if graph.user_id <> request.user.user.id:
                logger.debug(
                    'User %s already connected with Facebook account %s' %
                    (request.user.get_full_name, request.user.user._name))
                auth_views.logout(request, next_page=reverse('fb_app'))
            # Otherwise redirect
            return redirect(redirect_to)
        else:
            # The User has no Facebook account attached. Connect him.
            try:
                # if that facebook user already exists, abort and show error message
                fb_user = FacebookUser.objects.get(id=graph.user_id)
            except FacebookUser.DoesNotExist:
                fb_user = FacebookUser(id=graph.user_id)
                fb_user.get_from_facebook(graph=graph, save=True)
            else:
                if isinstance(fb_user.user, User):
                    auth_views.logout(request, next_page=reverse('fb_login'))
                else:
                    fb_user.user = request.user
                    fb_user.save()
            finally:
                return redirect(redirect_to)

    else:
        # The user is not logged in
        # -> redirect to login page
        return redirect('fb_login')
コード例 #32
0
ファイル: website.py プロジェクト: zsjtoby/DjangoX
    def get(self, request, *args, **kwargs):
        context = self.get_context()
        defaults = {
            'extra_context':
            context,
            'current_app':
            self.admin_site.name,
            'template_name':
            self.logout_template or 'xadmin/views/logged_out.html',
        }
        if self.logout_template is not None:
            defaults['template_name'] = self.logout_template

        self.update_params(defaults)
        logout(request, **defaults)
        return HttpResponseRedirect(
            self.get_param('_redirect') or self.get_admin_url('index'))
コード例 #33
0
def logout(request):
    response = auth_views.logout(request,
                                 template_name='registration/logout.html')
    # on logout, delete the mirror cookie
    response.delete_cookie(settings.MIRROR_COOKIE_NAME,
                           domain=get_mirror_cookie_domain(request),
                           path=settings.SESSION_COOKIE_PATH)
    return response
コード例 #34
0
ファイル: views.py プロジェクト: pmclanahan/mozillians
def logout(request, **kwargs):
    """Logout view that wraps Django's logout but always redirects.

    Django's contrib.auth.views logout method renders a template if the
    `next_page` argument is `None`, which we don't want. This view always
    returns an HTTP redirect instead.
    """
    return auth_views.logout(request, next_page=reverse('home'), **kwargs)
コード例 #35
0
def not_anonymous(request):
    """
    Checks if user is logged in and if his account is active.
    Logs out inactive users, effectively blocking
    them from performing actions.

    :param request:
    :return:
    """
    if request.user.is_authenticated:
        if request.user.is_active:
            return True
        else:
            logout(request)
            return False
    else:
        return False
コード例 #36
0
def account_logout(request, next_page):
    from django.contrib.auth.views import logout
    from social_auth.models import UserSocialAuth

    user = request.user
    DOMAIN_NAME = request.get_host()  #settings.DOMAIN_NAME
    try:
        instance = UserSocialAuth.objects.filter(provider='facebook').get(
            user=user)
        access_token = instance.tokens["access_token"]
        fb_logout = ('https://www.facebook.com/logout.php?'
                     'next=http://%s&access_token=%s' %
                     (DOMAIN_NAME, access_token))
        response = logout(request, next_page=fb_logout)
    except:
        response = logout(request, next_page=next_page)
    return response
コード例 #37
0
def weblate_logout(request):
    """Logout handler, just wrapper around standard Django logout."""
    messages.info(request, _('Thanks for using Weblate!'))

    return auth_views.logout(
        request,
        next_page=reverse('home'),
    )
コード例 #38
0
def auth_logout(request):
    """simple wrapper around django's logout view"""
    if request.method == "POST":
        from django.contrib.auth.views import logout
        return logout(request, next_page="/")
    else:
        from django.shortcuts import redirect
        return redirect("/")
コード例 #39
0
    def logout(self, request):
        """
        Logs out the user for the given HttpRequest.

        This should *not* assume the user is already logged in.
        """
        from django.contrib.auth.views import logout
        return logout(request)
コード例 #40
0
ファイル: middlewares.py プロジェクト: stxSoult/test
    def middleware(request):
        # Code to be executed for each request before
        # the view (and later middleware) are called.
        response = get_response(request)
        user = request.user.is_authenticated()

        if request.user.is_staff:
            return response

        if not user and request.path not in safe_urls:
            messages.error(request, 'Login to browse')
            return redirect('accounts:login')

        if user and not request.user.email_confirmed:
            messages.error(request, 'First activate your email')
            logout(request)

        return response
コード例 #41
0
def customlogout(request):
    token = request.session.get('session_user_token', None)
    if token:
        session_user = UserWebSocketSession.objects.get(token=token)
        session_user.session_two_steps = False
        session_user.active_websocket = False
        session_user.save()

    return logout(request)
コード例 #42
0
ファイル: public.py プロジェクト: sclzzhanghaijun/django-cms
def logout(request):
    response = auth_views.logout(request, next_page='admin_login')
    response.delete_cookie(settings.SESSION_COOKIE_NAME,
                           domain=settings.SESSION_COOKIE_DOMAIN,
                           path=settings.SESSION_COOKIE_PATH)

    request.session.modified = False

    return response
コード例 #43
0
ファイル: user.py プロジェクト: gone/Spirit
def custom_logout(request, **kwargs):
    # Current Django 1.6 uses GET to log out
    if not request.user.is_authenticated():
        return redirect(request.GET.get('next', reverse('spirit:user-login')))

    if request.method == 'POST':
        return logout(request, **kwargs)

    return render(request, 'spirit/user/logout.html')
コード例 #44
0
 def dispatch(self, request, *args, **kwargs):
     return logout(
         request,
         template_name=self.template_name,
         extra_context={
             'cruditor':
             self.get_cruditor_context(alternative_title='Logout')
         },
     )
コード例 #45
0
 def logout(self, request, *args, **kwargs):
     """
     Calls ``django.contrib.auth.views.logout`` with a custom template and
     extra context.
     """
     from django.contrib.auth.views import logout
     kwargs['template_name'] = self.logout_template
     kwargs['extra_context'] = self.default_context()
     return logout(request, *args, **kwargs)
コード例 #46
0
def logout(request, next_page):
    """
    The logout handler for twitter authentication
    """

    logging.debug("Social methods supported are: %s",
                  social_auth.getSupportedSites())

    return django_views.logout(request, next_page, 'social_auth/logout.html')
コード例 #47
0
def user_logout(request):
    username = request.user.username
    user = User.objects.get(username=username)
    try:
        v_object = Volttron.objects.get(user=user)
        v_object.stop_container()
    except ObjectDoesNotExist:
        pass
    return auth_views.logout(request, next_page='login')
コード例 #48
0
def logout(request):
    data = {
        'next_page': reverse_lazy('login'),
    }
    response = auth_views.logout(request, **data)

    if issubclass(HttpResponseRedirect, response.__class__):
        messages.add_message(request, messages.INFO, "Je bent nu uitgelogd.")

    return response
コード例 #49
0
ファイル: views.py プロジェクト: ExpressDelNorte/Explat
def custom_logout(request, **kwargs):
    # Current Django 1.6 uses GET to log out
    if not request.user.is_authenticated():
        return redirect(request.GET.get('next', reverse('usuario:user-login')))
    # end if
    if 'cargo' in request.session and 'empresa' in request.session:
        del request.session["cargo"]
        del request.session["empresa"]
    # end if
    return logout(request, **kwargs)
コード例 #50
0
def custom_logout(request):
    session_id = request.META['HTTP_COOKIE'].split()[1].split('=')[1]

    if session_id in settings.FORM_SESSION:
        settings.FORM_SESSION.pop(session_id)

    # if session_id in SESSION_PAGES:
    #     SESSION_PAGES.pop(session_id)

    return logout(request, next_page='/')
コード例 #51
0
    def process_view(self,request,view_func,view_args,view_kargs):
        assert hasattr(request,'user')
        path=request.path_info.lstrip('/')
        print(path)
        '''
        if not request.user.is_authenticated():
            if not any(url.match(path) for url in EXEMPT_URLS):
                return redirect(settings.LOGIN_URL)'''
        print(('logout').lstrip('/'))
        if path==reverse('account:logout').lstrip('/'):
            logout(request)

        url_is_exempt=any(url.match(path) for url in EXEMPT_URLS)
        if request.user.is_authenticated() and url_is_exempt:
            return redirect(settings.LOGIN_REDIRECT_URL)
        elif request.user.is_authenticated() or url_is_exempt:
            return None
        else:
            return redirect(settings.LOGIN_URL)
コード例 #52
0
def inactivos(request):
    ultimo_contrato = Contrato.objects.latest('id')
    hoy = date.today()
    user = request.user
    if ultimo_contrato.fecha_caducidad >= hoy or user.is_superuser:
        repositores = Usuario.objects.all()
        limite_usuarios = ultimo_contrato.limite_usuarios
        porcentaje = int(repositores.count() * 100 / limite_usuarios)
        return render(
            request, 'inactivos.html', {
                'usuarios': repositores,
                'porcentaje': porcentaje,
                'limite_usuarios': limite_usuarios
            })
    else:
        logout(request)
        state = "Tu cuenta ha caducado, por favor ponte en contacto con el administrador."
        print(state)
        return render(request, 'login.html', {'state': state})
コード例 #53
0
ファイル: views.py プロジェクト: blockgiven/weblate
def weblate_logout(request):
    '''
    Logout handler, just wrapper around standard logout.
    '''
    messages.info(request, _('Thanks for using Weblate!'))

    return auth_views.logout(
        request,
        next_page=settings.LOGIN_URL,
    )
コード例 #54
0
ファイル: views.py プロジェクト: abal09/django-tenderize
def logout_and_detenderize(request,
                           next_page=None,
                           template_name='registration/logged_out.html'):
    """
    Logs out the user and removes Tender cookies.
    
    """
    response = logout(request, next_page, template_name)
    detenderize_response(response)
    return response
コード例 #55
0
ファイル: views.py プロジェクト: omque/fle-internal
def profile_new(request):
    if request.method == 'GET':
        logout(request)
        return render(request, 'profiles/signup.html', {'form': UserCreationForm()})
    else:
        username = request.POST['username']
        if request.POST['password1'] == request.POST['password2']:
            password = request.POST['password1']
        else:
            pass  # How to generate those alerts?
        newuser = TeamMember.objects.create_user(username, password)
        # Should I now check if user has been created?
        user = authenticate(username=username, password=password)
        if user:
            if user.is_active:
                login(request, user)
                return render(request, 'profiles/profile.html', {'person': user})
        else:
            pass  # Return an 'invalid login' error message.
コード例 #56
0
def listado_marcaciones(request):
    ultimo_contrato = Contrato.objects.latest('id')
    hoy = date.today()
    user = request.user
    if ultimo_contrato.fecha_caducidad >= hoy or user.is_superuser:
        usuarios = User.objects.filter(is_active=True,
                                       is_superuser=False,
                                       is_staff=False)
        limite_usuarios = ultimo_contrato.limite_usuarios
        porcentaje = int(usuarios.count() * 100 / limite_usuarios)
        marcaciones = Marcacione.objects.all().order_by('-fecha', '-hora')
        if 'inicio' in request.GET and 'fin' in request.GET:
            f_inicio = request.GET.get('inicio')
            f_fin = request.GET.get('fin')
            inicio = datetime.strptime(f_inicio, "%d/%m/%Y")
            fin = datetime.strptime(f_fin, "%d/%m/%Y")
            marcaciones = Marcacione.objects.filter(
                fecha__range=[inicio, fin]).order_by('-fecha', '-hora')
            filtro_msg = "Filtro de fechas entre el " + str(
                f_inicio) + " y el " + str(f_fin)
            return render(
                request, 'marcaciones.html', {
                    'marcaciones': marcaciones,
                    'filtro_msg': filtro_msg,
                    'inicio': inicio,
                    'fin': fin,
                    'usuarios': usuarios,
                    'porcentaje': porcentaje,
                    'limite_usuarios': limite_usuarios
                })
        return render(
            request, 'marcaciones.html', {
                'marcaciones': marcaciones,
                'usuarios': usuarios,
                'porcentaje': porcentaje,
                'limite_usuarios': limite_usuarios
            })
    else:
        logout(request)
        state = "Tu cuenta ha caducado, por favor ponte en contacto con el administrador."
        print(state)
        return render(request, 'login.html', {'state': state})
コード例 #57
0
ファイル: os_login.py プロジェクト: msherman64/portal
def custom_logout(request):
    # TODO(jason): once we drop support for password login, we can delete this
    # custom logout function in favor of using the OIDC_OP_LOGOUT_URL_METHOD
    # setting in the oidc module.
    logout_redirect_url = settings.LOGOUT_REDIRECT_URL
    if (request.user.is_authenticated() and request.session.get('is_federated')
            and logout_redirect_url):
        auth_logout(request)
        return HttpResponseRedirect(logout_redirect_url)

    return logout(request, next_page='/')
コード例 #58
0
ファイル: views.py プロジェクト: harnasproject/harnas
def logout_override(request, next_page=None):
    """
    Change default logout view to display message after successful logout.
    """
    response = logout(request, next_page)
    if not isinstance(response, HttpResponseRedirect):
        messages.add_message(request, messages.SUCCESS,
                             _('You have been logged out.'))
        return HttpResponseRedirect(reverse('homepage'))
    else:
        return response
コード例 #59
0
    def get(self, request, *args, **kwargs):
        context = self.get_context()
        defaults = {
            'extra_context': context,
            'current_app': self.admin_site.name,
        }
        if self.logout_template is not None:
            defaults['template_name'] = self.logout_template

        self.update_params(defaults)
        return logout(request, **defaults)
コード例 #60
0
ファイル: sites.py プロジェクト: qiujianben/ietfdb
    def logout(self, request):
        """
        Logs out the user for the given HttpRequest.

        This should *not* assume the user is already logged in.
        """
        from django.contrib.auth.views import logout
        defaults = {}
        if self.logout_template is not None:
            defaults['template_name'] = self.logout_template
        return logout(request, **defaults)