from django.core.management.base import BaseCommand
from django.contrib.auth.models import User
from tasks.models import Profile

class Command(BaseCommand):
    help='Create or promote the owner account'
    def add_arguments(self, parser):
        parser.add_argument('username')
        parser.add_argument('password')
        parser.add_argument('--name', default='المالك')
    def handle(self,*args,**opts):
        user, _ = User.objects.get_or_create(username=opts['username'])
        user.first_name = opts['name']
        user.is_staff = True
        user.is_superuser = True
        user.set_password(opts['password'])
        user.save()
        Profile.objects.update_or_create(user=user, defaults={'role':'owner'})
        self.stdout.write(self.style.SUCCESS('Owner account is ready.'))
