def reset_password(self, new_password=None): if new_password: self.password = new_password else: self.password = NeoProfile.generate_password() api.change_password(self.login_alias, new_password, token=api.get_forgot_password_token(self.login_alias).TempToken) self.save()
def forwards(self, orm): count = 1 total = orm['neo.NeoProfile'].objects.count() for np in orm['neo.NeoProfile'].objects.all().iterator(): password = NeoProfile.generate_password() api.change_password(np.login_alias, password, token=api.get_forgot_password_token(np.login_alias).TempToken) np.password = password np.save() sys.stdout.write("\rReset %d out of %d" % (count, total)) sys.stdout.flush() count += 1 print "\nDone"
def clean_user(user, called_from_child=False): super(User, user).full_clean() if not called_from_child: # check if password needs to be changed raw_password = getattr(user, 'raw_password', None) if raw_password: # attempt to change password in order to validate it old_password = getattr(user, 'old_password', None) delattr(user, 'raw_password') if old_password: api.change_password(user.username, raw_password, old_password=old_password) else: api.change_password(user.username, raw_password, token=user.forgot_password_token) user.need_to_clean_user = False
def update_consumer(member): consumer_id = NeoProfile.objects.get(user=member).consumer_id if not USE_MCAL: # update changed attributes old_member = cache.get('neo_consumer_%s' % member.pk, None) wrapper = ConsumerWrapper() if old_member is not None: # it should never be None for k in NEO_ATTR: # check where cached version and current version of member differ current = getattr(member, k, None) old = old_member.get(k, None) if current != old: # update attribute on Neo if old is None: getattr(wrapper, "set_%s" % k)(current, mod_flag=modify_flag['INSERT']) elif current is None: getattr(wrapper, "set_%s" % k)(old, mod_flag=modify_flag['DELETE']) else: getattr(wrapper, "set_%s" % k)(current, mod_flag=modify_flag['UPDATE']) # check if address needs to change has_address = False had_address = False address_changed = False for k in ADDRESS_FIELDS: current = getattr(member, k, None) old = old_member.get(k, None) if current: has_address = True if old: had_address = True if current != old: address_changed = True # update address accordingly if address_changed: if not has_address: wrapper.set_address(old_member.address, old_member.city, old_member.province, old_member.zipcode, old_member.country, modify_flag['DELETE']) elif not had_address: wrapper.set_address(member.address, member.city, member.province, member.zipcode, member.country) else: wrapper.set_address(member.address, member.city, member.province, member.zipcode, member.country, mod_flag=modify_flag['UPDATE']) if not wrapper.is_empty: if not wrapper.profile_is_empty: wrapper.set_ids_for_profile(api.get_consumer_profile(consumer_id)) api.update_consumer(consumer_id, wrapper.consumer) # check if password needs to be changed raw_password = getattr(member, 'raw_password', None) if raw_password: old_password = getattr(member, 'old_password', None) if old_password: api.change_password(member.username, raw_password, old_password=old_password) else: api.change_password(member.username, raw_password, token=member.forgot_password_token) return consumer_id