def adviser_illustrated_client_ajax(request, enquiry_id): if request.method == "POST": if AdviserQueue.objects.filter(adviser=request.user, pk=enquiry_id).exists(): form = IllustrationForm(request.POST) if form.is_valid(): aq = AdviserQueue.objects.get(adviser=request.user, pk=enquiry_id) aq.status = 4 aq.portfolio_value = form.cleaned_data[ 'funds_under_management'] aq.add_note('Client illustrated with £%d' % form.cleaned_data['funds_under_management']) aq.save() try: user = User.objects.get(email=aq.email) except User.DoesNotExist: user, _, record_stats = create_stage_one_profile( request, aq.email, 'manual_add_concierge', send_activation=False, login_user=False) pool, _ = ConciergeUserPool.objects.get_or_create( term=0, user=user, balance=form.cleaned_data['funds_under_management']) return HttpResponse(status=204) return HttpResponse(status=409, content='{"status":"error in form"}') return HttpResponse(status=409, content='{"status":"doesn\'t exist"}') return HttpResponse(status=409, content='{"status":"not post"}')
def adviser_signed_client_ajax(request, enquiry_id): if request.method == 'POST': if AdviserQueue.objects.filter(adviser=request.user, pk=enquiry_id).exists(): adviser_queue = AdviserQueue.objects.get(pk=enquiry_id) form = SignedForm(request.POST, instance=adviser_queue) if form.is_valid(): form.save() adviser_queue.status = 9 adviser_queue.add_note( 'Client signed up with £%d, fee was charged as £%d' % (form.cleaned_data['portfolio_value'], form.cleaned_data['fee'])) adviser_queue.save() try: user = User.objects.get(email=adviser_queue.email) except User.DoesNotExist: user, _, record_stats = create_stage_one_profile( request, adviser_queue.email, 'manual_add_concierge', send_activation=False, login_user=False) record_referral_signup(request, user, True, 'concierge_client') return HttpResponse(status=204) else: assert False, form.errors return HttpResponse(status=409, content='{"status":"doesn\'t exist"}') return HttpResponse(status=409, content='{"status":"not post"}')
def engine_load_user(request, email=None, context=None): if context is None: context = {} if request.method == "POST": form = ConciergeUserForm(request.POST) if form.is_valid(): User = get_user_model() try: user = User.objects.get(email=form.cleaned_data['email']) except User.DoesNotExist: user, _, record_stats = create_stage_one_profile( request, email=form.cleaned_data['email'], source='CMT Dashboard', send_activation=False, login_user=False) concierge_user, created = ConciergeUserOption.objects.get_or_create( user=user) context = load_user(concierge_user, context) else: context['form'] = form return render(request, 'concierge/engine/index_no_wrapper.html', context) elif email is not None: concierge_user, created = ConciergeUserOption.objects.get_or_create( user__email=email) context = load_user(concierge_user, context) else: context['form'] = ConciergeUserForm() return render(request, 'concierge/engine/index_no_wrapper.html', context) return render(request, 'concierge/engine/user_management.html', context)
def engine_load_user(request, email=None, context=None): if context is None: context = {} if request.method == "POST": form = ConciergeUserForm(request.POST) if form.is_valid(): User = get_user_model() try: user = User.objects.get(email=form.cleaned_data['email']) except User.DoesNotExist: user, _, record_stats = create_stage_one_profile(request, email=form.cleaned_data['email'], source='CMT Dashboard', send_activation=False, login_user=False) concierge_user, created = ConciergeUserOption.objects.get_or_create(user=user) context = load_user(concierge_user, context) else: context['form'] = form return render(request, 'concierge/engine/index_no_wrapper.html', context) elif email is not None: concierge_user, created = ConciergeUserOption.objects.get_or_create(user__email=email) context = load_user(concierge_user, context) else: context['form'] = ConciergeUserForm() return render(request, 'concierge/engine/index_no_wrapper.html', context) return render(request, 'concierge/engine/user_management.html', context)
def adviser_add_client_ajax(request, context=None): if context is None: context = {} if request.method == "POST": form = AddClientForm(request.POST) if form.is_valid(): new_client = form.save(commit=False) new_client.adviser = request.user new_client.add_note('Client was added manually') new_client.save() create_stage_one_profile(request, new_client.email, 'manual_add_concierge', send_activation=False, login_user=False) return HttpResponse(status=204) return HttpResponse(status=409, content='{"status":"%s"}' % form.errors) return HttpResponse(status=409, content='{"status":"exists"}')
def best_buy_table_callback(request, context=None): if context is None: context = {} if request.method == 'POST': form = BestBuyCallbackForm(request.POST) if form.is_valid(): create_profile_output = create_stage_one_profile( request=request, email=form.cleaned_data['email'], source='best_buy_call_back', send_activation=False, login_user=False) user, user_created, record_stats = create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='best_buy_call_back') AdviserQueue.add_to_queue( email=form.cleaned_data['email'], first_name=form.cleaned_data['name'], last_name='.', lead_source='Best Buy Call Back', telephone_number=form.cleaned_data['phone']) return render(request, 'products/topaccounts/callback/success.html', context) context['form'] = form return render(request, 'products/topaccounts/callback/form.html', context) return render(request, 'products/topaccounts/callback/failure.html', context)
def reccuring_business_bestbuy_emails(request): context = {'weekly_form': WeeklyBusinessRateAlertsForm()} if request.method == 'POST': form = WeeklyBusinessRateAlertsForm(request.POST) if form.is_valid(): best_buy_table_emails = form.save() if 'referer' in request.session: referer = Referrer.objects.get(pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'Recurring Business Best Buy Emails', 'Signup', referer) create_profile_output = create_stage_one_profile(request=request, email=best_buy_table_emails.email, source='recurring_business_best_buy_emails', send_activation=False, login_user=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='signup') context['weekly_signed_up'] = True if best_buy_table_emails.frequency == 1: update_subscription_on_email_service.delay(best_buy_table_emails.email, interest_group=u'Daily Business Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_business_daily_best_buys') if best_buy_table_emails.frequency == 2: update_subscription_on_email_service.delay(best_buy_table_emails.email, interest_group=u'Weekly Business Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_business_weekly_best_buys') if best_buy_table_emails.frequency == 3: update_subscription_on_email_service.delay(best_buy_table_emails.email, interest_group=u'Monthly Business Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_business_monthly_best_buys') return render(request, 'products/topaccounts/business_reccuring_emails.html', context)
def adviser_client_dashboard(request, client_id, context=None): if context is None: context = {} if AdviserQueue.objects.filter(pk=client_id, adviser=request.user).exists(): adviser_queue = AdviserQueue.objects.get(pk=client_id, adviser=request.user) try: user = User.objects.get(email=adviser_queue.email) user_created = False except User.DoesNotExist: create_profile_output = create_stage_one_profile(request, adviser_queue.email, source='Concierge Signup', send_activation=False, login_user=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='signup') context['concierge_user'], _ = ConciergeUserOption.objects.get_or_create(user=user) context['user_options_form'] = ConciergeUserOptionForm(instance=context['concierge_user']) context['user_notes_form'] = ConciergeUserNotesForm(initial={'user': user}) context['user_notes'] = ConciergeUserNotes.objects.filter(user=user) concierge_lead_capture, _ = ConciergeLeadCapture.objects.get_or_create(user=user, named_user=True) context['lead_capture_first'] = ConciergeLeadCaptureForm(prefix='first_client', instance=concierge_lead_capture) concierge_lead_capture, _ = ConciergeLeadCapture.objects.get_or_create(user=user, named_user=False) context['lead_capture_second'] = ConciergeLeadCaptureForm(prefix='second_client', instance=concierge_lead_capture) record_referral_signup(request=request, user=user, user_created=user_created, action='concierge_enquiry') return render(request, 'concierge/adviser/client_dashboard.html', context) return HttpResponse(status=403)
def reccuring_business_bestbuy_emails(request): context = {'weekly_form': WeeklyBusinessRateAlertsForm()} if request.method == 'POST': form = WeeklyBusinessRateAlertsForm(request.POST) if form.is_valid(): best_buy_table_emails = form.save() if 'referer' in request.session: referer = Referrer.objects.get( pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'Recurring Business Best Buy Emails', 'Signup', referer) create_profile_output = create_stage_one_profile( request=request, email=best_buy_table_emails.email, source='recurring_business_best_buy_emails', send_activation=False, login_user=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='signup') context['weekly_signed_up'] = True if best_buy_table_emails.frequency == 1: update_subscription_on_email_service.delay( best_buy_table_emails.email, interest_group=u'Daily Business Best Buy Tables') record_referral_signup( request=request, user=user, user_created=user_created, action='recurring_business_daily_best_buys') if best_buy_table_emails.frequency == 2: update_subscription_on_email_service.delay( best_buy_table_emails.email, interest_group=u'Weekly Business Best Buy Tables') record_referral_signup( request=request, user=user, user_created=user_created, action='recurring_business_weekly_best_buys') if best_buy_table_emails.frequency == 3: update_subscription_on_email_service.delay( best_buy_table_emails.email, interest_group=u'Monthly Business Best Buy Tables') record_referral_signup( request=request, user=user, user_created=user_created, action='recurring_business_monthly_best_buys') return render(request, 'products/topaccounts/business_reccuring_emails.html', context)
def personal_top_accounts(request, bestbuy_slug, term=None): context = RequestContext(request) # required for the sidebar bestbuys = BestBuy.objects.filter(has_table=True, client_type='p') context['bestbuys'] = bestbuys context['bestbuyselected'] = True bestbuy = BestBuy.objects.get(slug=bestbuy_slug, client_type='p') context['bestbuy'] = bestbuy products = bestbuy.get_personal_products(term=term) fixed_rate_bond_products = defaultdict(list) for product in products: product_term = product.link_to_products.get(bestbuy=bestbuy, product=product, date_replaced=None).term fixed_rate_bond_products[product_term].append(product) context['terms'] = fixed_rate_bond_products.keys() context['products'] = fixed_rate_bond_products context['emailform'] = EmailInstructionsForm() context['weekly_form'] = WeeklyRateAlertsForm() if request.method == 'POST': form = WeeklyRateAlertsForm(request.POST) if form.is_valid(): best_buy_table_emails = form.save() if 'referer' in request.session: referer = Referrer.objects.get(pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'Reccuring Best Buy Emails', 'Signup', referer) create_profile_output = create_stage_one_profile(request=request, email=best_buy_table_emails.email, source='recurring_best_buy_emails', send_activation=False, login_user=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='signup') context['weekly_signed_up'] = True from common.tasks import update_subscription_on_email_service if best_buy_table_emails.frequency == 1: update_subscription_on_email_service.delay(best_buy_table_emails.email, interest_group=u'Daily Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_daily_best_buys') if best_buy_table_emails.frequency == 2: update_subscription_on_email_service.delay(best_buy_table_emails.email, interest_group=u'Weekly Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_weekly_best_buys') if best_buy_table_emails.frequency == 3: update_subscription_on_email_service.delay(best_buy_table_emails.email, interest_group=u'Monthly Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_monthly_best_buys') return render_to_response('products/topaccounts/table.html', context_instance=context)
def bj_signup(request): form_1 = BJForm(prefix="bj_form1") form_2 = BJForm(prefix="bj_form2") if request.method == "POST": form_1 = BJForm(request.POST, prefix="bj_form1") form_2 = BJForm(request.POST, prefix="bj_form2") if form_1.is_valid() or form_2.is_valid(): if form_1.is_valid(): form = form_1 else: form = form_2 form.save() if 'referer' in request.session: referer = Referrer.objects.get(pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'Beckford James', 'Signup', referer) user, user_created, record_stats = create_stage_one_profile(request=request, email=form.cleaned_data.get('email'), source='beckford_james_signup', send_activation=False, login_user=False) from common.tasks import update_subscription_on_email_service update_subscription_on_email_service.delay(user.email, interest_group=u'Beckford James Referral') name = form.cleaned_data.get('name') email = form.cleaned_data.get('email') telephone = form.cleaned_data.get('telephone') postcode = form.cleaned_data.get('postcode') text_email = get_template('ifa/bj_signup_email.txt') client_details = {'name': name, 'email': email, 'telephone': telephone, 'postcode': postcode} c = Context(client_details) text_content = text_email.render(c) subject, from_email = "New Beckford James Enquiry", "*****@*****.**" msg = EmailMultiAlternatives(subject, text_content, from_email, ["*****@*****.**", '*****@*****.**']) msg.send() AdviserQueue.add_to_queue(client_details['email'], client_details['name'], u'.', u'IFA (Beckford James) Signup', telephone_number=client_details['telephone']) record_referral_signup(request, user, user_created, 'bj_referral') return redirect(reverse('bj_thankyou')) else: messages.error(request, 'Your input contained errors, or you have already enquired about Beckford James') return render(request, 'ifa/bj_signup.html', { 'bj_form': form_1, 'bj_form2': form_2 })
def adviser_add_client_ajax(request, context=None): if context is None: context = {} if request.method == "POST": form = AddClientForm(request.POST) if form.is_valid(): new_client = form.save(commit=False) new_client.adviser = request.user new_client.add_note('Client was added manually') new_client.save() create_stage_one_profile(request, new_client.email, 'manual_add_concierge', send_activation=False, login_user=False) return HttpResponse(status=204) return HttpResponse(status=409, content='{"status":"%s"}' % form.errors) return HttpResponse(status=409, content='{"status":"exists"}')
def save(self): data = self.cleaned_data user_exists = False if 'email' in data: email = data['email'] if User.objects.filter(email=email).exists(): # This user already exists, maybe they have details that need to be updated user_exists = True user = User.objects.get(email=email) else: # User does not already exist, we'll need to create one. create_profile_output = create_stage_one_profile( None, email, '', send_activation=False, login_user=False, use_site_framework=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output user_exists = True if 'title' in data and user_exists: title = data['title'] profile = Profile.objects.get(user=user) profile.salutation = title profile.save() if 'first_name' in data and user_exists: first_name = data['first_name'] user.first_name = first_name if 'last_name' in data and user_exists: last_name = data['last_name'] user.last_name = last_name if 'phone' in data and user_exists: phone = data['phone'] profile = Profile.objects.get(user=user) profile.telephone = phone profile.save() if 'marital_status' in data: pass if 'residential_status' in data: pass if 'date_of_birth' in data: dob = data['date_of_birth'] profile = Profile.objects.get(user=user) profile.dob = dob profile.save()
def adviser_client_dashboard(request, client_id, context=None): if context is None: context = {} if AdviserQueue.objects.filter(pk=client_id, adviser=request.user).exists(): adviser_queue = AdviserQueue.objects.get(pk=client_id, adviser=request.user) try: user = User.objects.get(email=adviser_queue.email) user_created = False except User.DoesNotExist: create_profile_output = create_stage_one_profile( request, adviser_queue.email, source='Concierge Signup', send_activation=False, login_user=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='signup') context[ 'concierge_user'], _ = ConciergeUserOption.objects.get_or_create( user=user) context['user_options_form'] = ConciergeUserOptionForm( instance=context['concierge_user']) context['user_notes_form'] = ConciergeUserNotesForm( initial={'user': user}) context['user_notes'] = ConciergeUserNotes.objects.filter(user=user) concierge_lead_capture, _ = ConciergeLeadCapture.objects.get_or_create( user=user, named_user=True) context['lead_capture_first'] = ConciergeLeadCaptureForm( prefix='first_client', instance=concierge_lead_capture) concierge_lead_capture, _ = ConciergeLeadCapture.objects.get_or_create( user=user, named_user=False) context['lead_capture_second'] = ConciergeLeadCaptureForm( prefix='second_client', instance=concierge_lead_capture) record_referral_signup(request=request, user=user, user_created=user_created, action='concierge_enquiry') return render(request, 'concierge/adviser/client_dashboard.html', context) return HttpResponse(status=403)
def step_impl(context): """ :type context behave.runner.Context """ request = RequestFactory().get('/') request.session = {} user, user_created, record_stats = create_stage_one_profile(request, '*****@*****.**', 'testing', send_activation=False, login_user=False, use_site_framework=False) context.user = user context.user_created = user_created
def step_impl(context): """ :type context behave.runner.Context """ request = RequestFactory().get('/') request.session = {} user, user_created, record_stats = create_stage_one_profile( request, '*****@*****.**', 'testing', send_activation=False, login_user=False, use_site_framework=False) context.user = user context.user_created = user_created
def save(self): data = self.cleaned_data user_exists = False if 'email' in data: email = data['email'] if User.objects.filter(email=email).exists(): # This user already exists, maybe they have details that need to be updated user_exists = True user = User.objects.get(email=email) else: # User does not already exist, we'll need to create one. create_profile_output = create_stage_one_profile(None, email, '', send_activation=False, login_user=False, use_site_framework=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output user_exists = True if 'title' in data and user_exists: title = data['title'] profile = Profile.objects.get(user=user) profile.salutation = title profile.save() if 'first_name' in data and user_exists: first_name = data['first_name'] user.first_name = first_name if 'last_name' in data and user_exists: last_name = data['last_name'] user.last_name = last_name if 'phone' in data and user_exists: phone = data['phone'] profile = Profile.objects.get(user=user) profile.telephone = phone profile.save() if 'marital_status' in data: pass if 'residential_status' in data: pass if 'date_of_birth' in data: dob = data['date_of_birth'] profile = Profile.objects.get(user=user) profile.dob = dob profile.save()
def save(self, request): email = self.cleaned_data('email') user, user_created, record_stats = create_stage_one_profile( request, email=email, source=self.cleaned_data.get('source')) tim_signup, _ = TiMSignups.objects.get_or_create(email=user.email) user.profile.newsletter = self.cleaned_data.get('newsletter', False) user.profile.ratealerts = self.cleaned_data.get('ratealerts', False) if RateAlertsSignup.objects.filter(email=user.email).exists(): user.profile.ratealerts = True if NewsletterSignup.objects.filter(email=user.email).exists(): user.profile.newsletter = True user.profile.is_synched = False user.profile.skeleton_user = False user.profile.save() # add the fixed rate product provider = request.POST['provider'] balance = request.POST['balance'] account_type = request.POST['account_type'] if account_type != '' and provider != '' and balance != '': bestbuy = BestBuy.objects.get(id=account_type) reminder = RatetrackerReminder() reminder.user = user reminder.account_type = bestbuy reminder.balance = balance reminder.provider = Provider.objects.get(id=provider) if 'maturity_date_month' not in request.POST and 'maturity_date_year' not in request.POST: product = Product.objects.get(pk=request.POST['product']) product_term = product.term if product.term is not None else 0 month = int(request.POST['opening_date_month']) year = int(request.POST['opening_date_year']) maturity_date = datetime.date( day=1, month=month, year=year) + datetime.timedelta(days=product_term) else: month = int(request.POST['maturity_date_month']) year = int(request.POST['maturity_date_year']) maturity_date = datetime.date(day=1, month=month, year=year) reminder.maturity_date = maturity_date reminder.is_synched = False reminder.save() return user
def post(self, request, format=None): data = request.data thb_reminder = None source = data.get('source', None) user, user_created = create_stage_one_profile(request=request, email=data['email'], source='thb_tool', send_activation=False, login_user=False) record_referral_signup(request=request, user=user, user_created=user_created, action='signup') if data['remind_me']: # Client asked to be reminded of the FSCS change to £75,000 update_subscription_on_email_service.delay(data['email'], interest_group=u'FSCS Protection Drop Reminder') record_referral_signup(request=request, user=user, user_created=user_created, action='thb_remind_me_fscs') if data['set_reminder'] == 'true': deposit_date = datetime.date(year=int(data['deposit_year']), month=int(data['deposit_month']), day=int(data['deposit_day'])) thb_reminder = THBToolReminder.add_reminder( name=data['name'], email=data['email'], phone_number=data['phone_number'], source=source, deposit_date=deposit_date, callback=(data['book_callback'] == 'true') ) record_referral_signup(request=request, user=user, user_created=user_created, action='thb_alert_me_fscs') if data['book_callback'] == 'true': AdviserQueue.add_to_queue(email=data['email'], first_name=data['name'], last_name='.', lead_source='THB Tool', telephone_number=data['phone_number']) if thb_reminder is not None: thb_reminder.scheduled_callback = True thb_reminder.save() record_referral_signup(request=request, user=user, user_created=user_created, action='thb_book_callback') return JsonResponse({ 'status': 'ok' })
def adviser_illustrated_client_ajax(request, enquiry_id): if request.method == "POST": if AdviserQueue.objects.filter(adviser=request.user, pk=enquiry_id).exists(): form = IllustrationForm(request.POST) if form.is_valid(): aq = AdviserQueue.objects.get(adviser=request.user, pk=enquiry_id) aq.status = 4 aq.portfolio_value = form.cleaned_data['funds_under_management'] aq.add_note('Client illustrated with £%d' % form.cleaned_data['funds_under_management']) aq.save() try: user = User.objects.get(email=aq.email) except User.DoesNotExist: user, _, record_stats = create_stage_one_profile(request, aq.email, 'manual_add_concierge', send_activation=False, login_user=False) pool, _ = ConciergeUserPool.objects.get_or_create(term=0, user=user, balance=form.cleaned_data['funds_under_management']) return HttpResponse(status=204) return HttpResponse(status=409, content='{"status":"error in form"}') return HttpResponse(status=409, content='{"status":"doesn\'t exist"}') return HttpResponse(status=409, content='{"status":"not post"}')
def adviser_signed_client_ajax(request, enquiry_id): if request.method == 'POST': if AdviserQueue.objects.filter(adviser=request.user, pk=enquiry_id).exists(): adviser_queue = AdviserQueue.objects.get(pk=enquiry_id) form = SignedForm(request.POST, instance=adviser_queue) if form.is_valid(): form.save() adviser_queue.status = 9 adviser_queue.add_note('Client signed up with £%d, fee was charged as £%d' % (form.cleaned_data['portfolio_value'], form.cleaned_data['fee'])) adviser_queue.save() try: user = User.objects.get(email=adviser_queue.email) except User.DoesNotExist: user, _, record_stats = create_stage_one_profile(request, adviser_queue.email, 'manual_add_concierge', send_activation=False, login_user=False) record_referral_signup(request, user, True, 'concierge_client') return HttpResponse(status=204) else: assert False, form.errors return HttpResponse(status=409, content='{"status":"doesn\'t exist"}') return HttpResponse(status=409, content='{"status":"not post"}')
def best_buy_table_callback(request, context=None): if context is None: context = {} if request.method == 'POST': form = BestBuyCallbackForm(request.POST) if form.is_valid(): create_profile_output = create_stage_one_profile(request=request, email=form.cleaned_data['email'], source='best_buy_call_back', send_activation=False, login_user=False) user, user_created, record_stats = create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='best_buy_call_back') AdviserQueue.add_to_queue(email=form.cleaned_data['email'], first_name=form.cleaned_data['name'], last_name='.', lead_source='Best Buy Call Back', telephone_number=form.cleaned_data['phone']) return render(request, 'products/topaccounts/callback/success.html', context) context['form'] = form return render(request, 'products/topaccounts/callback/form.html', context) return render(request, 'products/topaccounts/callback/failure.html', context)
def tpo_signup(request, balance=None): if balance == '1': form = IFAForm(initial={'signup_amount': '£250,000 - £1million'}) elif balance == '2': form = IFAForm(initial={'signup_amount': '£1million - £5million'}) elif balance == '3': form = IFAForm(initial={'signup_amount': '£5million +'}) else: form = IFAForm() if request.method == "POST": form = IFAForm(request.POST) if form.is_valid(): form.save() if 'referer' in request.session: referer = Referrer.objects.get(pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'TPO', 'Signup', referer) user, user_created, record_stats = create_stage_one_profile(request=request, email=form.cleaned_data.get('email'), source='tpo_signup', send_activation=False, login_user=False) from common.tasks import update_subscription_on_email_service update_subscription_on_email_service.delay(user.email, interest_group=u'TPO Referral') text_email = get_template('ifa/ifa_signup_email.txt') guide_email = get_template('ifa/ifa_guide_email.txt') html_guide_email = get_template('ifa/ifa_guide_email.html') client_details = {'name': form.cleaned_data.get('name'), 'last_name': form.cleaned_data.get('last_name'), 'email': form.cleaned_data.get('email'), 'signup_amount': form.cleaned_data.get('signup_amount'), 'postcode': form.cleaned_data.get('postcode'), 'telephone': form.cleaned_data.get('telephone')} c = Context(client_details) text_content = text_email.render(c) guide_content = guide_email.render(c) html_guide_content = html_guide_email.render(c) subject, from_email = "New IFA Enquiry", "*****@*****.**" to_email = ["*****@*****.**"] AdviserQueue.add_to_queue(client_details['email'], client_details['name'], u'.', u'IFA Signup (TPO) - {value}'.format(value=client_details['signup_amount']), telephone_number=client_details['telephone']) msg = EmailMultiAlternatives(subject, text_content, from_email, to_email) msg.send() subject, from_email = "Your IFA Guide", "*****@*****.**" msg = EmailMultiAlternatives(subject, guide_content, from_email, [c['email']]) msg.attach_alternative(html_guide_content, "text/html") guide_path = os.path.join(settings.STATIC_ROOT, 'doc', 'ifa', '9_steps_to_choosing_an_independent_financial_adviser.pdf') msg.attach_file(guide_path) msg.send() record_referral_signup(request, user, user_created, 'tpo_referral') return redirect('tpo_thankyou') else: messages.error(request, 'Your input contained errors, or you have already enquired about The Private Office') return render(request, 'ifa/tpo_signup_alt.html', { 'form': form })
def bj_signup(request): form_1 = BJForm(prefix="bj_form1") form_2 = BJForm(prefix="bj_form2") if request.method == "POST": form_1 = BJForm(request.POST, prefix="bj_form1") form_2 = BJForm(request.POST, prefix="bj_form2") if form_1.is_valid() or form_2.is_valid(): if form_1.is_valid(): form = form_1 else: form = form_2 form.save() if 'referer' in request.session: referer = Referrer.objects.get( pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'Beckford James', 'Signup', referer) user, user_created, record_stats = create_stage_one_profile( request=request, email=form.cleaned_data.get('email'), source='beckford_james_signup', send_activation=False, login_user=False) from common.tasks import update_subscription_on_email_service update_subscription_on_email_service.delay( user.email, interest_group=u'Beckford James Referral') name = form.cleaned_data.get('name') email = form.cleaned_data.get('email') telephone = form.cleaned_data.get('telephone') postcode = form.cleaned_data.get('postcode') text_email = get_template('ifa/bj_signup_email.txt') client_details = { 'name': name, 'email': email, 'telephone': telephone, 'postcode': postcode } c = Context(client_details) text_content = text_email.render(c) subject, from_email = "New Beckford James Enquiry", "*****@*****.**" msg = EmailMultiAlternatives( subject, text_content, from_email, ["*****@*****.**", '*****@*****.**']) msg.send() AdviserQueue.add_to_queue( client_details['email'], client_details['name'], u'.', u'IFA (Beckford James) Signup', telephone_number=client_details['telephone']) record_referral_signup(request, user, user_created, 'bj_referral') return redirect(reverse('bj_thankyou')) else: messages.error( request, 'Your input contained errors, or you have already enquired about Beckford James' ) return render(request, 'ifa/bj_signup.html', { 'bj_form': form_1, 'bj_form2': form_2 })
def tpo_signup(request, balance=None): if balance == '1': form = IFAForm(initial={'signup_amount': '£250,000 - £1million'}) elif balance == '2': form = IFAForm(initial={'signup_amount': '£1million - £5million'}) elif balance == '3': form = IFAForm(initial={'signup_amount': '£5million +'}) else: form = IFAForm() if request.method == "POST": form = IFAForm(request.POST) if form.is_valid(): form.save() if 'referer' in request.session: referer = Referrer.objects.get( pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'TPO', 'Signup', referer) user, user_created, record_stats = create_stage_one_profile( request=request, email=form.cleaned_data.get('email'), source='tpo_signup', send_activation=False, login_user=False) from common.tasks import update_subscription_on_email_service update_subscription_on_email_service.delay( user.email, interest_group=u'TPO Referral') text_email = get_template('ifa/ifa_signup_email.txt') guide_email = get_template('ifa/ifa_guide_email.txt') html_guide_email = get_template('ifa/ifa_guide_email.html') client_details = { 'name': form.cleaned_data.get('name'), 'last_name': form.cleaned_data.get('last_name'), 'email': form.cleaned_data.get('email'), 'signup_amount': form.cleaned_data.get('signup_amount'), 'postcode': form.cleaned_data.get('postcode'), 'telephone': form.cleaned_data.get('telephone') } c = Context(client_details) text_content = text_email.render(c) guide_content = guide_email.render(c) html_guide_content = html_guide_email.render(c) subject, from_email = "New IFA Enquiry", "*****@*****.**" to_email = ["*****@*****.**"] AdviserQueue.add_to_queue( client_details['email'], client_details['name'], u'.', u'IFA Signup (TPO) - {value}'.format( value=client_details['signup_amount']), telephone_number=client_details['telephone']) msg = EmailMultiAlternatives(subject, text_content, from_email, to_email) msg.send() subject, from_email = "Your IFA Guide", "*****@*****.**" msg = EmailMultiAlternatives(subject, guide_content, from_email, [c['email']]) msg.attach_alternative(html_guide_content, "text/html") guide_path = os.path.join( settings.STATIC_ROOT, 'doc', 'ifa', '9_steps_to_choosing_an_independent_financial_adviser.pdf') msg.attach_file(guide_path) msg.send() record_referral_signup(request, user, user_created, 'tpo_referral') return redirect('tpo_thankyou') else: messages.error( request, 'Your input contained errors, or you have already enquired about The Private Office' ) return render(request, 'ifa/tpo_signup_alt.html', {'form': form})
def personal_top_accounts(request, bestbuy_slug, term=None): context = RequestContext(request) # required for the sidebar bestbuys = BestBuy.objects.filter(has_table=True, client_type='p') context['bestbuys'] = bestbuys context['bestbuyselected'] = True bestbuy = BestBuy.objects.get(slug=bestbuy_slug, client_type='p') context['bestbuy'] = bestbuy products = bestbuy.get_personal_products(term=term) fixed_rate_bond_products = defaultdict(list) for product in products: product_term = product.link_to_products.get(bestbuy=bestbuy, product=product, date_replaced=None).term fixed_rate_bond_products[product_term].append(product) context['terms'] = fixed_rate_bond_products.keys() context['products'] = fixed_rate_bond_products context['emailform'] = EmailInstructionsForm() context['weekly_form'] = WeeklyRateAlertsForm() if request.method == 'POST': form = WeeklyRateAlertsForm(request.POST) if form.is_valid(): best_buy_table_emails = form.save() if 'referer' in request.session: referer = Referrer.objects.get( pk=request.session['referer']).name else: referer = '(Direct)' analytics.delay('event', 'Reccuring Best Buy Emails', 'Signup', referer) create_profile_output = create_stage_one_profile( request=request, email=best_buy_table_emails.email, source='recurring_best_buy_emails', send_activation=False, login_user=False) if isinstance(create_profile_output, tuple): user, user_created, record_stats = create_profile_output else: return create_profile_output record_referral_signup(request=request, user=user, user_created=user_created, action='signup') context['weekly_signed_up'] = True from common.tasks import update_subscription_on_email_service if best_buy_table_emails.frequency == 1: update_subscription_on_email_service.delay( best_buy_table_emails.email, interest_group=u'Daily Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_daily_best_buys') if best_buy_table_emails.frequency == 2: update_subscription_on_email_service.delay( best_buy_table_emails.email, interest_group=u'Weekly Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_weekly_best_buys') if best_buy_table_emails.frequency == 3: update_subscription_on_email_service.delay( best_buy_table_emails.email, interest_group=u'Monthly Best Buy Tables') record_referral_signup(request=request, user=user, user_created=user_created, action='recurring_monthly_best_buys') return render_to_response('products/topaccounts/table.html', context_instance=context)