mirror of https://github.com/etesync/server
parent
8803d749db
commit
b72d2121bd
@ -1,30 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from django.contrib.auth.models import Group, Permission
|
|
||||||
from django.db.utils import IntegrityError
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def add_arguments(self, parser):
|
|
||||||
parser.add_argument( 'name'
|
|
||||||
, type=str
|
|
||||||
, help="New group's name." )
|
|
||||||
parser.add_argument( '--permissions'
|
|
||||||
, type=str
|
|
||||||
, nargs='*'
|
|
||||||
, default=[]
|
|
||||||
, help="New group's permissions." )
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
try:
|
|
||||||
for index,permission in enumerate(options["permissions"]):
|
|
||||||
options["permissions"][index] = Permission.objects.get(name=permission)
|
|
||||||
|
|
||||||
group = Group.objects.create(name=options["name"])
|
|
||||||
group.permissions.set(options["permissions"])
|
|
||||||
group.save()
|
|
||||||
except (IntegrityError,Permission.DoesNotExist) as exception:
|
|
||||||
self.stdout.write(self.style.ERROR(f'Unable to create group "{options["name"]}": ' + str(exception)))
|
|
||||||
exit(1)
|
|
||||||
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'Group "{options["name"]}" has been created.'))
|
|
||||||
exit(0)
|
|
@ -1,16 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from django.contrib.auth.models import Group
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def add_arguments(self, parser):
|
|
||||||
parser.add_argument( 'name'
|
|
||||||
, type=str
|
|
||||||
, help="Name of the group to be deleted." )
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
try:
|
|
||||||
Group.objects.get(name = options["name"]).delete()
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'Grop "{options["name"]}" has been deleted.'))
|
|
||||||
except Group.DoesNotExist as exception:
|
|
||||||
self.stdout.write(self.style.ERROR(f'Unable to delete group "{options["name"]}": ' + str(exception)))
|
|
@ -1,48 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from django.contrib.auth.models import Group, Permission
|
|
||||||
from django.db.utils import IntegrityError
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def add_arguments(self, parser):
|
|
||||||
parser.add_argument( 'name'
|
|
||||||
, type=str
|
|
||||||
, help="Group's name." )
|
|
||||||
parser.add_argument( '-n'
|
|
||||||
, '--new_name'
|
|
||||||
, '--new-name'
|
|
||||||
, type=str
|
|
||||||
, default=None
|
|
||||||
, help="Group's new name." )
|
|
||||||
parser.add_argument( '-m'
|
|
||||||
, '--mode'
|
|
||||||
, type=str
|
|
||||||
, choices=['set', 'add', 'remove']
|
|
||||||
, default='set'
|
|
||||||
, help="Set modification mode. Affects --permissions." )
|
|
||||||
parser.add_argument( '--permissions'
|
|
||||||
, type=str
|
|
||||||
, nargs='*'
|
|
||||||
, default=None
|
|
||||||
, help="Group's new permissions." )
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
try:
|
|
||||||
if options["permissions"] != None:
|
|
||||||
for index,permission in enumerate(options["permissions"]):
|
|
||||||
options["permissions"][index] = Permission.objects.get(name=permission)
|
|
||||||
|
|
||||||
group = Group.objects.get(name=options["name"])
|
|
||||||
|
|
||||||
if options["new_name"] != None:
|
|
||||||
group.name = options["new_name"]
|
|
||||||
if options["permissions"] != None:
|
|
||||||
if options["mode"] == "set" : group.permissions.set ( options["permissions"])
|
|
||||||
if options["mode"] == "add" : group.permissions.add (*options["permissions"])
|
|
||||||
if options["mode"] == "remove" : group.permissions.remove(*options["permissions"])
|
|
||||||
|
|
||||||
group.save()
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'Group "{options["name"]}" has been modified.'))
|
|
||||||
|
|
||||||
except (User.DoesNotExist, ValueError) as exception:
|
|
||||||
self.stdout.write(self.style.ERROR(f'Unable to modify group "{options["name"]}": ' + str(exception)))
|
|
@ -1,27 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from django.contrib.auth.models import Group
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def add_arguments(self, parser):
|
|
||||||
parser.add_argument( '-y'
|
|
||||||
, '--yes'
|
|
||||||
, action='store_true'
|
|
||||||
, default=False
|
|
||||||
, help="Allow deletion of all groups!" )
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
if options["yes"] != True:
|
|
||||||
print('Do you really want to delete all groups? [y/N]: ', end='')
|
|
||||||
if input() not in ('y', 'Y', 'yes', 'YES', 'Yes'):
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'No groups have been deleted.'))
|
|
||||||
exit(0)
|
|
||||||
|
|
||||||
try:
|
|
||||||
for group in Group.objects.all():
|
|
||||||
group.delete()
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'All groups have been deleted.'))
|
|
||||||
exit(0)
|
|
||||||
except Group.DoesNotExist as exception:
|
|
||||||
self.stdout.write(self.style.ERROR(f'Unable to delete all groups: ' + str(exception)))
|
|
||||||
exit(1)
|
|
@ -1,8 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from django.contrib.auth.models import Group
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
for group in Group.objects.all():
|
|
||||||
print(group.name)
|
|
@ -1,8 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from django.contrib.auth.models import Permission
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
for permission in Permission.objects.all():
|
|
||||||
print(permission.name)
|
|
@ -1,16 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from myauth.models import User
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def add_arguments(self, parser):
|
|
||||||
parser.add_argument( 'username'
|
|
||||||
, type=str
|
|
||||||
, help="Login username of the user to be deleted." )
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
try:
|
|
||||||
User.objects.get(username = options["username"]).delete()
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'User "{options["username"]}" has been deleted.'))
|
|
||||||
except User.DoesNotExist as exception:
|
|
||||||
self.stdout.write(self.style.ERROR(f'Unable to delete user "{options["username"]}": ' + str(exception)))
|
|
@ -1,30 +0,0 @@
|
|||||||
from django.core.management.base import BaseCommand
|
|
||||||
from myauth.models import User
|
|
||||||
|
|
||||||
class Command(BaseCommand):
|
|
||||||
|
|
||||||
def add_arguments(self, parser):
|
|
||||||
parser.add_argument( 'usernames'
|
|
||||||
, default=False
|
|
||||||
, type=str
|
|
||||||
, nargs='*'
|
|
||||||
, default=[]
|
|
||||||
, help="Delete ALL users!" )
|
|
||||||
parser.add_argument( '-a'
|
|
||||||
, '--all'
|
|
||||||
, action='store_true'
|
|
||||||
, default=False
|
|
||||||
, help="Delete ALL users!" )
|
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
|
||||||
try:
|
|
||||||
if options["all"]:
|
|
||||||
for user in User.objects.all():
|
|
||||||
user.delete()
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'All users have been deleted.'))
|
|
||||||
else:
|
|
||||||
for username in options["usernames"]:
|
|
||||||
User.objects.get(username=username).delete()
|
|
||||||
self.stdout.write(self.style.SUCCESS(f'Users have been deleted.'))
|
|
||||||
except User.DoesNotExist as exception:
|
|
||||||
self.stdout.write(self.style.ERROR(f'Unable to delete users: ' + str(exception)))
|
|
Loading…
Reference in new issue