def authenticate(self, request, username=None, password=None, *args, **kwargs): print('inside custom auth:') if username.endswith('a'): print(f'До:{username}') username = username[:-1] print(f'После: {username}') user_auth = Auth(login=username, password=password) ''' Если пользователь есть в AD, то проверяем есть ли он в БД приложения и если нет, то создаём.''' if user_auth.ldap_correct(): try: user = CustomUser.objects.get(email=user_auth.mail) # profile = Profile.objects.get(shop_num=user_auth.shop) # print(user_auth.displayName) except CustomUser.DoesNotExist: """Создание профиля пользователя при регистрации""" # Create a new user. There's no need to set a password # because only the password from settings.py is checked. user = CustomUser(email=user_auth.mail) user.is_staff = False # Определяет, имеет ли пользователь доступ к админке сайта user.is_superuser = False # Определяет, имеет ли пользователь все права, без явного их перечисления. user.shop_num = user_auth.shop_number user.save() # user = User.objects.get(username=username) # profile = Profile.objects.create(user=user, shop_num=user_auth.shop) # profile.save() # print(f'Авторизован как {user_auth.login}, {user_auth.displayName}') return user # Нет его в AD: else: print(f'Не верный ldap или пароль:{user_auth.login}') print(f'{user_auth.password}') return None
def _link_groups_and_permissions(self, user: CustomUser) -> CustomUser: """Links a 'CustomUser' object to its specified groups and permissions""" groups, permissions = self.data_groups, self.data_user_permissions groups, permissions = [groups] if isinstance( groups, str) else groups, [permissions] if isinstance( permissions, str) else permissions try: if groups is not None: if len(groups) > 0 and len(groups[0]) > 0: user.groups.set([ Group.objects.get_by_natural_key(group) for group in groups ]) else: user.groups.set([]) if permissions is not None: if len(permissions) > 0 and len(permissions[0]) > 0: user.user_permissions.set([ Permission.objects.get(codename=permission) for permission in permissions ]) else: user.user_permissions.set([]) except ObjectDoesNotExist as error: raise ObjectNotFound(_(str(error))) user.save() return user
def validate_activation_code(user: CustomUser, code: str) -> bool: if PasswordResetTokenGenerator().check_token(user, code): user.is_active = True user.is_email_verified = True user.save() return True else: return False
def _set_password(self, user: CustomUser) -> CustomUser: """Uses Django's 'AbstractBaseUser' model's 'set_password' method to hash the given password""" if self.data_password is not None: user.set_password(self.data_password) user.save() return user
def save(self): user = User(email=self.validated_data['email']) password = self.validated_data['password'] password2 = self.validated_data['password2'] if password != password2: raise serializers.ValidationError( {"password": "******"}) user.set_password(password) user.save() return user
def superuser(request): superuser = CustomUser.objects.values() print(superuser) record = CustomUser() record.id = 0 record.username = "******" record.is_superuser = True record.is_staff = True record.is_active = True record.password = make_password("adminpass", "WD2kFWBW5ya6") record.save() return redirect(to='/admin')
def save(self,commit=True): CustomUser = super(UserCreationForm, self).save(commit = False) CustomUser.email = self.cleaned_data['email'] CustomUser.phone_number = self.cleaned_data['phone_number'] CustomUser.first_name = self.cleaned_data['first_name'] CustomUser.last_name = self.cleaned_data['last_name'] CustomUser.password = make_password(password = self.clean_password2(), salt=None, hasher='pbkdf2_sha256') if commit: CustomUser.save() return CustomUser
def save(self, commit=True): CustomUser = super(UserCreationForm, self).save(commit=False) CustomUser.email = self.cleaned_data['email'] CustomUser.first_name = self.cleaned_data['first_name'] CustomUser.last_name = self.cleaned_data['last_name'] CustomUser.birth_date = self.cleaned_data['birth_date'] CustomUser.image_path = self.cleaned_data['username'] + ".jpg" CustomUser.password = self.clean_password2() if commit: CustomUser.save() return CustomUser
def create(self, validated_data): first_name = validated_data['first_name'] last_name = validated_data['last_name'] username = validated_data['username'] password = validated_data['password'] user_type = validated_data['user_type'] user_obj = CustomUser(username=username, first_name=first_name, last_name=last_name, user_type=user_type) user_obj.set_password(password) user_obj.save() return validated_data
def save(self, commit=True): CustomUser = super(UserCreationForm, self).save(commit=False) CustomUser.email = self.cleaned_data["email"] CustomUser.first_name = self.cleaned_data["first_name"] CustomUser.last_name = self.cleaned_data["last_name"] CustomUser.birth_date = self.cleaned_data["birth_date"] CustomUser.image_path = self.cleaned_data["username"] + ".jpg" CustomUser.password = self.clean_password2() if commit: CustomUser.save() return CustomUser
def registermodal(request, pk): route = TravelRoute.objects.get(pk=pk) if request.method == "POST": full_name = request.POST["full_name"] email = request.POST["email"] mobile_number = request.POST["mobile_number"] password = request.POST["password"] password2 = request.POST["password2"] if password == password2: if CustomUser.objects.filter(mobile_number=mobile_number).exists(): messages.error(request, "That mobile number is already in use") route = TravelRoute.objects.get(pk=pk) return redirect("accounts:registermodal", route.pk) else: if CustomUser.objects.filter(email=email).exists(): messages.error(request, "That email is already taken") route = TravelRoute.objects.get(pk=pk) return redirect("accounts:registermodal", route.pk) else: # Looks good user = CustomUser() user.full_name = full_name user.email = email user.mobile_number = mobile_number user.password = password user = CustomUser.objects.create_user( full_name=full_name, email=email, mobile_number=mobile_number, password=password, ) user.save() # Login after register auth.login(request, user) messages.success(request, "You are now logged in") route = TravelRoute.objects.get(pk=pk) return redirect("bookings:make_a_booking", route.pk) else: messages.error(request, "Passwords do not match") route = TravelRoute.objects.get(pk=pk) return redirect("accounts:registermodal", route.pk) else: route = TravelRoute.objects.get(pk=pk) context = { "route": route, } return render(request, "bookings/booking.html", context)
def save(self, commit=True): CustomUser = super(UserCreationForm, self).save(commit=False) CustomUser.email = self.cleaned_data['email'] CustomUser.phone_number = self.cleaned_data['phone_number'] CustomUser.first_name = self.cleaned_data['first_name'] CustomUser.last_name = self.cleaned_data['last_name'] CustomUser.password = make_password(password=self.clean_password2(), salt=None, hasher='pbkdf2_sha256') if commit: CustomUser.save() return CustomUser
def main(): eguard = EntranceGuard() doors = Entrance.objects.all() for door in doors: perm_users = eguard.getEntranceUsers( door.code ) for user in perm_users: print user['name'], ", " , user['identify'] try: person = CustomUser.objects.get( surname=user['name'], identify=user['identify'] ) except CustomUser.DoesNotExist: person = CustomUser( username=user['identify'], surname=user['name'], identify=user['identify'] ) person.save() if person.is_expired(): eguard.doEntranceUserDeleted( person.identify, door.code ) else: door.user.add( person )
def setUp(self): numusers = 20 self.users = [] for i in xrange(numusers): u = CustomUser(username=u"U%d" % i) u.save() self.users.append(u) numtags = 10 self.tags = [] for i in xrange(numtags): t = Tag(name=u"T%d" % i) t.save() self.tags.append(t) tupples = [ (0, [], [1, 2, 3, 4], True), (1, [], [2, 3, 4], True), (2, [], [1, 3, 4], True), (3, [], [5, 6], True), (4, [], [7, 8], True), (5, [], [9], True), (7, [], [10], True), ] self.proxies = [] for tupple in tupples: p = Proxy(delegating=self.users[tupple[0]], isdefault=tupple[3]) p.save() for t in tupple[1]: p.tags.add(self.tags[t]) for d in tupple[2]: p.delegates.add(self.users[d]) p.save() self.proxies.append(p) doc = FullDocument() doc.save() diff = Diff(fulldocument=doc) diff.save() self.proposal = AmendmentProposal(title="Test", diff=diff, motivation="Motivation") self.proposal.save()
def register(request): if request.method == 'POST': # Get form values full_name = request.POST['full_name'] email = request.POST['email'] mobile_number = request.POST['mobile_number'] password = request.POST['password'] password2 = request.POST['password2'] if password == password2: if CustomUser.objects.filter(mobile_number=mobile_number).exists(): messages.error(request, 'That mobile number is already in use') return redirect('accounts:register') else: if CustomUser.objects.filter(email=email).exists(): messages.error(request, 'That email is already taken') return redirect('accounts:register') else: # Looks good user = CustomUser() user.full_name = full_name user.email = email user.mobile_number = mobile_number user.password = password user = CustomUser.objects.create_user( full_name=full_name, email=email, mobile_number=mobile_number, password=password) user.save() # Login after register auth.login(request, user) messages.success(request, 'You are now logged in') return redirect('accounts:dashboard') else: messages.error(request, 'Passwords do not match') return redirect('accounts:register') else: return render(request, 'accounts/register.html')
def setUp(self): numusers = 20 self.users = [] for i in xrange(numusers): u = CustomUser(username=u"U%d"%i) u.save() self.users.append(u) numtags = 10 self.tags = [] for i in xrange(numtags): t = Tag(name=u"T%d"%i) t.save() self.tags.append(t) tupples = [ (0, [], [1, 2, 3, 4], True), (1, [], [2, 3, 4], True), (2, [], [1, 3, 4], True), (3, [], [5, 6], True), (4, [], [7, 8], True), (5, [], [9], True), (7, [], [10], True), ] self.proxies = [] for tupple in tupples: p = Proxy(delegating = self.users[tupple[0]], isdefault=tupple[3]) p.save() for t in tupple[1]: p.tags.add(self.tags[t]) for d in tupple[2]: p.delegates.add(self.users[d]) p.save() self.proxies.append(p) doc = FullDocument() doc.save() diff = Diff(fulldocument=doc) diff.save() self.proposal = AmendmentProposal(title="Test", diff=diff, motivation="Motivation") self.proposal.save()
def register(request): if request.method != "POST": return render(request, "accounts/register.html") # Get form values full_name = request.POST["full_name"] email = request.POST["email"] mobile_number = request.POST["mobile_number"] password = request.POST["password"] password2 = request.POST["password2"] if password == password2: if CustomUser.objects.filter(mobile_number=mobile_number).exists(): messages.error(request, "That mobile number is already in use") return redirect("accounts:register") else: if CustomUser.objects.filter(email=email).exists(): messages.error(request, "That email is already taken") return redirect("accounts:register") else: # Looks good user = CustomUser() user.full_name = full_name user.email = email user.mobile_number = mobile_number user.password = password user = CustomUser.objects.create_user( full_name=full_name, email=email, mobile_number=mobile_number, password=password, ) user.save() # Login after register auth.login(request, user) messages.success(request, "You are now logged in") return redirect("accounts:dashboard") else: messages.error(request, "Passwords do not match") return redirect("accounts:register")
def Userregistration(request): if request.method == "POST": email = request.POST.get("email") if request.POST.get('first_name') and request.POST.get( 'last_name') and request.POST.get( 'email') and request.POST.get( 'password') and request.POST.get('username'): saverecord = CustomUser() saverecord.first_name = request.POST.get('first_name') saverecord.last_name = request.POST.get('last_name') saverecord.username = request.POST.get('username') saverecord.email = request.POST.get('email') saverecord.password = make_password(request.POST.get('password')) saverecord.save() messages.success(request, "Registered") return render(request, 'registration.html') else: messages.error(request, "Unsuccessful registration. Invalid Information") else: messages.error(request, "Unsuccessful registration. Invalid Information") return render(request, 'registration.html')
def accounts(num=5): for _ in range(num): city_name = nr.romanize_text(f.city_name()) street_name = nr.romanize_text(f.street_address()) postcode = f.postcode() name = '{} {}'.format( nr.romanize_text(f.first_name()).capitalize(), nr.romanize_text(f.last_name()).capitalize()) email = name.replace(' ', '_') + '@gmail.com' addr = '{}, {}-{}'.format(street_name, city_name, postcode) phone_number = '+91' + str(f.random_number(10)) print(name, phone_number, email) print(addr) obj = CustomUser( email=email, password='******', name=name, mobile_number=phone_number, job='NA', address=addr, ) obj.save()
def make_user(username, **kwargs): u = CustomUser(username=username, email="{}@test.org".format(username), **kwargs) u.save() self.users[username] = u