from django.core.management.base import BaseCommand

from judge.models import Problem, ProblemGroup, ProblemType


class Command(BaseCommand):
    help = 'create an empty problem'

    def add_arguments(self, parser):
        parser.add_argument('code', help='problem code')
        parser.add_argument('name', help='problem title')
        parser.add_argument('body', help='problem description')
        parser.add_argument('type', help='problem type')
        parser.add_argument('group', help='problem group')

    def handle(self, *args, **options):
        problem = Problem()
        problem.code = options['code']
        problem.name = options['name']
        problem.description = options['body']
        problem.group = ProblemGroup.objects.get(name=options['group'])
        problem.types = [ProblemType.objects.get(name=options['type'])]
        problem.save()