diff --git a/bookwyrm/management/commands/remove_2fa.py b/bookwyrm/management/commands/remove_2fa.py new file mode 100644 index 000000000..fa648f79c --- /dev/null +++ b/bookwyrm/management/commands/remove_2fa.py @@ -0,0 +1,18 @@ +"""deactivate two factor auth""" + +from django.core.management.base import BaseCommand, CommandError +from bookwyrm import models + +class Command(BaseCommand): + """command-line options""" + help = "Remove Two Factor Authorisation from user" + + def add_arguments(self, parser): + parser.add_argument("username") + + def handle(self, *args, **options): + name = (options["username"]) + user = models.User.objects.get(localname=name) + user.two_factor_auth = False + user.save(broadcast=False, update_fields=["two_factor_auth"]) + self.stdout.write(self.style.SUCCESS("Two Factor Authorisation was removed from user")) \ No newline at end of file diff --git a/bw-dev b/bw-dev index a8f638803..7033f16b3 100755 --- a/bw-dev +++ b/bw-dev @@ -63,6 +63,8 @@ function awscommand { amazon/aws-cli $2 } + + CMD=$1 if [ -n "$CMD" ]; then shift @@ -255,6 +257,9 @@ case "$CMD" in runweb) runweb "$@" ;; + remove_2fa) + runweb python manage.py remove_2fa "$@" + ;; *) set +x # No need to echo echo echo "Unrecognised command. Try:" @@ -290,5 +295,6 @@ case "$CMD" in echo " sync_media_to_s3" echo " set_cors_to_s3 [cors file]" echo " runweb [command]" + echo " remove_2fa" ;; esac