def run(self): """Run the command.""" # Get the information. email = prompt('Email') name = prompt('Name') password = prompt_pass('Password') password_confirm = prompt_pass('Confirm Password') data = MultiDict({ 'email': email, 'password': password, 'password_confirm': password_confirm, }) # Validate the form. form = RegisterForm(data, csrf_enabled=False) if form.validate(): user = register_user(name=name, email=email, password=password) print('\nUser created successfully.') print('User(id={} email={})'.format(user.id, user.email)) return # If something went wrong, report it and exit out. print('\nError creating user:'******'\n'.join(errors)) sys.exit(1)
def run(self): email = prompt('Email') password = prompt_pass('Password') password_confirm = prompt_pass('Confirm Password') data = MultiDict(dict(email=email, password=password, password_confirm=password_confirm)) form = RegisterForm(data, csrf_enabled=False) if form.validate(): user = register_user(email=email, password=password) print '\nUser created successfully' print 'User(id=%s email=%s' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors)
def can_create_user(email, password, password_confirm, deployment): data = MultiDict(dict(email=email, password=password, password_confirm=password_confirm)) form = RegisterForm(data, csrf_enabled=False) if form.validate(): return True, {} email_errors = form.errors.get('email', []) if (len(email_errors) == 1) and \ (email_errors[0] == get_message('EMAIL_ALREADY_ASSOCIATED', email=email)[0]): accounts = users.find(email=email, deployment=deployment) if not accounts: return True, {} return False, form.errors
def run(self): email = prompt('Email') password = prompt_pass('Password') password_confirm = prompt_pass('Confirm Password') data = MultiDict( dict(email=email, password=password, password_confirm=password_confirm)) form = RegisterForm(data, csrf_enabled=False) if form.validate(): user = register_user(email=email, password=password) print '\nUser created successfully' print 'User(id=%s email=%s' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors)
def run(self): if models.Deployment.objects.count() > 0: print 'You already have deployments set up.' return name = prompt('Name of new deployment') hostname = prompt('Hostname for deployment') deployment = models.Deployment.objects.create(name=name, hostnames=[hostname]) # create the roles role_names = ['manager', 'clerk', 'analyst', 'admin'] for role_name in role_names: role = models.Role.objects.create(name=role_name) # create the admin user email = prompt('Email for admin user') password = prompt_pass('Password for admin user') password_confirm = prompt_pass('Confirm password') data = MultiDict({ 'email': email, 'password': password, 'password_confirm': password_confirm }) form = RegisterForm(data, csrf_enabled=False) if form.validate(): try: user = register_user(email=email, password=password) except socket.error as e: print 'Error sending registration email: {}'.format(e) user = services.users.get(email=email, deployment=None) user.update(set__deployment=deployment, add_to_set__roles=role) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) else: print '\nError creating user:'******'\n'.join(errors) # create at least one event from apollo.manage.deployments import CreateEventCommand CreateEventCommand._create_event(deployment)
def run(self): data = { 'first_name': prompt('First name'), 'last_name': prompt('Last name'), 'email': prompt('Email'), 'password': prompt_pass('Password'), 'password_confirm': prompt_pass('Confirm Password'), } form = RegisterForm(MultiDict(data), csrf_enabled=False) if form.validate(): data['password'] = encrypt_password(data['password']) user = datastore.create_user(**data) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors)
def create(): '''Create a new user''' data = { 'first_name': prompt('First name'), 'last_name': prompt('Last name'), 'email': prompt('Email'), 'password': prompt_pass('Password'), 'password_confirm': prompt_pass('Confirm Password'), } form = RegisterForm(MultiDict(data), csrf_enabled=False) if form.validate(): data['password'] = encrypt_password(data['password']) user = datastore.create_user(**data) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors)
def create(): """Create a new user""" data = { "first_name": prompt("First name"), "last_name": prompt("Last name"), "email": prompt("Email"), "password": prompt_pass("Password"), "password_confirm": prompt_pass("Confirm Password"), } form = RegisterForm(MultiDict(data), csrf_enabled=False) if form.validate(): data["password"] = encrypt_password(data["password"]) del data["password_confirm"] user = datastore.create_user(**data) print "\nUser created successfully" print "User(id=%s email=%s)" % (user.id, user.email) return print "\nError creating user:"******"\n".join(errors)
def validate(self): rv = RegisterForm.validate(self) if not rv: return False if self.email.data and self.email.validate(self.email.data): user = User.find_user_by_email(self.email.data).first() if user is not None: self.email.errors.append('Email address already used') return False name = self.name.data if name.lower() in ILLEGAL_NAMES: self.name.errors.append('Name not allowed. Please try another.') self.name.data = '' return False if not re.match("^[a-zA-Z0-9_-]+$", name): self.name.errors.append('Only letters, digits, dashes, underscores allowed') return False if not re.search("[a-zA-Z0-9]", name): self.name.errors.append('Must have at least one letter or number') return False if not NAME_LEN_MIN < len(name) + 1 < NAME_LEN_MAX: self.name.errors.append('Must be between %s and %s characters'% (NAME_LEN_MIN,NAME_LEN_MAX)) return False user = User.find_user_by_name(name).first() if user is not None: name = User.make_unique_name(name) self.name.errors.append('Name already taken, perhaps %s suits you?' % name) self.name.data = name return False return True
def run(self): if models.Deployment.objects.count() > 0: print 'You already have deployments set up.' return name = prompt('Name of new deployment') hostname = prompt('Hostname for deployment') deployment = models.Deployment.objects.create( name=name, hostnames=[hostname] ) # create the roles role_names = ['manager', 'clerk', 'analyst', 'admin'] for role_name in role_names: role = models.Role.objects.create(name=role_name) # create the admin user email = prompt('Email for admin user') password = prompt_pass('Password for admin user') password_confirm = prompt_pass('Confirm password') data = MultiDict({ 'email': email, 'password': password, 'password_confirm': password_confirm }) form = RegisterForm(data, csrf_enabled=False) if form.validate(): try: user = register_user(email=email, password=password) except socket.error as e: print 'Error sending registration email: {}'.format(e) user = services.users.get(email=email, deployment=None) user.update(set__deployment=deployment, add_to_set__roles=role) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors) # create at least one event name = prompt('Event name') start = end = None while True: try: start = datetime.strptime( prompt('Start date (YYYY-MM-DD)'), '%Y-%m-%d') except ValueError: pass if start: break while True: try: end = datetime.strptime( prompt('End date (YYYY-MM-DD)'), '%Y-%m-%d') except ValueError: pass if end: break event, _ = models.Event.objects.get_or_create( name=name, deployment=deployment) event.start_date = datetime.combine(start, datetime.min.time()) event.end_date = datetime.combine(end, datetime.max.time()) event.save()
def run(self): if models.Deployment.objects.count() > 0: print 'You already have deployments set up.' return name = prompt('Name of new deployment') hostname = prompt('Hostname for deployment') deployment = models.Deployment.objects.create(name=name, hostnames=[hostname]) # create the roles role_names = ['manager', 'clerk', 'analyst', 'admin'] for role_name in role_names: role = models.Role.objects.create(name=role_name) # create the admin user email = prompt('Email for admin user') password = prompt_pass('Password for admin user') password_confirm = prompt_pass('Confirm password') data = MultiDict({ 'email': email, 'password': password, 'password_confirm': password_confirm }) form = RegisterForm(data, csrf_enabled=False) if form.validate(): try: user = register_user(email=email, password=password) except socket.error as e: print 'Error sending registration email: {}'.format(e) user = services.users.get(email=email, deployment=None) user.update(set__deployment=deployment, add_to_set__roles=role) print '\nUser created successfully' print 'User(id=%s email=%s)' % (user.id, user.email) return print '\nError creating user:'******'\n'.join(errors) # create at least one event name = prompt('Event name') start = end = None while True: try: start = datetime.strptime(prompt('Start date (YYYY-MM-DD)'), '%Y-%m-%d') except ValueError: pass if start: break while True: try: end = datetime.strptime(prompt('End date (YYYY-MM-DD)'), '%Y-%m-%d') except ValueError: pass if end: break event, _ = models.Event.objects.get_or_create(name=name, deployment=deployment) event.start_date = datetime.combine(start, datetime.min.time()) event.end_date = datetime.combine(end, datetime.max.time()) event.save()