def get_form_kwargs(self, step=None): form_kwargs = super().get_form_kwargs(step=step) if step == constants.BUSINESS_INFO: previous_data = self.get_cleaned_data_for_step( constants.COMPANY_SEARCH) if previous_data: form_kwargs['is_enrolled'] = helpers.get_is_enrolled( previous_data['company_number']) return form_kwargs
def get_form_kwargs(self, step=None): form_kwargs = super().get_form_kwargs(step=step) if step == BUSINESS_INFO: previous_data = self.get_cleaned_data_for_step(COMPANY_SEARCH) if previous_data: form_kwargs['company_data'] = helpers.get_company_profile( number=previous_data['company_number'], session=self.request.session, ) form_kwargs['is_enrolled'] = helpers.get_is_enrolled( company_number=previous_data['company_number'], session=self.request.session, ) return form_kwargs
def done(self, form_list, **kwargs): data = self.serialize_form_list(form_list) is_enrolled = helpers.get_is_enrolled( company_number=data['company_number'], session=self.request.session, ) if is_enrolled: helpers.request_collaboration( company_number=data['company_number'], email=self.request.sso_user.email, name=f"{data['given_name']} {data['family_name']}", form_url=self.request.path, ) else: self.create_company_profile(data) return TemplateResponse(self.request, self.templates[FINISHED])
def get_context_data(self, *args, **kwargs): context = super().get_context_data(*args, **kwargs) contact_us_url = urls.domestic.CONTACT_US / 'domestic' if self.steps.current == constants.COMPANY_SEARCH: context['contact_us_url'] = contact_us_url elif self.steps.current == constants.BUSINESS_INFO: previous_data = self.get_cleaned_data_for_step( constants.COMPANY_SEARCH) if previous_data: context['is_enrolled'] = helpers.get_is_enrolled( previous_data['company_number']) context['contact_us_url'] = contact_us_url elif self.steps.current == constants.PERSONAL_INFO: context['company'] = self.get_cleaned_data_for_step( constants.BUSINESS_INFO) elif self.steps.current == constants.VERIFICATION: url = urls.domestic.CONTACT_US / 'triage/great-account/verification-missing/' context['verification_missing_url'] = url return context
def done(self, form_list, form_dict, **kwargs): data = self.serialize_form_list(form_list) is_enrolled = helpers.get_is_enrolled(data['company_number']) if is_enrolled: helpers.create_company_member( sso_session_id=self.request.user.session_id, data={ 'company': data['company_number'], 'sso_id': self.request.user.id, 'company_email': self.request.user.email, 'name': self.request.user.full_name, 'mobile_number': data.get('phone_number', ''), }) helpers.notify_company_admins_member_joined( sso_session_id=self.request.user.session_id, email_data={ 'company_name': data['company_name'], 'name': self.request.user.full_name, 'email': self.request.user.email, 'profile_remove_member_url': self.request.build_absolute_uri( reverse('business-profile-admin-tools')), 'report_abuse_url': urls.domestic.FEEDBACK }, form_url=self.request.path) if self.request.user.role == user_roles.MEMBER: messages.add_message(self.request, messages.SUCCESS, 'You are now linked to the profile.') return redirect( reverse('business-profile') + '?member_user_linked=true') else: return super().done(form_list, form_dict=form_dict, **kwargs)