def signup(request): username = request.GET.get('username') password = request.GET.get('password') password2 = request.GET.get('password2') success = False error = '' if email_re.search(username): try: User.objects.get(username = username) except User.DoesNotExist: pass else: error = 'Username Exists' if not error: if not password == password2: error = 'Passwords do not match' elif len(password) < 6: error = 'Minimum length of password is 6' if not error: user = User.objects.create_user(username = username, email = username, password = password) M.UserProfile.objects.create(user=user) user.first_name = username.split('@')[0] user.save() user = authenticate(username=username, password=password) login(request, user) success = True else: error = 'Invalid email address' return JsonResponse(json.dumps({'success': success, 'url': '/home', 'error': error}))
def modify_list_membership(request, group_id, group=None): action = request.POST.get("ActionType", None) redirect = request.POST.get("Redirect", None) emails = request.POST.get("Emails", None) if group == None: group = get_object_or_404(BaseGroup, id=group_id) if group.slug != "ewb" and group.visibility != 'E': return render_to_response('denied.html', context_instance=RequestContext(request)) if action and action == "add" and emails: email_list = emails.split() # splits by whitespace characters for email in email_list: if email_re.search(email): if group.slug == "ewb": User.extras.create_bulk_user(email) else: group.add_email(email) if redirect: return HttpResponseRedirect(redirect) else: return HttpResponseRedirect(reverse("home"))
def auth_ldap_server(self, email=None, password=None): domain = '' username = '' if email_re.search(email): dn = settings.AUTH_LDAP_USER_BASE(email) try: ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_NEVER) ldap.set_option(ldap.OPT_X_TLS_CACERTFILE,settings.AUTH_LDAP_CERT) l = ldap.initialize(settings.AUTH_LDAP_SERVER) l.start_tls_s() l.simple_bind_s(dn, password) # Builds real name to fill in register, and force auth check. me = l.search_s(l.whoami_s()[3:],ldap.SCOPE_SUBTREE) ln = me[0][1]['sn'][0] fn = me[0][1]['givenName'][0].split()[0] return "%s %s" % (fn, ln) except ldap.INVALID_CREDENTIALS: # Name or password were bad. Fail. return False except ldap.LDAPError, e: return False
def clean_emails(self): emails = [e.strip() for e in self.cleaned_data.get('emails').split(',') if e.strip()] if not emails: raise forms.ValidationError(_(u'Please enter an email')) for email in emails: if not email_re.search(email): raise forms.ValidationError(_(u'%s: invalid email' % email)) return emails
def authenticate(self, username=None, password=None): if email_re.search(username): try: user = User.objects.get(email=username) if user.check_password(password): return user except User.DoesNotExist: pass
def authenticate(self, username=None, password=None): if email_re.search(username): user = User.get_user_by_email(username) if not user: return None return user if user.check_password(password) else None return None
def authenticate(self, username=None, password=None): if email_re.search(username): try: user = User.objects.filter(email=username)[0] return user if user.check_password(password) else None except: return None return None
def authenticate(self, username=None, password=None): if email_re.search(username): try: user = User.objs.get(email__iexact=username) if user.check_password(password): return user except User.DoesNotExist: return None return None
def clean_emails(self): """Validate all e-mail addresses.""" emails = self.parse_emails() if not emails: raise forms.ValidationError(u"You haveto enter at-least one " u"e-mail address.") for email in emails: if not email_re.search(email): raise forms.ValidationError(u"One or more e-mail addresses " u"were not valid.") return emails
def authenticate(self, username=None, password=None): if email_re.search(username): try: user = User.objects.get(email=username) except User.DoesNotExist: return None else: try: user = User.objects.get(username=username) except User.DoesNotExist: return None if user.check_password(password): return user
def authenticate(self, username=None, password=None): if email_re.search(username): try: user = User.objects.get(email=username) if user.is_active == False: if user.attrs.has_key("reason"): if user.attrs["reason"]: raise ValidationError("Banned: '%s'" % user.attrs["reason"]) raise ValidationError(_("Your account has been locked!")) if user.check_password(password): return user except User.DoesNotExist: return None return None
def authenticate(self, username=None, password=None): #If username is an email address, then try to pull it up if email_re.search(username): try: user = User.objects.get(email=username) except User.DoesNotExist: return None else: #We have a non-email address username we should try username try: user = User.objects.get(username=username) except User.DoesNotExist: return None if user.check_password(password): return user
def authenticate(self, username=None, password=None): if email_re.search(username): try: user = User.objects.get(email=username) if user.is_active == False: if user.attrs.has_key('reason'): if user.attrs['reason']: raise ValidationError("Banned: '%s'" % user.attrs['reason']) raise ValidationError(_('Your account has been locked!')) if user.check_password(password): return user except User.DoesNotExist: return None return None
def checkemail(request): email = request.POST.get('email', False) if email: if email_re.search(email): u = User.objects.filter(email=email).count() if u != 0: res = "Already In Use" else: res = "Ok" else: res = "Invalid Email Address" else: res = "Email address cannot be blank" return HttpResponse('%s' % res)
def authenticate(self, username=None, password=None): print 'Inside EmailBackend' print 'username = %s ' % username print 'password = %s ' % password if email_re.search(username): try: user = User.objects.get(email=username) if user.check_password(password): print 'EmailBackend authentication done' return user print 'authentication not done' return None except User.DoesNotExist: print 'new user' return None
def view_checkemail(request): remail = _request_param_post(request, 'remail') if not remail: from users.messages import ICON_CROSS, INVALID_EMAIL_ADDRESS_ERROR_MESSAGE return HttpResponse('%s%s' % (ICON_CROSS, INVALID_EMAIL_ADDRESS_ERROR_MESSAGE)) from django.forms.fields import email_re if not email_re.search(remail.strip().lower()): from users.messages import ICON_CROSS, INVALID_EMAIL_ADDRESS_ERROR_MESSAGE return HttpResponse('%s%s' % (ICON_CROSS, INVALID_EMAIL_ADDRESS_ERROR_MESSAGE)) from users.models import UserProfile if UserProfile.objects.filter(email=remail): from users.messages import ICON_CROSS, EMAIL_ADDRESS_ALREADY_TAKEN_ERROR_MESSAGE return HttpResponse('%s%s' % (ICON_CROSS, EMAIL_ADDRESS_ALREADY_TAKEN_ERROR_MESSAGE)) else: from users.messages import ICON_SUCESS, VALID_EMAIL_ADDRESS_MESSAGE return HttpResponse('%s%s' % (ICON_SUCESS, VALID_EMAIL_ADDRESS_MESSAGE))
def authenticate(self,username=None,password=None): try: # Let's see if we have such user if email_re.search(username): local_user = User.objects.get(email=username) else: local_user = User.objects.get(username=username) if local_user.has_usable_password(): if local_user.check_password(password): return local_user else: return else: return self._authenticate_ldap(username, password, local_user) except User.DoesNotExist: return self._authenticate_ldap(username, password) return # if we did not return anything yet, we're probably not authenticated
def clean_ref_emails(self): unsuccessful_emails_list, successful_emails_list = [],[] email = self.cleaned_data.get('email') ref_emails = self.cleaned_data.get('ref_emails') ref_mobiles = self.cleaned_data.get('ref_mobiles') if not ref_emails: if not ref_mobiles: raise forms.ValidationError('Either your friends email id(s) or mobile no(s) are required to provide.') return ref_emails.strip() all_emails_list = ref_emails.strip().split(',') from django.forms.fields import email_re for email_id in all_emails_list: if email_re.search(email_id.strip().lower()): if email_id == email: if all_emails_list.__len__() == 1: raise forms.ValidationError('You can\'t refer yourself, right!') else: successful_emails_list.append(email_id) else: unsuccessful_emails_list.append(email_id) return ",".join(["%s" % (email) for email in successful_emails_list])
def authenticate(self, username=None, password=None): # handle "guest" login if username == 'guest': # clean the old guest account guests = Group.objects.get(name='guests') deadline = datetime.now() - timedelta(weeks=4) guests.user_set.filter(last_login__lt=deadline).delete() name = 'guest_%s' % datetime.now() name = name[:30] user = User.objects.create_user(username=name, email='') guests.user_set.add(user) user.save() return user # If username is an email address, then try to pull it up if email_re.search(username): try: user = User.objects.get(email=username) except User.DoesNotExist: return None else: # We have a non-email address username we should try username # We only allow staffs to do this try: user = User.objects.get(username=username) except User.DoesNotExist: return None if not user.is_staff: return None if user.check_password(password): return user
def new_user(nick, email, user, results): "Create new user after verifying the user attributes" global dup_user_by_nick global dup_user_by_guser global dup_user_by_email if len(nick) < Limits.MINNICKLEN or len(nick) >= Limits.MAXNICKLEN: results['retcode'] = ReturnCode.EINVALNICK return False if len(email) == 0 or len(email) >= Limits.MAXEMAILLEN: results['retcode'] = ReturnCode.EINVALEMAIL return False alnum_re = re.compile(r'^\w+$') if not alnum_re.search(nick): results['retcode'] = ReturnCode.EINVALNICK return False if not email_re.search(email): results['retcode'] = ReturnCode.EINVALEMAIL return False dup_user_by_guser.bind(user) if dup_user_by_guser.count(1) > 0: results['retcode'] = ReturnCode.EDUPUSR return False dup_user_by_email.bind(email) if dup_user_by_email.count(1) > 0: results['retcode'] = ReturnCode.EDUPUSR return False dup_user_by_nick.bind(nick) if dup_user_by_nick.count(1) > 0: results['retcode'] = ReturnCode.EDUPUSR return False q = db.run_in_transaction(create_new_user, nick, email, user) if not q: results['retcode'] = ReturnCode.EDUPUSR return False IncCounter(Counter.REGUSERS) return True
def silent_signup(request, email): if email_re.search(email): User.extras.create_bulk_user(email) return HttpResponse("")