diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/management/commands/ishtar_update_permissions.py | 10 | 
1 files changed, 7 insertions, 3 deletions
diff --git a/ishtar_common/management/commands/ishtar_update_permissions.py b/ishtar_common/management/commands/ishtar_update_permissions.py index d8d8944bf..4907beba6 100644 --- a/ishtar_common/management/commands/ishtar_update_permissions.py +++ b/ishtar_common/management/commands/ishtar_update_permissions.py @@ -12,14 +12,14 @@ from ishtar_common import models  from ishtar_common.utils import BColors -def update_permissions(quiet=False): +def update_permissions(quiet=False, force=False):      q = models.IshtarUser.objects.all()      nb = q.count()      updated = 0      for idx, user in enumerate(q.all()):          if not quiet:              sys.stdout.write(f"\r[{percent(idx, nb)}] {idx + 1}/{nb}") -        if user.need_permission_refresh(): +        if force or user.need_permission_refresh():              user.generate_permission()              updated += 1      if not quiet: @@ -55,6 +55,10 @@ class Command(BaseCommand):          parser.add_argument(              "--quiet", dest="quiet", action="store_true", help="Quiet output"          ) +        parser.add_argument( +            "--force", dest="force", action="store_true", +            help="Force regeneration for all accounts" +        )      def handle(self, *args, **options):          settings.USE_BACKGROUND_TASK = False @@ -62,5 +66,5 @@ class Command(BaseCommand):          if not quiet:              msg = BColors.format("HEADER", f"[{get_time()}] Updating permissions\n")              sys.stdout.write(msg) -        update_permissions(quiet) +        update_permissions(quiet, force=options["force"])          sys.exit(1)  | 
