from django.core.management import BaseCommand

from books.factories import ModuleFactory
from books.models import Module
from portfolio.factories import ProjectFactory
from portfolio.models import ProjectEntry
from surveys.models import Survey
from users.models import User

survey_data = {
    "completeText": "Abschliessen",
    "pages": [
        {
            "elements": [
                {
                    "description": "Max hat Ende Monat noch Fr. 20.\u2013 \u00fcbrig, die er gespart hat, um mit seinem besten Kumpel, der ein halbes Jahr im Ausland verweilte, Billard spielen zu gehen. Doch dann bittet ihn seine j\u00fcngere Schwester um Geld. Sie hat ein unverhofftes Date mit einem jungen Mann, in den sie sich bereits vor Monaten unsterblich verliebt hat. Leider ist ihr Kontostand aber bereits auf Null.",
                    "elements": [
                        {
                            "name": "A: Max gibt ihr das Geld und muss das Billardspiel absagen.",
                            "placeHolder": "Passende Tugenden erfassen...",
                            "type": "text",
                            "correctAnswer": "Triss"
                        },
                        {
                            "name": "question2",
                            "placeHolder": "Passende Tugenden erfassen...",
                            "title": "B: Max gibt ihr das Geld nicht und geht Billard spielen.",
                            "type": "text",
                            "correctAnswer": "Jaskier"
                        }
                    ],
                    "name": "Fall 1",
                    "title": "Fall 1",
                    "type": "panel"
                }
            ],
            "name": "Seite 1"
        },
        {
            "elements": [
                {
                    "description": "Auf der Autobahn brennt ein Lastwagen, der jederzeit explodieren kann. Silvio, dem Fahrer, bleiben nur noch wenige Minuten: Entweder bringt er seinen ohnm\u00e4chtig gewordenen Mitfahrer in Sicherheit oder er sperrt die Strasse ab, die nach wie vor dicht befahren wird.",
                    "elements": [
                        {
                            "name": "question1",
                            "placeHolder": "Passende Tugenden erfassen...",
                            "title": "A: Silvio bringt seinen Mitfahrer in Sicherheit.",
                            "type": "text",
                            "useDisplayValuesInTitle": False,
                            "correctAnswer": "Yennefer"
                        },
                        {
                            "name": "question3",
                            "placeHolder": "Passende Tugenden erfassen...",
                            "title": "B: Silvio sperrt die Strasse ab.",
                            "type": "text",
                            "correctAnswer": "Geralt"
                        }
                    ],
                    "name": "panel1",
                    "title": "Fall 2",
                    "type": "panel"
                }
            ],
            "name": "Seite 2"
        }
    ],
    "showQuestionNumbers": "off"
}


class Command(BaseCommand):
    def handle(self, *args, **options):
        self.stdout.write("Clearing surveys")
        Survey.objects.all().delete()
        self.stdout.write("Creating survey")

        module = Module.objects.get(slug='lohn-und-budget')

        Survey.objects.create(
            title='Test',
            data=survey_data,
            module=module,
            pk=1
        )
