Пример #1
0
    # zorg dat de session-cookie snel verloopt
    request.session.set_expiry(0)

    request.session['moet_oude_ww_weten'] = False

    # schrijf in het logboek
    schrijf_in_logboek(
        account=None,
        gebruikte_functie="Wachtwoord",
        activiteit="Automatische inlog op account %s vanaf IP %s" %
        (repr(account.get_account_full_name()), from_ip))

    return reverse('Account:nieuw-wachtwoord')


set_tijdelijke_url_receiver(RECEIVER_WACHTWOORD_VERGETEN,
                            receive_wachtwoord_vergeten)


class NieuwWachtwoordView(UserPassesTestMixin, TemplateView):
    """
        Deze view geeft de pagina waarmee de gebruiker zijn wachtwoord kan wijzigen
    """

    # class variables shared by all instances
    template_name = TEMPLATE_NIEUW_WACHTWOORD
    raise_exception = True  # genereer PermissionDenied als test_func False terug geeft

    def test_func(self):
        """ called by the UserPassesTestMixin to verify the user has permissions to use this view """
        # gebruiker moet ingelogd zijn
        return self.request.user.is_authenticated
Пример #2
0
    # gebruiker mag NIET aangemeld blijven
    # zorg dat de session-cookie snel verloopt
    request.session.set_expiry(0)

    # schrijf in het logboek
    schrijf_in_logboek(
        account=None,
        gebruikte_functie="Inloggen",
        activiteit="Automatische inlog als gebruiker %s vanaf IP %s" %
        (repr(account.username), from_ip))

    return reverse('Plein:plein')


set_tijdelijke_url_receiver(RECEIVER_ACCOUNT_WISSEL, receiver_account_wissel)


class LoginAsZoekView(UserPassesTestMixin, ListView):
    """ Deze view laat Wissel van Rol toe naar een gekozen gebruiker
        zodat de website 'door de ogen van' deze gebruiker bekeken kan worden
    """

    template_name = TEMPLATE_LOGIN_AS_ZOEK

    def test_func(self):
        """ called by the UserPassesTestMixin to verify the user has permissions to use this view """
        # deze functie wordt gebruikt voordat de GET of de POST afgehandeld wordt (getest bewezen)
        account = self.request.user
        if account.is_authenticated:
            return account.is_staff
Пример #3
0
        msg = "Bevestigd vanaf IP %s voor functie %s" % (from_ip,
                                                         functie.beschrijving)
        schrijf_in_logboek(account=None,
                           gebruikte_functie="Bevestig e-mail",
                           activiteit=msg)

        # zet het e-mailadres door
        functie.bevestigde_email = functie.nieuwe_email
        functie.nieuwe_email = ''
        functie.save()

    context = {'functie': functie}
    return render(request, TEMPLATE_EMAIL_BEVESTIGD, context)


set_tijdelijke_url_receiver(RECEIVER_BEVESTIG_FUNCTIE_EMAIL,
                            receive_bevestiging_functie_email)


def functie_vraag_email_bevestiging(functie):
    """ Stuur een mail naar het adres om te vragen om een bevestiging.
        Gebruik een tijdelijke URL die, na het volgen, weer in deze module uit komt.
    """

    # maak de url aan om het e-mailadres te bevestigen
    url = maak_tijdelijke_url_functie_email(functie)

    text_body = ("Hallo!\n\n" +
                 "Een beheerder heeft dit e-mailadres gekoppeld op " +
                 settings.NAAM_SITE + ".\n" +
                 "Klik op onderstaande link om dit te bevestigen.\n\n" + url +
                 "\n\n" +
Пример #4
0
    from_ip = get_safe_from_ip(request)
    account = obj.account

    msg = "Bevestigd vanaf IP %s voor account %s" % (
        from_ip, account.get_account_full_name())
    schrijf_in_logboek(account=account,
                       gebruikte_functie="Bevestig e-mail",
                       activiteit=msg)

    context = dict()
    if not request.user.is_authenticated:
        context['show_login'] = True
    return render(request, TEMPLATE_BEVESTIGD, context)


set_tijdelijke_url_receiver(RECEIVER_BEVESTIG_ACCOUNT_EMAIL,
                            receive_bevestiging_accountemail)


class LoginView(TemplateView):
    """
        Deze view het startpunt om in te loggen
        Het inloggen zelf gebeurt met een POST omdat de invoervelden dan in
        de http body meegestuurd worden
    """

    # class variables shared by all instances
    form_class = LoginForm

    def _zoek_account(self, form):
        # zoek een bestaand account