def load_authors(): users_mapping = load_users_mapping() for user_api in users_data_stream('users'): mapped_user = users_mapping[str(user_api['id'])] if not mapped_user['duplicate'] and not mapped_user['delete']: mapped_user_title = '{0} {1}'.format(mapped_user['first_name'], mapped_user['last_name']) mapped_user_slug = slugify(mapped_user_title) print("id is: ") print(user_api['id']) db_user = Person.objects.filter(slug=mapped_user_slug).first() role_info = get_role_info(user_api['roles']) if not db_user and mapped_user_slug: db_user = Person( search_description='', seo_title='', show_in_menus=False, slug=mapped_user_slug, title=mapped_user_title, first_name=mapped_user['first_name'], last_name=mapped_user['last_name'], position_at_new_america=user_api['title'], role=role_info['role_title'], email=user_api['email'], expert=role_info['expert'], depth=4, profile_image=download_image( user_api['image'], mapped_user_slug + "_person_image.jpeg"), short_bio=user_api['short_bio'], long_bio=user_api['long_bio'], ) our_people_page.add_child(instance=db_user) db_user.save() print("New user") print(db_user) elif db_user and mapped_user_slug: db_user.search_description = '' db_user.seo_title = '' db_user.show_in_menus = False db_user.slug = mapped_user_slug db_user.title = mapped_user_title db_user.first_name = mapped_user['first_name'] db_user.last_name = mapped_user['last_name'] db_user.position_at_new_america = user_api['title'] db_user.role = role_info['role_title'] db_user.email = user_api['email'] db_user.expert = role_info['expert'] db_user.depth = 4 db_user.short_bio = user_api['short_bio'] db_user.long_bio = user_api['long_bio'] db_user.profile_image = download_image( user_api['image'], mapped_user_slug + "_person_image.jpeg") print("Existing user") print(db_user) db_user.save()
def create_person(self): person = Person() person.sex = self.__generate_sex() person.birth_date = self.__generate_date() person.first_name = self.__generate_name(person.sex) person.last_name = self.__generate_surname(person.sex) person.pesel = self.__generate_pesel(person.birth_date, person.sex) person.email = self.__generate_email(person.first_name, person.last_name) person.phone = self.__generate_phone() person.password = self.__generate_password() logging.basicConfig(level=logging.DEBUG) logging.info( f"Created person {person.first_name} {person.last_name} with pesel {person.pesel}" ) return person