def setUp(self): # Necessary Currency Objects usd = Currency.objects.create() USA = Country() USA.PrimaryCurrency = usd USA.Name = "United States" USA.Code = "US" USA.save() # Types u1 = UserType.objects.create(Name="Clara Type 1") u2 = UserType.objects.create(Name="Clara Type 2") u3 = UserType.objects.create(Name="Clara Type 3") clara = User.objects.create( username="******", email="*****@*****.**", first_name="Clara", last_name="Chang") # Has User Settings, no associated types clara.set_password("Thing5Ar3Gr34t") clara.save() settings_clara = UserSettings() settings_clara = settings_clara.get_settings_based_on_user(clara) settings_clara.BusinessName = "InFlow" settings_clara.Region = "New York" settings_clara.save()
def setUp(self): # Necessary Currency Objects usd = Currency.objects.create() USA = Country() USA.PrimaryCurrency = usd USA.Name = "United States" USA.Code = "US" USA.save() kenny = User.objects.create(username="******", email="*****@*****.**", first_name="Kenny", last_name="Kim") kenny.set_password("Thing5Ar3Gr34t") kenny.save() clara = User.objects.create(username="******", email="*****@*****.**", first_name="Clara", last_name="Chang") clara.set_password("Thing5Ar3Gr34t") clara.save() settings_kenny = UserSettings() settings_kenny = settings_kenny.get_settings_based_on_user(kenny) settings_kenny.save() settings_clara = UserSettings() settings_clara = settings_clara.get_settings_based_on_user(clara) settings_clara.BusinessName = "InFlow" settings_clara.Region = "New York" settings_clara.PhoneNumber = "2125555555" settings_clara.StripeConnectAccountKey = "1234567890" settings_clara.save()
def post(self, request): context = self.get_context_data(request) # Gather Data From Post selected_work_with = request.POST.get( "work-with", UserSettings._meta.get_field("FreelancerWorkWith").get_default()) # Remove anything that was previously selected UserInterest.objects.filter(UserAccount=request.user).delete() for interest in FREELANCER_INTERESTED_IN: interest_point = request.POST.get(interest[0], "") if interest_point == "on": UserInterest.objects.create(UserAccount=request.user, Interest=interest[0]) # Build up user settings or fetch previously saved ones, then save what was selected as the freelancer work with and interested in usersettings = UserSettings() usersettings = usersettings.get_settings_based_on_user(request.user) usersettings.FreelancerWorkWith = selected_work_with usersettings.save() return redirect(reverse("accounts:onboarding_3"))
def setUp(self): # Necessary Currency Objects usd = Currency.objects.create() USA = Country() USA.PrimaryCurrency = usd USA.Name = "United States" USA.Code = "US" USA.save() # Types u1 = UserType.objects.create(Name="Kenny Type 1") u2 = UserType.objects.create(Name="Kenny Type 2") u3 = UserType.objects.create(Name="Kenny Type 3") kenny = User.objects.create( username="******", email="*****@*****.**", first_name="Kenny", last_name="Kim" ) # Has User Settings, has associated types, neither of the two fields we check kenny.set_password("Thing5Ar3Gr34t") kenny.save() settings_kenny = UserSettings() settings_kenny = settings_kenny.get_settings_based_on_user(kenny) settings_kenny.save() UserAssociatedTypes.objects.create(UserAccount=kenny, UserFreelanceType=u2) UserAssociatedTypes.objects.create(UserAccount=kenny, UserFreelanceType=u3)
def post(self, request, *args, **kwargs): form_class = self.get_form_class() form = self.get_form(form_class) form.full_clean() if form.is_valid(): username = form.cleaned_data['username'].replace(' ', '').lower() password = form.cleaned_data['password'] user = User.objects.create(username=username) user.email = form.cleaned_data['email'] user.set_password(password) user.is_active = False user.save() user_settings = UserSettings(user=user,credit=100) user_settings.save() logger.info('New user signed up: %s (%s)', user, user.email) # Automatically authenticate the user after user creation. #user_auth = authenticate(username=username, password=password) #login(request, user_auth) return self.form_valid(form) else: return self.form_invalid(form)
def post(self, request): context = self.get_context_data(request) selected_frequency = request.POST.get( "frequency", UserSettings._meta.get_field("FreelancerFrequency").get_default()) other_text = request.POST.get("other", "") # Go through each UserType and see what was selected, add that to the DB # Remove anything that was previously selected UserAssociatedTypes.objects.filter(UserAccount=request.user).delete() for type in self.all_user_types: current_type = request.POST.get(type.Name, "") if current_type == "on": UserAssociatedTypes.objects.create(UserAccount=request.user, UserFreelanceType=type) # Build up user settings or fetch previously saved ones, then save what was selected as the freelancer frequency type usersettings = UserSettings() usersettings = usersettings.get_settings_based_on_user(request.user) usersettings.FreelancerFrequency = selected_frequency usersettings.OtherType = other_text usersettings.save() return redirect(reverse("accounts:onboarding_2"))
def register(request, trial): page_type = 'register' if trial == 'trial': trial_account = True else: trial_account = False if request.method == 'POST': user_form = UserRegisterForm(request.POST, label_suffix='') group_form = GroupRegisterForm(request.POST, label_suffix='') if user_form.is_valid() and group_form.is_valid(): # save each form password = user_form.cleaned_data['password1'] new_user = user_form.save() group = group_form.save() # associate the user with the group u = new_user group.users.add(u) # set the group as the user's current_group settings = UserSettings(user=u, current_group=group) settings.save() # generate a slug from the group name slug = slugify(group.name)[:20] group.slug = slug group.save() # set the account status to trial if required if trial_account == True: group.account_type = 'Trial' group.save() # save initial snapshots of new user and group details snapshot_user_details(u, password='******') snapshot_group_details(group) # log the new user in user = authenticate(username=new_user.username, password=password) login(request, user) # set the new user up as a participant participant = Participant(group=group, email=user.email, first_name=user.first_name, last_name=user.last_name) participant.save() # send the new user a welcome email send_welcome_email(group=group, user=user) return HttpResponseRedirect(reverse('welcome')) else: user_form = UserRegisterForm(label_suffix='') group_form = GroupRegisterForm(label_suffix='') return render( request, 'register.html', { 'group_form': group_form, 'page_type': page_type, 'trial_account': trial_account, 'user_form': user_form, })
def register(request, trial): page_type = 'register' if trial == 'trial': trial_account = True else: trial_account = False if request.method == 'POST': user_form = UserRegisterForm(request.POST, label_suffix='') group_form = GroupRegisterForm(request.POST, label_suffix='') if user_form.is_valid() and group_form.is_valid(): # save each form password = user_form.cleaned_data['password1'] new_user = user_form.save() group = group_form.save() # associate the user with the group u = new_user group.users.add(u) # set the group as the user's current_group settings = UserSettings(user=u, current_group=group) settings.save() # generate a slug from the group name slug = slugify(group.name)[:20] group.slug = slug group.save() # set the account status to trial if required if trial_account == True: group.account_type = 'Trial' group.save() # save initial snapshots of new user and group details snapshot_user_details(u, password='******') snapshot_group_details(group) # log the new user in user = authenticate(username=new_user.username, password=password) login(request, user) # set the new user up as a participant participant = Participant(group=group, email=user.email, first_name=user.first_name, last_name=user.last_name) participant.save() # send the new user a welcome email send_welcome_email(group=group, user=user) return HttpResponseRedirect(reverse('welcome')) else: user_form = UserRegisterForm(label_suffix='') group_form = GroupRegisterForm(label_suffix='') return render(request, 'register.html', { 'group_form': group_form, 'page_type': page_type, 'trial_account': trial_account, 'user_form': user_form, })
def get(self, request): context = self.get_context_data(request) # If true, This call came from a Stripe page and came back with a User ID if context["came_from_stripe"] and context["user_stripe_acct"] != "": user_settings = UserSettings() user_settings = user_settings.get_settings_based_on_user( request.user) user_settings.StripeConnectAccountKey = context["user_stripe_acct"] user_settings.save() context["needs_stripe"] = False return render(request, self.template_name, context)
def post(self, request): context = self.get_context_data(request) # Gather Data From Post business_name = request.POST.get("business-name", "") region = request.POST.get("region", "") zip_code = request.POST.get("zip-code", "") # Build up user settings or fetch previously saved ones, then save what was selected as the freelancer work with and interested in usersettings = UserSettings() usersettings = usersettings.get_settings_based_on_user(request.user) usersettings.BusinessName = business_name usersettings.Region = region usersettings.ZipCode = zip_code usersettings.save() return redirect(reverse("base:dashboard"))
def setUp(self): # Necessary Currency Objects usd = Currency.objects.create() USA = Country() USA.PrimaryCurrency = usd USA.Name = "United States" USA.Code = "US" USA.save() # Users brian_1 = User.objects.create(username="******", email="*****@*****.**", first_name="Brian", last_name="Katchmar") brian_1.set_password("Th3L10nK1ng15Fun") brian_1.save() settings_brian_1 = UserSettings() settings_brian_1 = settings_brian_1.get_settings_based_on_user(brian_1) settings_brian_1.save() brian_2 = User.objects.create(username="******", email="*****@*****.**", first_name="Brian", last_name="Katchmar") brian_2.set_password("Th3L10nK1ng15Fun") brian_2.save() settings_brian_2 = UserSettings() settings_brian_2 = settings_brian_2.get_settings_based_on_user(brian_2) settings_brian_2.save() if not Contract.objects.filter(Name=self.contract_name_1).exists(): contract_1 = Contract.objects.create(Creator=brian_1, Name=self.contract_name_1, StartDate=date.today(), EndDate=date.today()) Relationship.objects.create(ContractUser=brian_1, ContractForRelationship=contract_1, RelationshipType="f") Relationship.objects.create(ContractUser=brian_2, ContractForRelationship=contract_1, RelationshipType="c")
def setUp(self): # Necessary Currency Objects usd = Currency.objects.create() USA = Country() USA.PrimaryCurrency = usd USA.Name = "United States" USA.Code = "US" USA.save() # Types u1 = UserType.objects.create(Name="Type 1") u2 = UserType.objects.create(Name="Type 2") u3 = UserType.objects.create(Name="Type 3") brian = User.objects.create(username="******", email="*****@*****.**", first_name="Brian", last_name="Katchmar") # Passes settings_brian = UserSettings() settings_brian = settings_brian.get_settings_based_on_user(brian) settings_brian.BusinessName = "MIAC" settings_brian.Region = "New York" settings_brian.save() UserAssociatedTypes.objects.create(UserAccount=brian, UserFreelanceType=u1) josh = User.objects.create(username="******", email="*****@*****.**", first_name="Josh", last_name="Blank") # No User Settings kenny = User.objects.create( username="******", email="*****@*****.**", first_name="Kenny", last_name="Kim" ) # Has User Settings, has associated types, neither of the two fields we check kenny.set_password("Thing5Ar3Gr34t") kenny.save() settings_kenny = UserSettings() settings_kenny = settings_brian.get_settings_based_on_user(kenny) settings_kenny.save() UserAssociatedTypes.objects.create(UserAccount=kenny, UserFreelanceType=u2) UserAssociatedTypes.objects.create(UserAccount=kenny, UserFreelanceType=u3) clara = User.objects.create( username="******", email="*****@*****.**", first_name="Clara", last_name="Chang") # Has User Settings, no associated types clara.set_password("Thing5Ar3Gr34t") clara.save() settings_clara = UserSettings() settings_clara = settings_brian.get_settings_based_on_user(clara) settings_clara.BusinessName = "InFlow" settings_clara.Region = "New York" settings_clara.save()
def setUp(self): # Necessary Currency Objects usd = Currency.objects.create() USA = Country() USA.PrimaryCurrency = usd USA.Name = "United States" USA.Code = "US" USA.save() # Users user_1 = User.objects.create(username="******", email="*****@*****.**", first_name="Brian", last_name="Katchmar") user_1.set_password("Th3L10nK1ng15Fun") user_1.save() settings_user_1 = UserSettings() settings_user_1 = settings_user_1.get_settings_based_on_user(user_1) settings_user_1.BusinessName = "MIAC" settings_user_1.Region = "New York" settings_user_1.save() user_2 = User.objects.create(username="******", email="*****@*****.**", first_name="Brian", last_name="Katchmar") user_2.set_password("Thing5Ar3Gr34t") user_2.save() settings_user_2 = UserSettings() settings_user_2 = settings_user_2.get_settings_based_on_user(user_2) settings_user_2.save() user_3 = User.objects.create(username="******", email="*****@*****.**", first_name="Brian", last_name="Katchmar") user_3.set_password("Thing5Ar3Gr34t") user_3.save() settings_user_3 = UserSettings() settings_user_3 = settings_user_3.get_settings_based_on_user(user_3) settings_user_3.BusinessName = "InFlow" settings_user_3.Region = "New York" settings_user_3.PhoneNumber = "2125555555" settings_user_3.StripeConnectAccountKey = "1234567890" settings_user_3.save()
def setUp(self): # Necessary Currency Objects usd = Currency.objects.create() USA = Country() USA.PrimaryCurrency = usd USA.Name = "United States" USA.Code = "US" USA.save() # Users brian = User.objects.create(username="******", email="*****@*****.**", first_name="Brian", last_name="Katchmar") brian.set_password("Th3L10nK1ng15Fun") brian.save() settings_brian = UserSettings() settings_brian = settings_brian.get_settings_based_on_user(brian) settings_brian.BusinessName = "MIAC" settings_brian.Region = "New York" settings_brian.save() kenny = User.objects.create( username="******", email="*****@*****.**", first_name="Kenny", last_name="Kim" ) # Has User Settings, has associated types, neither of the two fields we check kenny.set_password("Thing5Ar3Gr34t") kenny.save() settings_kenny = UserSettings() settings_kenny = settings_kenny.get_settings_based_on_user(kenny) settings_kenny.save() clara = User.objects.create(username="******", email="*****@*****.**", first_name="Clara", last_name="Chang") clara.set_password("Thing5Ar3Gr34t") clara.save() settings_clara = UserSettings() settings_clara = settings_clara.get_settings_based_on_user(clara) settings_clara.BusinessName = "InFlow" settings_clara.Region = "New York" settings_clara.PhoneNumber = "2125555555" settings_clara.StripeConnectAccountKey = "1234567890" settings_clara.save() if NotificationSetting.objects.filter( SettingName=self.setting_string_1).exists(): ns1 = NotificationSetting.objects.get( SettingName=self.setting_string_1) else: ns1 = NotificationSetting.objects.create( SettingName=self.setting_string_1) if NotificationSetting.objects.filter( SettingName=self.setting_string_2).exists(): ns2 = NotificationSetting.objects.get( SettingName=self.setting_string_2) else: ns2 = NotificationSetting.objects.create( SettingName=self.setting_string_2) if NotificationSetting.objects.filter( SettingName=self.setting_string_3).exists(): ns3 = NotificationSetting.objects.get( SettingName=self.setting_string_3) else: ns3 = NotificationSetting.objects.create( SettingName=self.setting_string_3) if NotificationSetting.objects.filter( SettingName=self.setting_string_4).exists(): ns4 = NotificationSetting.objects.get( SettingName=self.setting_string_4) else: ns4 = NotificationSetting.objects.create( SettingName=self.setting_string_4) # Purge the DB Entries, we're rebuild what we're expecting UserNotificationSettings.objects.filter(UserAccount=brian).delete() UserNotificationSettings.objects.filter(UserAccount=kenny).delete() UserNotificationSettings.objects.filter(UserAccount=clara).delete() # Brian UserNotificationSettings.objects.create(UserAccount=brian, Setting=ns1, Selected=True) UserNotificationSettings.objects.create(UserAccount=brian, Setting=ns2, Selected=True) UserNotificationSettings.objects.create(UserAccount=brian, Setting=ns3, Selected=True) UserNotificationSettings.objects.create(UserAccount=brian, Setting=ns4, Selected=True) # Kenny UserNotificationSettings.objects.create(UserAccount=kenny, Setting=ns1, Selected=True) UserNotificationSettings.objects.create(UserAccount=kenny, Setting=ns2, Selected=False) UserNotificationSettings.objects.create(UserAccount=kenny, Setting=ns3, Selected=False) UserNotificationSettings.objects.create(UserAccount=kenny, Setting=ns4, Selected=True) # Clara UserNotificationSettings.objects.create(UserAccount=clara, Setting=ns1, Selected=False) UserNotificationSettings.objects.create(UserAccount=clara, Setting=ns2, Selected=True) UserNotificationSettings.objects.create(UserAccount=clara, Setting=ns3, Selected=False) UserNotificationSettings.objects.create(UserAccount=clara, Setting=ns4, Selected=True)