def dispatch(self, request, *args, **kwargs): self.request = request self.args = args self.kwargs = kwargs if is_authenticated(request.user): return super(LoginRequiredMixin, self).dispatch(request, *args, **kwargs) return self.redirect_to_login()
def get_redirect_url(self): if is_authenticated(self.user): if not settings.ACCOUNT_EMAIL_CONFIRMATION_AUTHENTICATED_REDIRECT_URL: return settings.ACCOUNT_LOGIN_REDIRECT_URL return settings.ACCOUNT_EMAIL_CONFIRMATION_AUTHENTICATED_REDIRECT_URL else: return settings.ACCOUNT_EMAIL_CONFIRMATION_ANONYMOUS_REDIRECT_URL
def process_request(self, request): if is_authenticated(request.user) and not request.user.is_staff: next_url = resolve(request.path).url_name # Authenticated users must be allowed to access # "change password" page and "log out" page. # even if password is expired. if next_url not in [settings.ACCOUNT_PASSWORD_CHANGE_REDIRECT_URL, settings.ACCOUNT_LOGOUT_URL, ]: if check_password_expired(request.user): signals.password_expired.send(sender=self, user=request.user) messages.add_message( request, messages.WARNING, _("Your password has expired. Please save a new password.") ) redirect_field_name = REDIRECT_FIELD_NAME change_password_url = reverse(settings.ACCOUNT_PASSWORD_CHANGE_REDIRECT_URL) url_bits = list(urlparse(change_password_url)) querystring = QueryDict(url_bits[4], mutable=True) querystring[redirect_field_name] = next_url url_bits[4] = querystring.urlencode(safe="/") return HttpResponseRedirect(urlunparse(url_bits))
def process_request(self, request): if is_authenticated(request.user) and not request.user.is_staff: next_url = resolve(request.path).url_name # Authenticated users must be allowed to access # "change password" page and "log out" page. # even if password is expired. if next_url not in [ settings.ACCOUNT_PASSWORD_CHANGE_REDIRECT_URL, settings.ACCOUNT_LOGOUT_URL, ]: if check_password_expired(request.user): signals.password_expired.send(sender=self, user=request.user) messages.add_message( request, messages.WARNING, _("Your password has expired. Please save a new password." )) redirect_field_name = REDIRECT_FIELD_NAME change_password_url = reverse( settings.ACCOUNT_PASSWORD_CHANGE_REDIRECT_URL) url_bits = list(urlparse(change_password_url)) querystring = QueryDict(url_bits[4], mutable=True) querystring[redirect_field_name] = next_url url_bits[4] = querystring.urlencode(safe="/") return HttpResponseRedirect(urlunparse(url_bits))
def _wrapped_view(request, *args, **kwargs): if is_authenticated(request.user): return view_func(request, *args, **kwargs) return handle_redirect_to_login( request, redirect_field_name=redirect_field_name, login_url=login_url )
def for_request(cls, request): user = getattr(request, "user", None) if user and is_authenticated(user): try: return Account._default_manager.get(user=user) except Account.DoesNotExist: pass return AnonymousAccount(request)
def get_language_for_user(self, request): if is_authenticated(request.user): try: account = Account.objects.get(user=request.user) return account.language except Account.DoesNotExist: pass return translation.get_language_from_request(request)
def get(self, *args, **kwargs): if is_authenticated(self.request.user): return redirect( default_redirect(self.request, settings.ACCOUNT_LOGIN_REDIRECT_URL)) if not self.is_open(): return self.closed() return super(SignupView, self).get(*args, **kwargs)
def vacancies_for_offer(member, current_user): if not is_authenticated(current_user): return None companies = current_user.companies.filter( id__in=[i.id for i in current_user.companies if current_user in i.collaborators]) \ .exclude(id__in=[i.id for i in member.companies]) qs = Vacancy.objects.filter(company__in=companies) return qs.exclude(id__in=member.vacancies.values_list('id'))
def post(self, *args, **kwargs): if is_authenticated(self.request.user): raise Http404() try: validate_password(password=args[0].POST['password']) except ValidationError as e: form = SignupForm() form.username = args[0].POST['username'] form.email = args[0].POST['email'] messages.warning(self.request, 'A senha informada não atende aos requisitos mínimos. Tente uma outra senha.') # return render(self.request, 'account/signup.html', {'form': form}) return redirect(reverse('account_signup')) return super(account.views.SignupView, self).post(*args, **kwargs)
def set_filter_for_relevant_vacancies(self): if is_authenticated(self.request.user): specs_list = list( set([ i.id for i in self.request.user.profile.specialisations.all() ])) keywords_list = list( set([i.id for i in self.request.user.profile.keywords.all()])) vacs = self.vacancies.filter( Q(specialisations__in=specs_list) | Q(keywords__in=keywords_list)).distinct() self.vacancies_filter = vacs else: self.vacancies_filter = self.vacancies self.context.update({'all': self.vacancies})
def set_filter_for_relevant_profiles(self): if is_authenticated(self.request.user): vacs = Vacancy.objects.filter( company__in=self.request.user.companies, enabled=True) specs_list = list( set([ item['specialisations__id'] for item in vacs.values('specialisations__id') if item['specialisations__id'] is not None ])) keywords_list = list( set([ item['keywords__id'] for item in vacs.values('keywords__id') if item['keywords__id'] is not None ])) profiles = self.profiles.filter( Q(specialisations__in=specs_list) | Q(keywords__in=keywords_list)).exclude( member__contract_address=None).distinct() self.profiles_filter = profiles else: self.profiles_filter = self.profiles self.context.update({'all': self.profiles})
def get(self, *args, **kwargs): if not is_authenticated(self.request.user): return redirect("account_password_reset") return super(ChangePasswordView, self).get(*args, **kwargs)
def post(self, *args, **kwargs): if not is_authenticated(self.request.user): return HttpResponseForbidden() return super(ChangePasswordView, self).post(*args, **kwargs)
def post(self, *args, **kwargs): if is_authenticated(self.request.user): auth.logout(self.request) return redirect(self.get_redirect_url())
def get(self, *args, **kwargs): if is_authenticated(self.request.user): auth.logout(self.request) return render(self.request, self.template_name, {}) if not is_authenticated(self.request.user): return HttpResponseRedirect(reverse('login'))
def get(self, *args, **kwargs): if is_authenticated(self.request.user): return redirect(self.get_success_url()) return super(LoginView, self).get(*args, **kwargs)
def get(self, *args, **kwargs): if not is_authenticated(self.request.user): return redirect(self.get_redirect_url()) ctx = self.get_context_data() return self.render_to_response(ctx)
def post(self, *args, **kwargs): if is_authenticated(self.request.user): raise Http404() if not self.is_open(): return self.closed() return super(SignupView, self).post(*args, **kwargs)
def get(self, *args, **kwargs): if is_authenticated(self.request.user): return redirect(default_redirect(self.request, settings.ACCOUNT_LOGIN_REDIRECT_URL)) if not self.is_open(): return self.closed() return super(SignupView, self).get(*args, **kwargs)
def dispatch(self, request, *args, **kwargs): if not is_authenticated(request.user): return HttpResponse(status=403) return super().dispatch(request, *args, **kwargs)