def remove_2_factor(request, guid): user = User.load(guid) try: user.delete_addon('twofactor') except AttributeError: page_not_found(request) return redirect(reverse_user(guid))
def delete(self, request, *args, **kwargs): try: user = self.get_object() flag = None message = None if user.date_disabled is None: user.disable_account() flag = USER_REMOVED message = 'User account {} disabled'.format(user.pk) else: user.date_disabled = None subscribe_on_confirm(user) flag = USER_RESTORED message = 'User account {} reenabled'.format(user.pk) user.save() if flag is not None: update_admin_log( user_id=self.request.user.id, object_id=user.pk, object_repr='User', message=message, action_flag=flag ) except AttributeError: return page_not_found( request, AttributeError( '{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid') ) ) ) return redirect(reverse_user(self.kwargs.get('guid')))
def form_valid(self, form): user = self.get_object() guid_to_be_merged = form.cleaned_data['user_guid_to_be_merged'] user_to_be_merged = OSFUser.objects.get(guids___id=guid_to_be_merged, guids___id__isnull=False) user.merge_user(user_to_be_merged) return redirect(reverse_user(user._id))
def form_valid(self, form): user = self.get_object() guid_to_be_merged = form.cleaned_data['user_guid_to_be_merged'] user_to_be_merged = OSFUser.objects.get(guids___id=guid_to_be_merged) user.merge_user(user_to_be_merged) return redirect(reverse_user(user._id))
def delete(self, request, *args, **kwargs): user = self.get_object() search.search.update_user(user, async_update=False) update_admin_log(user_id=self.request.user.id, object_id=user._id, object_repr='User', message='User Reindexed (Elastic): {}'.format( user._id), action_flag=REINDEX_ELASTIC) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): user = self.get_object() search.search.update_user(user, async_update=False) update_admin_log( user_id=self.request.user.id, object_id=user._id, object_repr='User', message='User Reindexed (Elastic): {}'.format(user._id), action_flag=REINDEX_ELASTIC ) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): user = self.get_object() try: user.delete_addon('twofactor') except AttributeError: raise Http404('{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid'))) update_admin_log(user_id=self.request.user.id, object_id=user.pk, object_repr='User', message='Removed 2 factor auth for user {}'.format( user.pk), action_flag=USER_2_FACTOR) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): try: user = self.get_object() if user.date_disabled is None or kwargs.get('is_spam'): user.disable_account() user.is_registered = False if 'spam_flagged' in user.system_tags or 'ham_confirmed' in user.system_tags: if 'spam_flagged' in user.system_tags: t = Tag.all_tags.get(name='spam_flagged', system=True) # TODO: removing system tags this way does not currently work -- https://openscience.atlassian.net/browse/OSF-7760 user.tags.remove(t) if 'ham_confirmed' in user.system_tags: t = Tag.all_tags.get(name='ham_confirmed', system=True) user.tags.remove(t) if kwargs.get('is_spam') and 'spam_confirmed' not in user.system_tags: user.add_system_tag('spam_confirmed') flag = USER_REMOVED message = 'User account {} disabled'.format(user.pk) else: user.date_disabled = None subscribe_on_confirm(user) user.is_registered = True if 'spam_flagged' in user.system_tags or 'spam_confirmed' in user.system_tags: if 'spam_flagged' in user.system_tags: t = Tag.all_tags.get(name='spam_flagged', system=True) user.tags.remove(t) if 'spam_confirmed' in user.system_tags: t = Tag.all_tags.get(name='spam_confirmed', system=True) user.tags.remove(t) if 'ham_confirmed' not in user.system_tags: user.add_system_tag('ham_confirmed') flag = USER_RESTORED message = 'User account {} reenabled'.format(user.pk) user.save() except AttributeError: raise Http404( '{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid') )) update_admin_log( user_id=self.request.user.id, object_id=user.pk, object_repr='User', message=message, action_flag=flag ) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): try: user = self.get_object() user.gdpr_delete() user.save() message = 'User {} was successfully GDPR deleted'.format(user._id) messages.success(request, message) update_admin_log(user_id=self.request.user.id, object_id=user.pk, object_repr='User', message=message, action_flag=USER_GDPR_DELETED) except UserStateError as e: messages.warning(request, str(e)) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): try: user = self.get_object() if user.date_disabled is None or kwargs.get('is_spam'): user.disable_account() user.is_registered = False if 'spam_flagged' in user.system_tags or 'ham_confirmed' in user.system_tags: if 'spam_flagged' in user.system_tags: t = Tag.all_tags.get(name='spam_flagged', system=True) # TODO: removing system tags this way does not currently work -- https://openscience.atlassian.net/browse/OSF-7760 user.tags.remove(t) if 'ham_confirmed' in user.system_tags: t = Tag.all_tags.get(name='ham_confirmed', system=True) user.tags.remove(t) if kwargs.get('is_spam' ) and 'spam_confirmed' not in user.system_tags: user.add_system_tag('spam_confirmed') flag = USER_REMOVED message = 'User account {} disabled'.format(user.pk) else: user.date_disabled = None subscribe_on_confirm(user) user.is_registered = True if 'spam_flagged' in user.system_tags or 'spam_confirmed' in user.system_tags: if 'spam_flagged' in user.system_tags: t = Tag.all_tags.get(name='spam_flagged', system=True) user.tags.remove(t) if 'spam_confirmed' in user.system_tags: t = Tag.all_tags.get(name='spam_confirmed', system=True) user.tags.remove(t) if 'ham_confirmed' not in user.system_tags: user.add_system_tag('ham_confirmed') flag = USER_RESTORED message = 'User account {} reenabled'.format(user.pk) user.save() except AttributeError: raise Http404('{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid'))) update_admin_log(user_id=self.request.user.id, object_id=user.pk, object_repr='User', message=message, action_flag=flag) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): user = self.get_object() try: user.delete_addon('twofactor') except AttributeError: raise Http404( '{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid') )) update_admin_log( user_id=self.request.user.id, object_id=user.pk, object_repr='User', message='Removed 2 factor auth for user {}'.format(user.pk), action_flag=USER_2_FACTOR ) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): try: user = self.get_object() if user.date_disabled is None or kwargs.get('is_spam'): user.disable_account() user.is_registered = False if 'spam_flagged' in user.system_tags or 'ham_confirmed' in user.system_tags: if 'spam_flagged' in user.system_tags: user.system_tags.remove('spam_flagged') if 'ham_confirmed' in user.system_tags: user.system_tags.remove('ham_confirmed') if 'spam_confirmed' not in user.system_tags: user.system_tags.append('spam_confirmed') flag = USER_REMOVED message = 'User account {} disabled'.format(user.pk) else: user.date_disabled = None subscribe_on_confirm(user) user.is_registered = True if 'spam_flagged' in user.system_tags or 'spam_confirmed' in user.system_tags: if 'spam_flagged' in user.system_tags: user.system_tags.remove('spam_flagged') if 'spam_confirmed' in user.system_tags: user.system_tags.remove('spam_confirmed') if 'ham_confirmed' not in user.system_tags: user.system_tags.append('ham_confirmed') flag = USER_RESTORED message = 'User account {} reenabled'.format(user.pk) user.save() except AttributeError: raise Http404( '{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid') )) update_admin_log( user_id=self.request.user.id, object_id=user.pk, object_repr='User', message=message, action_flag=flag ) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): try: user = self.get_object() if user.date_disabled is None or kwargs.get('is_spam'): user.disable_account() user.is_registered = False if 'spam_flagged' in user.system_tags: user.tags.through.objects.filter( tag__name='spam_flagged').delete() if 'ham_confirmed' in user.system_tags: user.tags.through.objects.filter( tag__name='ham_confirmed').delete() if kwargs.get('is_spam' ) and 'spam_confirmed' not in user.system_tags: user.add_system_tag('spam_confirmed') flag = USER_REMOVED message = 'User account {} disabled'.format(user.pk) else: user.requested_deactivation = False user.date_disabled = None subscribe_on_confirm(user) user.is_registered = True user.tags.through.objects.filter( tag__name__in=['spam_flagged', 'spam_confirmed'], tag__system=True).delete() if 'ham_confirmed' not in user.system_tags: user.add_system_tag('ham_confirmed') flag = USER_RESTORED message = 'User account {} reenabled'.format(user.pk) user.save() except AttributeError: raise Http404('{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid'))) update_admin_log(user_id=self.request.user.id, object_id=user.pk, object_repr='User', message=message, action_flag=flag) return redirect(reverse_user(self.kwargs.get('guid')))
def delete(self, request, *args, **kwargs): try: user = self.get_object() if user.date_disabled is None: user.disable_account() user.is_registered = False flag = USER_REMOVED message = 'User account {} disabled'.format(user.pk) else: user.date_disabled = None subscribe_on_confirm(user) user.is_registered = True flag = USER_RESTORED message = 'User account {} reenabled'.format(user.pk) user.save() except AttributeError: raise Http404('{} with id "{}" not found.'.format( self.context_object_name.title(), self.kwargs.get('guid'))) update_admin_log(user_id=self.request.user.id, object_id=user.pk, object_repr='User', message=message, action_flag=flag) return redirect(reverse_user(self.kwargs.get('guid')))
def success_url(self): return reverse_user(self.kwargs.get('guid'))
def disable_user(request, guid): user = User.load(guid) user.disable_account() user.save() return redirect(reverse_user(guid))
def reactivate_user(request, guid): user = User.load(guid) user.date_disabled = None subscribe_on_confirm(user) user.save() return redirect(reverse_user(guid))
def success_url(self): return reverse_user(self.guid)