Esempio n. 1
0
def login(request):
    if request.method == 'POST':
        form = forms.SignInForm(request.POST)
        if form.is_valid():

            auth_manager = AuthManager(form.user)
            if not auth_manager.has_privilege('workspace.can_signin'):
                messages.add_message(request, messages.ERROR, ugettext('INVALID-USER-OR-PASS'))
                return redirect('accounts.signin')

            request.session['user_id'] = form.user.id
            request.session['django_language'] = form.user.language
            if not form.cleaned_data['remember_me']:
                request.session.set_expiry(0)

            if form.cleaned_data.get('next'):
                next = form.cleaned_data.get('next')
                return redirect(next)
            return redirect('accounts.landing')
        else:
            admin_url = request.POST.get('admin_url')
            messages.add_message(request, messages.ERROR, ugettext('INVALID-USER-OR-PASS'))
            if admin_url:
                return redirect('accounts.account_signin', admin_url = admin_url)
            else:
                return redirect('accounts.signin')
    elif request.method == 'GET':
        admin_url = request.GET.get('admin_url')
        if admin_url:
            return redirect('accounts.account_signin', admin_url=admin_url)
        else:
            return redirect('accounts.signin')
Esempio n. 2
0
def login(request):
    if request.method == "POST":
        form = forms.SignInForm(request.POST)
        if form.is_valid():

            auth_manager = AuthManager(form.user)
            if not auth_manager.has_privilege("workspace.can_signin"):
                messages.add_message(request, messages.ERROR, ugettext("INVALID-USER-OR-PASS"))
                return redirect("accounts.signin")

            request.session["user_id"] = form.user.id
            request.session["django_language"] = form.user.language
            if not form.cleaned_data["remember_me"]:
                request.session.set_expiry(0)

            if form.cleaned_data.get("next"):
                next = form.cleaned_data.get("next")
                return redirect(next)
            return redirect("accounts.landing")
        else:
            admin_url = request.POST.get("admin_url")
            messages.add_message(request, messages.ERROR, ugettext("INVALID-USER-OR-PASS"))
            if admin_url:
                return redirect("accounts.account_signin", admin_url=admin_url)
            else:
                return redirect("accounts.signin")
    elif request.method == "GET":
        admin_url = request.GET.get("admin_url")
        if admin_url:
            return redirect("accounts.account_signin", admin_url=admin_url)
        else:
            return redirect("accounts.signin")
Esempio n. 3
0
def login(request):
    if request.method == 'POST':
        form = forms.SignInForm(request.POST)
        if form.is_valid():

            auth_manager = AuthManager(form.user)
            if not auth_manager.has_privilege('workspace.can_signin'):
                messages.add_message(request, messages.ERROR,
                                     ugettext('INVALID-USER-OR-PASS'))
                return redirect('accounts.signin')

            request.session['user_id'] = form.user.id
            request.session['django_language'] = form.user.language
            if not form.cleaned_data['remember_me']:
                request.session.set_expiry(0)

            if form.cleaned_data.get('next'):
                next = form.cleaned_data.get('next')
                return redirect(next)
            return redirect('accounts.landing')
        else:
            admin_url = request.POST.get('admin_url')
            messages.add_message(request, messages.ERROR,
                                 ugettext('INVALID-USER-OR-PASS'))
            if admin_url:
                return redirect('accounts.account_signin', admin_url=admin_url)
            else:
                return redirect('accounts.signin')
    elif request.method == 'GET':
        admin_url = request.GET.get('admin_url')
        if admin_url:
            return redirect('accounts.account_signin', admin_url=admin_url)
        else:
            return redirect('accounts.signin')
Esempio n. 4
0
    def process_request(self, request):
        """
        Checks user, role and account
        """

        try:
            user_id = request.session.get("user_id")
            user = User.objects.get(pk=user_id)

        except User.DoesNotExist:
            # for anonymous users
            request.session['django_language'] = settings.LANGUAGES[0][0]

            if request.META.has_key('HTTP_ACCEPT_LANGUAGE'):
                user_language = request.META['HTTP_ACCEPT_LANGUAGE'].split(
                    ',')[0].split('-')[0]
                if user_language in [
                        language[0] for language in settings.LANGUAGES
                ]:
                    request.session['django_language'] = user_language

            request.auth_manager = AuthManager(
                language=request.session['django_language'])
            request.user = None
            return None

        user.last_visit = datetime.datetime.now()
        user.save()

        request.user = user
        request.auth_manager = AuthManager(user)
        request.session['django_language'] = user.language

        if not request.auth_manager.has_privilege('workspace.can_signin'):
            request.session.clear()
            return redirect('/')

        request.account = Account.objects.get(pk=user.account_id)

        return None
Esempio n. 5
0
    def process_request(self, request):
        """
        Checks user, role and account
        """

        # for anonymous users
        request.session['django_language'] = settings.LANGUAGES[0][0]

        if request.META.has_key('HTTP_ACCEPT_LANGUAGE'):
            user_language = request.META['HTTP_ACCEPT_LANGUAGE'].split(',')[0].split('-')[0]
            if user_language in [ language[0] for language in settings.LANGUAGES ]:
                request.session['django_language'] = user_language

        request.auth_manager = AuthManager(language = request.session['django_language'])

        # el user se arma en middlerware.ioc ya que necesitamos el account para completar el user
        request.user = None
        return None
Esempio n. 6
0
    def process_request(self, request):
        """
        Checks user, role and account
        """

        # for anonymous users
        request.session['django_language'] = settings.LANGUAGES[0][0]

        if request.META.has_key('HTTP_ACCEPT_LANGUAGE'):
            user_language = request.META['HTTP_ACCEPT_LANGUAGE'].split(
                ',')[0].split('-')[0]
            if user_language in [
                    language[0] for language in settings.LANGUAGES
            ]:
                request.session['django_language'] = user_language

        request.auth_manager = AuthManager(
            language=request.session['django_language'])
        request.user = None
        return None
Esempio n. 7
0
 def fake_request(self, space, type_response):
     request = RequestFactory().get('/' + space + '/',
                                    HTTP_ACCEPT=type_response)
     request.user = AnonymousUser()
     request.auth_manager = AuthManager(language="en")
     return request