diff --git a/myproject/myapp/models.py b/myproject/myapp/models.py index 71a836239075aa6e6e4ecb700e9c42c95c022d91..3727dd34be0fbcf4b2eed30fd41cfd1693c50a81 100644 --- a/myproject/myapp/models.py +++ b/myproject/myapp/models.py @@ -1,3 +1,49 @@ from django.db import models +# Usertypes +# --------- +# 0 - Basic User +# 1 - Admin +# 2 - ML Engineer +# 3 - Accountant + # Create your models here. +class User(models.Model): + """ + * User model + """ + username = models.CharField(max_length=150) + password = models.CharField(max_length=16) + email = models.EmailField(max_length=200) + usertype = models.ForeignKey("UserType") + +class UserType(models.Model): + """ + * Usertype model + """ + usertype = models.CharField(max_length=15) + +class Logs(models.Model): + """ + * Logs model + """ + user_id = models.ForeignKey("User") + content = models.CharField(max_length=2000) + date = models.DateTimeField() + +class Feedback(models.Model): + """ + * Feedback Model + """ + user_id = models.ForeignKey("User") + content = models.CharField(max_length=2000) + date = models.DateTimeField() + +class Bills(models.Model): + """ + * Bill/receipts Model + """ + user_id = models.ForeignKey("User") + date = models.DateTimeField() + paid = models.BooleanField(default=False) + diff --git a/myproject/myapp/templates/login.html b/myproject/myapp/templates/login.html index 7ed9e305b29f6f532d72dfbc67ff8ad34d3617a8..c1836bb3d5ab5c73e449837021803958ff2a727e 100644 --- a/myproject/myapp/templates/login.html +++ b/myproject/myapp/templates/login.html @@ -1,3 +1,38 @@ {% extends "_base.html"%}{% block content %} -<h1 class="text-3xl text-red-500">Login page</h1> +<section class="my-10"> + <div class="flex flex-col items-center justify-center px-6 py-8 mx-auto md:h-screen lg:py-0"> + <div class="w-full bg-white rounded-lg shadow dark:border md:mt-0 sm:max-w-md xl:p-0 dark:bg-gray-800 dark:border-gray-700"> + <div class="p-6 space-y-4 md:space-y-6 sm:p-8"> + <h1 class="text-xl font-bold leading-tight tracking-tight text-gray-900 md:text-2xl dark:text-white"> + Sign in to your account + </h1> + <form class="space-y-4 md:space-y-6" action="#"> + <div> + <label for="email" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Your email</label> + <input type="email" name="email" id="email" class="bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500" placeholder="name@company.com" required=""> + </div> + <div> + <label for="password" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Password</label> + <input type="password" name="password" id="password" placeholder="••••••••" class="bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500" required=""> + </div> + <div class="flex items-center justify-between"> + <div class="flex items-start"> + <div class="flex items-center h-5"> + <input id="remember" aria-describedby="remember" type="checkbox" class="w-4 h-4 border border-gray-300 rounded bg-gray-50 focus:ring-3 focus:ring-primary-300 dark:bg-gray-700 dark:border-gray-600 dark:focus:ring-primary-600 dark:ring-offset-gray-800" required=""> + </div> + <div class="ml-3 text-sm"> + <label for="remember" class="text-gray-500 dark:text-gray-300">Remember me</label> + </div> + </div> + <a href="#" class="text-sm font-medium text-primary-600 hover:underline dark:text-primary-500">Forgot password?</a> + </div> + <button type="submit" class="w-full text-white bg-primary-600 hover:bg-primary-700 focus:ring-4 focus:outline-none focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800">Sign in</button> + <p class="text-sm font-light text-gray-500 dark:text-gray-400"> + Don’t have an account yet? <a href="#" class="font-medium text-primary-600 hover:underline dark:text-primary-500">Sign up</a> + </p> + </form> + </div> + </div> + </div> + </section> {% endblock content%} \ No newline at end of file diff --git a/myproject/myapp/templates/register.html b/myproject/myapp/templates/register.html index bed1a67ad32de2aa33b0d4b8b387bd0f1ffe3d90..baed31f98e5325c326a4449cd4838af0a34e44ca 100644 --- a/myproject/myapp/templates/register.html +++ b/myproject/myapp/templates/register.html @@ -1,3 +1,39 @@ {% extends "_base.html"%}{% block content %} -<h1 class="text-3xl text-red-500">Register page</h1> +<section class="my-10"> + <div class="flex flex-col items-center justify-center px-6 py-8 mx-auto md:h-screen lg:py-0"> + <div class="w-full bg-white rounded-lg shadow dark:border md:mt-0 sm:max-w-md xl:p-0 dark:bg-gray-800 dark:border-gray-700"> + <div class="p-6 space-y-4 md:space-y-6 sm:p-8"> + <h1 class="text-xl font-bold leading-tight tracking-tight text-gray-900 md:text-2xl dark:text-white"> + Create an account + </h1> + <form class="space-y-4 md:space-y-6" action="#"> + <div> + <label for="email" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Your email</label> + <input type="email" name="email" id="email" class="bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500" placeholder="name@company.com" required=""> + </div> + <div> + <label for="password" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Password</label> + <input type="password" name="password" id="password" placeholder="••••••••" class="bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500" required=""> + </div> + <div> + <label for="confirm-password" class="block mb-2 text-sm font-medium text-gray-900 dark:text-white">Confirm password</label> + <input type="confirm-password" name="confirm-password" id="confirm-password" placeholder="••••••••" class="bg-gray-50 border border-gray-300 text-gray-900 sm:text-sm rounded-lg focus:ring-primary-600 focus:border-primary-600 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:ring-blue-500 dark:focus:border-blue-500" required=""> + </div> + <div class="flex items-start"> + <div class="flex items-center h-5"> + <input id="terms" aria-describedby="terms" type="checkbox" class="w-4 h-4 border border-gray-300 rounded bg-gray-50 focus:ring-3 focus:ring-primary-300 dark:bg-gray-700 dark:border-gray-600 dark:focus:ring-primary-600 dark:ring-offset-gray-800" required=""> + </div> + <div class="ml-3 text-sm"> + <label for="terms" class="font-light text-gray-500 dark:text-gray-300">I accept the <a class="font-medium text-primary-600 hover:underline dark:text-primary-500" href="#">Terms and Conditions</a></label> + </div> + </div> + <button type="submit" class="w-full text-white bg-primary-600 hover:bg-primary-700 focus:ring-4 focus:outline-none focus:ring-primary-300 font-medium rounded-lg text-sm px-5 py-2.5 text-center dark:bg-primary-600 dark:hover:bg-primary-700 dark:focus:ring-primary-800">Create an account</button> + <p class="text-sm font-light text-gray-500 dark:text-gray-400"> + Already have an account? <a href="#" class="font-medium text-primary-600 hover:underline dark:text-primary-500">Login here</a> + </p> + </form> + </div> + </div> + </div> + </section> {% endblock content%} \ No newline at end of file