from django.db import models
from django.contrib.auth.models import User
from django.contrib.sessions.models import Session


class University(models.Model):
    unit_name = models.TextField()
    url = models.TextField(default="/media/CIT/.pdf")
    type = models.TextField(default="NOTES")
    school = models.TextField(default="CIT")


    class Meta:
        verbose_name = 'University'
        verbose_name_plural = 'Universities'

    def __str__(self):
        return self.unit_name


class KASNEB(models.Model):
    unit_name = models.TextField()
    url = models.TextField(default="/media/kasneb/cpanotes/.pdf")
    type = models.TextField(default="NOTES")
    school = models.TextField(default="CPA")


    class Meta:
        verbose_name = 'KASNEB'
        verbose_name_plural = 'KASNEB'

    def __str__(self):
        return self.unit_name


class KNEC_DIPLOMA(models.Model):
    unit_name = models.TextField()
    url = models.TextField(default="/media/knec/diploma/.pdf")
    type = models.TextField(default="NOTES")
    school = models.TextField(default="CIT")

    class Meta:
        verbose_name = 'KNEC_DIPLOMA'
        verbose_name_plural = 'KNEC_DIPLOMA'

    def __str__(self):
        return self.unit_name


class KNEC_PAPERS(models.Model):
    unit_name = models.TextField()
    url = models.TextField(default="/media/knec/pastpapers/.pdf")
    type = models.TextField(default="PAST PAPERS")
    school = models.TextField(default="KCPE")
    year = models.TextField(default="2020")

    class Meta:
        verbose_name = 'KNEC_PAPERS'
        verbose_name_plural = 'KNEC_PAPERS'


class KASNEB_PAPERS(models.Model):
    unit_name = models.TextField()
    url = models.TextField(default="/media/kasneb/cpapastpapers/.pdf")
    type = models.TextField(default="PAST PAPERS")
    school = models.TextField(default="CPA")
    year = models.TextField(default="2020")



    class Meta:
        verbose_name = 'KASNEB_PAPERS'
        verbose_name_plural = 'KASNEB_PAPERS'

    def __str__(self):
        return self.unit_name


class KCPE(models.Model):
    unit_name = models.TextField()
    url = models.TextField(default="/media/knec/kcpe/papers/.pdf")
    type = models.TextField(default="PAST PAPERS")
    year = models.TextField(default="2000")



    class Meta:
        verbose_name = 'KCPE'
        verbose_name_plural = 'KCPE'

    def __str__(self):
        return self.unit_name
        

class KCSE(models.Model):
    unit_name = models.TextField()
    url = models.TextField(default="/media/knec/kcse/papers/.pdf")
    type = models.TextField(default="PAST PAPERS")
    year = models.TextField(default="2016")



    class Meta:
        verbose_name = 'KCSE'
        verbose_name_plural = 'KCSE'

    def __str__(self):
        return self.unit_name


class Lower(models.Model):
    exam_name = models.TextField()
    literacy = models.TextField(default="/media/exams/lower/.pdf")
    kiswahili = models.TextField(default="/media/exams/lower/.pdf")
    english = models.TextField(default="/media/exams/lower/.pdf")
    mathematical = models.TextField(default="/media/exams/lower/.pdf")
    environmental = models.TextField(default="/media/exams/lower/.pdf")
    hygiene = models.TextField(default="/media/exams/lower/.pdf")
    religious = models.TextField(default="/media/exams/lower/.pdf")
    movement = models.TextField(default="/media/exams/lower/.pdf")

    composition = models.TextField(default="/media/exams/lower/.pdf")
    insha = models.TextField(default="/media/exams/lower/.pdf")
    marking_scheme = models.TextField(default="/media/exams/lower/.pdf")
    science = models.TextField(default="/media/exams/lower/.pdf")
    social_studies = models.TextField(default="/media/exams/lower/.pdf")

    grade = models.TextField(default="Grade I")


    class Meta:
        verbose_name = 'Lower'
        verbose_name_plural = 'Lower'

    def __str__(self):
        return self.exam_name

class Account(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    email = models.CharField(max_length=250)
    access = models.CharField(max_length=250, default=0)

    class Meta:
        verbose_name = 'Account'
        verbose_name_plural = 'Accounts'

    def __str__(self):
        return self.email


class Payment(models.Model):
    amount = models.DecimalField(max_digits=10, decimal_places=2)
    transaction_id = models.TextField()
    phone_number = models.TextField()
    transaction_date = models.DateField(null=True)

    class Meta:
        verbose_name = 'Payment'
        verbose_name_plural = 'Payments'

    def __str__(self):
        return self.phone_number
