From 159ba340126eba73fe2cc9f6f3c446db5852c9b4 Mon Sep 17 00:00:00 2001
From: HanseGucker <hansegucker@gmail.com>
Date: Tue, 10 Apr 2018 12:31:22 +0200
Subject: [PATCH] A working timetable

---
 .gitignore                                    |   2 +
 .idea/misc.xml                                |   2 +-
 .idea/school-apps.iml                         |   2 +-
 .idea/workspace.xml                           | 416 ++++++++----------
 schoolapps/dashboard/urls.py                  |   3 +-
 schoolapps/dashboard/views.py                 |   5 +
 schoolapps/schoolapps/settings.py             |   4 +
 schoolapps/templates/partials/footer.html     |   4 +-
 schoolapps/templates/partials/impress.html    |  34 ++
 .../migrations/0002_auto_20180410_1100.py     |  25 ++
 schoolapps/timetable/models.py                |  32 +-
 schoolapps/timetable/parse.py                 | 120 +++--
 .../timetable/templates/timetable/plan.html   |  18 +-
 schoolapps/untisconnect/api.py                |   4 +
 14 files changed, 370 insertions(+), 301 deletions(-)
 create mode 100644 schoolapps/templates/partials/impress.html
 create mode 100644 schoolapps/timetable/migrations/0002_auto_20180410_1100.py

diff --git a/.gitignore b/.gitignore
index bee8a64b7..7370a390f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
 __pycache__
+env/
+*.pyc
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 5bbe586f1..946bc5033 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
-  <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.5.2 (/usr/bin/python3.5)" project-jdk-type="Python SDK" />
+  <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.5 (school-apps)" project-jdk-type="Python SDK" />
 </project>
\ No newline at end of file
diff --git a/.idea/school-apps.iml b/.idea/school-apps.iml
index b97b43627..7a659e6a1 100644
--- a/.idea/school-apps.iml
+++ b/.idea/school-apps.iml
@@ -13,7 +13,7 @@
   </component>
   <component name="NewModuleRootManager">
     <content url="file://$MODULE_DIR$" />
-    <orderEntry type="inheritedJdk" />
+    <orderEntry type="jdk" jdkName="Python 3.5 (school-apps)" jdkType="Python SDK" />
     <orderEntry type="sourceFolder" forTests="false" />
     <orderEntry type="library" name="jquery-3.2.1" level="application" />
     <orderEntry type="module" module-name="bwinf-36-2" />
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 7a80e84b7..3e1b8e47e 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -2,28 +2,19 @@
 <project version="4">
   <component name="ChangeListManager">
     <list default="true" id="3a000256-1023-4a19-a046-bde25cb853cc" name="Default" comment="">
-      <change beforePath="" afterPath="$PROJECT_DIR$/schoolapps/timetable/parse.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/__init__.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/admin.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/apps.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/migrations/__init__.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/models.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/templates/timetable/admin/all.html" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/templates/timetable/plan.html" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/tests.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/urls.py" />
-      <change beforePath="" afterPath="$PROJECT_DIR$/timetable-old/views.py" />
+      <change beforePath="" afterPath="$PROJECT_DIR$/schoolapps/templates/partials/impress.html" />
+      <change beforePath="$PROJECT_DIR$/.gitignore" afterPath="$PROJECT_DIR$/.gitignore" />
+      <change beforePath="$PROJECT_DIR$/.idea/misc.xml" afterPath="$PROJECT_DIR$/.idea/misc.xml" />
+      <change beforePath="$PROJECT_DIR$/.idea/school-apps.iml" afterPath="$PROJECT_DIR$/.idea/school-apps.iml" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
-      <change beforePath="$PROJECT_DIR$/schoolapps/static/common/style.css" afterPath="$PROJECT_DIR$/schoolapps/static/common/style.css" />
-      <change beforePath="$PROJECT_DIR$/schoolapps/templates/partials/header.html" afterPath="$PROJECT_DIR$/schoolapps/templates/partials/header.html" />
+      <change beforePath="$PROJECT_DIR$/schoolapps/dashboard/urls.py" afterPath="$PROJECT_DIR$/schoolapps/dashboard/urls.py" />
+      <change beforePath="$PROJECT_DIR$/schoolapps/dashboard/views.py" afterPath="$PROJECT_DIR$/schoolapps/dashboard/views.py" />
+      <change beforePath="$PROJECT_DIR$/schoolapps/schoolapps/settings.py" afterPath="$PROJECT_DIR$/schoolapps/schoolapps/settings.py" />
+      <change beforePath="$PROJECT_DIR$/schoolapps/templates/partials/footer.html" afterPath="$PROJECT_DIR$/schoolapps/templates/partials/footer.html" />
       <change beforePath="$PROJECT_DIR$/schoolapps/timetable/models.py" afterPath="$PROJECT_DIR$/schoolapps/timetable/models.py" />
-      <change beforePath="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/admin/teachers.html" afterPath="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/admin/all.html" />
-      <change beforePath="$PROJECT_DIR$/schoolapps/timetable/urls.py" afterPath="$PROJECT_DIR$/schoolapps/timetable/urls.py" />
-      <change beforePath="$PROJECT_DIR$/schoolapps/timetable/views.py" afterPath="$PROJECT_DIR$/schoolapps/timetable/views.py" />
+      <change beforePath="$PROJECT_DIR$/schoolapps/timetable/parse.py" afterPath="$PROJECT_DIR$/schoolapps/timetable/parse.py" />
+      <change beforePath="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html" afterPath="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html" />
       <change beforePath="$PROJECT_DIR$/schoolapps/untisconnect/api.py" afterPath="$PROJECT_DIR$/schoolapps/untisconnect/api.py" />
-      <change beforePath="$PROJECT_DIR$/schoolapps/untisconnect/models.py" afterPath="$PROJECT_DIR$/schoolapps/untisconnect/models.py" />
-      <change beforePath="$PROJECT_DIR$/schoolapps/untisconnect/views.py" afterPath="$PROJECT_DIR$/schoolapps/untisconnect/views.py" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="TRACKING_ENABLED" value="true" />
@@ -40,90 +31,85 @@
   </component>
   <component name="FileEditorManager">
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
-      <file leaf-file-name="models.py" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/models.py">
+      <file leaf-file-name="index.html" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/templates/dashboard/index.html">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="255">
-              <caret line="15" column="0" lean-forward="false" selection-start-line="15" selection-start-column="0" selection-end-line="15" selection-end-column="0" />
+            <state relative-caret-position="323">
+              <caret line="46" column="32" lean-forward="true" selection-start-line="35" selection-start-column="19" selection-end-line="46" selection-end-column="32" />
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="parse.py" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/parse.py">
+      <file leaf-file-name="views.py" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/views.py">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="680">
-              <caret line="214" column="41" lean-forward="true" selection-start-line="214" selection-start-column="41" selection-end-line="214" selection-end-column="41" />
-              <folding />
+            <state relative-caret-position="440">
+              <caret line="40" column="19" lean-forward="true" selection-start-line="40" selection-start-column="19" selection-end-line="40" selection-end-column="19" />
+              <folding>
+                <element signature="e#0#57#0" expanded="true" />
+              </folding>
             </state>
           </provider>
         </entry>
       </file>
       <file leaf-file-name="models.py" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/models.py">
+        <entry file="file://$PROJECT_DIR$/schoolapps/aub/models.py">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="17">
-              <caret line="822" column="12" lean-forward="false" selection-start-line="822" selection-start-column="6" selection-end-line="822" selection-end-column="12" />
+            <state relative-caret-position="387">
+              <caret line="56" column="27" lean-forward="true" selection-start-line="56" selection-start-column="27" selection-end-line="56" selection-end-column="27" />
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="api.py" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/api.py">
+      <file leaf-file-name="models.py" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/models.py">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="2839">
-              <caret line="167" column="18" lean-forward="false" selection-start-line="167" selection-start-column="18" selection-end-line="167" selection-end-column="18" />
+            <state relative-caret-position="84">
+              <caret line="5" column="28" lean-forward="true" selection-start-line="5" selection-start-column="28" selection-end-line="5" selection-end-column="28" />
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="views.py" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/views.py">
+      <file leaf-file-name="parse.py" pinned="false" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/parse.py">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="408">
-              <caret line="47" column="16" lean-forward="true" selection-start-line="47" selection-start-column="16" selection-end-line="47" selection-end-column="16" />
-              <folding>
-                <element signature="e#0#57#0" expanded="true" />
-              </folding>
+            <state relative-caret-position="134">
+              <caret line="220" column="0" lean-forward="true" selection-start-line="220" selection-start-column="0" selection-end-line="220" selection-end-column="0" />
+              <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="plan.html" pinned="false" current-in-tab="true">
-        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html">
+      <file leaf-file-name="settings.py" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/schoolapps/schoolapps/settings.py">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="221">
-              <caret line="83" column="81" lean-forward="true" selection-start-line="83" selection-start-column="81" selection-end-line="83" selection-end-column="81" />
+            <state relative-caret-position="287">
+              <caret line="147" column="19" lean-forward="true" selection-start-line="147" selection-start-column="19" selection-end-line="147" selection-end-column="19" />
               <folding />
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="header.html" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/templates/partials/header.html">
+      <file leaf-file-name="plan.html" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="110">
-              <caret line="56" column="30" lean-forward="true" selection-start-line="56" selection-start-column="30" selection-end-line="56" selection-end-column="30" />
-              <folding />
+            <state relative-caret-position="203">
+              <caret line="63" column="51" lean-forward="false" selection-start-line="63" selection-start-column="51" selection-end-line="63" selection-end-column="51" />
+              <folding>
+                <element signature="n#style#0;n#p#0;n#div#0;n#div#0;n#div#1;n#div#1;n#main#0;n#!!top" expanded="true" />
+              </folding>
             </state>
           </provider>
         </entry>
       </file>
-      <file leaf-file-name="logo.png" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/static/common/logo.png">
-          <provider selected="true" editor-type-id="images">
-            <state />
-          </provider>
-        </entry>
-      </file>
-      <file leaf-file-name="style.css" pinned="false" current-in-tab="false">
-        <entry file="file://$PROJECT_DIR$/schoolapps/static/common/style.css">
+      <file leaf-file-name="urls.py" pinned="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/schoolapps/timetable/urls.py">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="85">
-              <caret line="86" column="35" lean-forward="false" selection-start-line="86" selection-start-column="35" selection-end-line="86" selection-end-column="35" />
+            <state relative-caret-position="68">
+              <caret line="5" column="36" lean-forward="true" selection-start-line="5" selection-start-column="36" selection-end-line="5" selection-end-column="36" />
               <folding />
             </state>
           </provider>
@@ -132,8 +118,8 @@
       <file leaf-file-name="all.html" pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/schoolapps/timetable/templates/timetable/admin/all.html">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="459">
-              <caret line="27" column="48" lean-forward="false" selection-start-line="27" selection-start-column="48" selection-end-line="27" selection-end-column="48" />
+            <state relative-caret-position="17">
+              <caret line="27" column="48" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="62" selection-end-column="0" />
               <folding />
             </state>
           </provider>
@@ -174,15 +160,12 @@
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
-        <option value="$PROJECT_DIR$/schoolapps/templates/registration/password_reset_form.html" />
-        <option value="$PROJECT_DIR$/schoolapps/aub/README.md" />
         <option value="$PROJECT_DIR$/schoolapps/teachers/admin.py" />
         <option value="$PROJECT_DIR$/schoolapps/teachers/models.py" />
         <option value="$PROJECT_DIR$/schoolapps/aub/migrations/0006_auto_20171220_1229.py" />
         <option value="$PROJECT_DIR$/schoolapps/todos/models.py" />
         <option value="$PROJECT_DIR$/schoolapps/aub/migrations/0001_initial.py" />
         <option value="$PROJECT_DIR$/schoolapps/static/style.css" />
-        <option value="$PROJECT_DIR$/schoolapps/templates/partials/footer.html" />
         <option value="$PROJECT_DIR$/schoolapps/templates/registration/logged_out.html" />
         <option value="$PROJECT_DIR$/README.md" />
         <option value="$PROJECT_DIR$/schoolapps/aub/apps.py" />
@@ -202,29 +185,32 @@
         <option value="$PROJECT_DIR$/schoolapps/aub/templates/aub/details.html" />
         <option value="$PROJECT_DIR$/schoolapps/aub/templates/aub/apply_for.html" />
         <option value="$PROJECT_DIR$/schoolapps/aub/views.py" />
-        <option value="$PROJECT_DIR$/schoolapps/dashboard/urls.py" />
         <option value="$PROJECT_DIR$/schoolapps/templates/mail/email.txt" />
         <option value="$PROJECT_DIR$/schoolapps/templates/mail/email.html" />
         <option value="$PROJECT_DIR$/schoolapps/mailer.py" />
-        <option value="$PROJECT_DIR$/schoolapps/dashboard/views.py" />
         <option value="$PROJECT_DIR$/schoolapps/untisconnect/urls.py" />
         <option value="$PROJECT_DIR$/schoolapps/untisconnect/templates/untisconnect/test.html" />
         <option value="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/admin-teachers.html" />
-        <option value="$PROJECT_DIR$/schoolapps/schoolapps/urls.py" />
         <option value="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/admin/teachers.html" />
         <option value="$PROJECT_DIR$/schoolapps/untisconnect/views.py" />
         <option value="$PROJECT_DIR$/schoolapps/untisconnect/models.py" />
         <option value="$PROJECT_DIR$/schoolapps/timetable/urls.py" />
-        <option value="$PROJECT_DIR$/schoolapps/timetable/models.py" />
-        <option value="$PROJECT_DIR$/schoolapps/schoolapps/settings.py" />
         <option value="$PROJECT_DIR$/schoolapps/timetable/parser/parse.py" />
         <option value="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/admin/all.html" />
-        <option value="$PROJECT_DIR$/schoolapps/untisconnect/api.py" />
         <option value="$PROJECT_DIR$/schoolapps/static/common/style.css" />
         <option value="$PROJECT_DIR$/schoolapps/timetable/views.py" />
-        <option value="$PROJECT_DIR$/schoolapps/timetable/parse.py" />
         <option value="$PROJECT_DIR$/schoolapps/templates/partials/header.html" />
+        <option value="$PROJECT_DIR$/schoolapps/untisconnect/api.py" />
+        <option value="$PROJECT_DIR$/schoolapps/dashboard/views.py" />
+        <option value="$PROJECT_DIR$/schoolapps/schoolapps/urls.py" />
+        <option value="$PROJECT_DIR$/schoolapps/dashboard/urls.py" />
+        <option value="$PROJECT_DIR$/schoolapps/templates/partials/footer.html" />
+        <option value="$PROJECT_DIR$/schoolapps/templates/partials/impress.html" />
+        <option value="$PROJECT_DIR$/schoolapps/timetable/models.py" />
+        <option value="$PROJECT_DIR$/test.py" />
         <option value="$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html" />
+        <option value="$PROJECT_DIR$/schoolapps/schoolapps/settings.py" />
+        <option value="$PROJECT_DIR$/schoolapps/timetable/parse.py" />
       </list>
     </option>
   </component>
@@ -273,63 +259,13 @@
               <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
               <item name="school-apps" type="462c0819:PsiDirectoryNode" />
               <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="static" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
-              <item name="school-apps" type="462c0819:PsiDirectoryNode" />
-              <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="static" type="462c0819:PsiDirectoryNode" />
-              <item name="common" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
-              <item name="school-apps" type="462c0819:PsiDirectoryNode" />
-              <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="templates" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
-              <item name="school-apps" type="462c0819:PsiDirectoryNode" />
-              <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="templates" type="462c0819:PsiDirectoryNode" />
-              <item name="partials" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
-              <item name="school-apps" type="462c0819:PsiDirectoryNode" />
               <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="timetable" type="462c0819:PsiDirectoryNode" />
             </path>
             <path>
               <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
               <item name="school-apps" type="462c0819:PsiDirectoryNode" />
               <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
               <item name="timetable" type="462c0819:PsiDirectoryNode" />
-              <item name="templates" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
-              <item name="school-apps" type="462c0819:PsiDirectoryNode" />
-              <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="timetable" type="462c0819:PsiDirectoryNode" />
-              <item name="templates" type="462c0819:PsiDirectoryNode" />
-              <item name="timetable" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
-              <item name="school-apps" type="462c0819:PsiDirectoryNode" />
-              <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="timetable" type="462c0819:PsiDirectoryNode" />
-              <item name="templates" type="462c0819:PsiDirectoryNode" />
-              <item name="timetable" type="462c0819:PsiDirectoryNode" />
-              <item name="admin" type="462c0819:PsiDirectoryNode" />
-            </path>
-            <path>
-              <item name="school-apps" type="b2602c69:ProjectViewProjectNode" />
-              <item name="school-apps" type="462c0819:PsiDirectoryNode" />
-              <item name="schoolapps" type="462c0819:PsiDirectoryNode" />
-              <item name="untisconnect" type="462c0819:PsiDirectoryNode" />
             </path>
           </expand>
           <select />
@@ -339,9 +275,9 @@
     </panes>
   </component>
   <component name="PropertiesComponent">
-    <property name="last_opened_file_path" value="$PROJECT_DIR$/schoolapps/timetable/parse.py" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/schoolapps" />
     <property name="WebServerToolWindowFactoryState" value="false" />
-    <property name="settings.editor.selected.configurable" value="com.jetbrains.python.templateLanguages.PyTemplateLanguageModulesConfigurable" />
+    <property name="settings.editor.selected.configurable" value="com.jetbrains.python.configuration.PyActiveSdkModuleConfigurable" />
     <property name="DefaultHtmlFileTemplate" value="HTML File" />
   </component>
   <component name="RecentsManager">
@@ -395,11 +331,11 @@
       <option name="INTERPRETER_OPTIONS" value="" />
       <option name="PARENT_ENVS" value="true" />
       <envs>
-        <env name="PYTHONUNBUFFERED" value="1" />
         <env name="DJANGO_SETTINGS_MODULE" value="schoolapps.settings" />
+        <env name="PYTHONUNBUFFERED" value="1" />
       </envs>
-      <option name="SDK_HOME" value="/usr/bin/python3.5" />
-      <option name="WORKING_DIRECTORY" value="" />
+      <option name="SDK_HOME" value="$PROJECT_DIR$/env/bin/python" />
+      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/schoolapps" />
       <option name="IS_MODULE_SDK" value="false" />
       <option name="ADD_CONTENT_ROOTS" value="true" />
       <option name="ADD_SOURCE_ROOTS" value="true" />
@@ -614,26 +550,32 @@
       <option name="project" value="LOCAL" />
       <updated>1521558184516</updated>
     </task>
-    <option name="localTasksCounter" value="26" />
+    <task id="LOCAL-00026" summary="A working timetable [NOT FINISHED]">
+      <created>1522001424996</created>
+      <option name="number" value="00026" />
+      <option name="presentableId" value="LOCAL-00026" />
+      <option name="project" value="LOCAL" />
+      <updated>1522001424996</updated>
+    </task>
+    <option name="localTasksCounter" value="27" />
     <servers />
   </component>
   <component name="ToolWindowManager">
-    <frame x="-3" y="33" width="1372" height="729" extended-state="6" />
-    <editor active="true" />
+    <frame x="-3" y="33" width="1286" height="761" extended-state="6" />
     <layout>
       <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
       <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
+      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2085308" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
       <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.27083334" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
       <window_info id="Python Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3294509" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
-      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.21963394" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
       <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.20757575" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
+      <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.23905997" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
       <window_info id="Docker" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
       <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="SciView" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
       <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
+      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.39933443" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
-      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
       <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
       <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
       <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
@@ -654,7 +596,6 @@
     <option name="myLimit" value="2678400000" />
   </component>
   <component name="VcsManagerConfiguration">
-    <MESSAGE value="Move header/footer files to project root | First step of login module | Clean up" />
     <MESSAGE value="Running login module (without permissions) | Models for Teacher and Aub" />
     <MESSAGE value="Running login module (without permissions) | Models for Teacher and Aub [ADD UNVERSIONED FILES]" />
     <MESSAGE value="Delete teacher app" />
@@ -679,47 +620,18 @@
     <MESSAGE value="Add basic email support" />
     <MESSAGE value="Include UNTIS DB" />
     <MESSAGE value="[UNTIS] All teachers can be got from [new] untisconnect api | Basic timetable app with all teachers in a list | Untisconnector app for models/api from [UNTIS]" />
-    <option name="LAST_COMMIT_MESSAGE" value="[UNTIS] All teachers can be got from [new] untisconnect api | Basic timetable app with all teachers in a list | Untisconnector app for models/api from [UNTIS]" />
+    <MESSAGE value="A working timetable [NOT FINISHED]" />
+    <option name="LAST_COMMIT_MESSAGE" value="A working timetable [NOT FINISHED]" />
     <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="true" />
     <option name="REARRANGE_BEFORE_PROJECT_COMMIT" value="true" />
   </component>
   <component name="XDebuggerManager">
     <breakpoint-manager>
-      <breakpoints>
-        <line-breakpoint enabled="true" suspend="THREAD" type="python-line">
-          <url>file://$PROJECT_DIR$/schoolapps/untisconnect/models.py</url>
-          <line>1086</line>
-          <option name="timeStamp" value="1" />
-        </line-breakpoint>
-      </breakpoints>
-      <option name="time" value="3" />
+      <option name="time" value="4" />
     </breakpoint-manager>
     <watches-manager />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/schoolapps/todos/models.py" />
-    <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/apps.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="85">
-          <caret line="5" column="17" lean-forward="true" selection-start-line="5" selection-start-column="17" selection-end-line="5" selection-end-column="17" />
-        </state>
-      </provider>
-    </entry>
-    <entry file="file://$PROJECT_DIR$/README.md">
-      <provider editor-type-id="text-editor">
-        <state relative-caret-position="0">
-          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
-        </state>
-      </provider>
-      <provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
-        <state split_layout="SPLIT">
-          <first_editor relative-caret-position="0">
-            <caret line="0" column="13" lean-forward="false" selection-start-line="0" selection-start-column="13" selection-end-line="0" selection-end-column="13" />
-          </first_editor>
-          <second_editor />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/models.py">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="130">
@@ -810,13 +722,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/aub/models.py">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="595">
-          <caret line="37" column="9" lean-forward="false" selection-start-line="37" selection-start-column="9" selection-end-line="37" selection-end-column="9" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/schoolapps/aub/forms.py">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="255">
@@ -866,162 +771,197 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/views.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/templates/untisconnect/test.html">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="68">
+          <caret line="4" column="14" lean-forward="false" selection-start-line="4" selection-start-column="14" selection-end-line="4" selection-end-column="14" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/urls.py">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="51">
-          <caret line="8" column="25" lean-forward="false" selection-start-line="8" selection-start-column="25" selection-end-line="8" selection-end-column="25" />
+          <caret line="4" column="50" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/templates/dashboard/index.html">
+    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/views.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="68">
-          <caret line="4" column="0" lean-forward="true" selection-start-line="4" selection-start-column="0" selection-end-line="4" selection-end-column="0" />
+        <state relative-caret-position="136">
+          <caret line="13" column="28" lean-forward="false" selection-start-line="13" selection-start-column="28" selection-end-line="13" selection-end-column="28" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/urls.py">
+    <entry file="file://$PROJECT_DIR$/timetable-old/apps.py">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="0">
-          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="7" selection-end-column="0" />
+          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/templates/untisconnect/test.html">
+    <entry file="file://$PROJECT_DIR$/schoolapps/aub/urls.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="68">
-          <caret line="4" column="14" lean-forward="false" selection-start-line="4" selection-start-column="14" selection-end-line="4" selection-end-column="14" />
+        <state relative-caret-position="102">
+          <caret line="7" column="61" lean-forward="true" selection-start-line="7" selection-start-column="61" selection-end-line="7" selection-end-column="61" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/schoolapps/urls.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/static/common/logo.png">
+      <provider selected="true" editor-type-id="images">
+        <state />
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/schoolapps/templates/partials/header.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="663">
-          <caret line="43" column="31" lean-forward="false" selection-start-line="43" selection-start-column="31" selection-end-line="43" selection-end-column="31" />
+        <state relative-caret-position="952">
+          <caret line="56" column="30" lean-forward="false" selection-start-line="56" selection-start-column="30" selection-end-line="56" selection-end-column="30" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/urls.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/models.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="18462">
+          <caret line="1086" column="0" lean-forward="false" selection-start-line="1086" selection-start-column="0" selection-end-line="1086" selection-end-column="0" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/schoolapps/templates/partials/footer.html">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="51">
-          <caret line="4" column="50" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
+          <caret line="3" column="19" lean-forward="false" selection-start-line="3" selection-start-column="19" selection-end-line="3" selection-end-column="19" />
+          <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/views.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/schoolapps/urls.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="136">
-          <caret line="13" column="28" lean-forward="false" selection-start-line="13" selection-start-column="28" selection-end-line="13" selection-end-column="28" />
+        <state relative-caret-position="697">
+          <caret line="45" column="64" lean-forward="false" selection-start-line="45" selection-start-column="64" selection-end-line="45" selection-end-column="64" />
+          <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/timetable-old/apps.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/api.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="0">
-          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
+        <state relative-caret-position="3179">
+          <caret line="187" column="37" lean-forward="false" selection-start-line="187" selection-start-column="37" selection-end-line="187" selection-end-column="37" />
+          <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/aub/urls.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/static/common/style.css">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="102">
-          <caret line="7" column="61" lean-forward="true" selection-start-line="7" selection-start-column="61" selection-end-line="7" selection-end-column="61" />
+        <state relative-caret-position="1462">
+          <caret line="86" column="35" lean-forward="false" selection-start-line="86" selection-start-column="35" selection-end-line="86" selection-end-column="35" />
+          <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/schoolapps/settings.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/models.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="629">
-          <caret line="37" column="34" lean-forward="false" selection-start-line="37" selection-start-column="34" selection-end-line="37" selection-end-column="34" />
+        <state relative-caret-position="84">
+          <caret line="5" column="28" lean-forward="true" selection-start-line="5" selection-start-column="28" selection-end-line="5" selection-end-column="28" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/urls.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/views.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="34">
-          <caret line="3" column="15" lean-forward="false" selection-start-line="3" selection-start-column="15" selection-end-line="3" selection-end-column="15" />
-          <folding>
-            <element signature="e#0#28#0" expanded="false" />
-          </folding>
+        <state relative-caret-position="238">
+          <caret line="19" column="20" lean-forward="false" selection-start-line="19" selection-start-column="20" selection-end-line="20" selection-end-column="56" />
+          <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/models.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/urls.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="255">
-          <caret line="15" column="0" lean-forward="false" selection-start-line="15" selection-start-column="0" selection-end-line="15" selection-end-column="0" />
+        <state relative-caret-position="119">
+          <caret line="8" column="0" lean-forward="true" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/api.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/templates/partials/impress.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="2839">
-          <caret line="167" column="18" lean-forward="false" selection-start-line="167" selection-start-column="18" selection-end-line="167" selection-end-column="18" />
+        <state relative-caret-position="321">
+          <caret line="19" column="8" lean-forward="false" selection-start-line="19" selection-start-column="8" selection-end-line="19" selection-end-column="8" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/static/common/style.css">
+    <entry file="file://$PROJECT_DIR$/schoolapps/dashboard/templates/dashboard/index.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="85">
-          <caret line="86" column="35" lean-forward="false" selection-start-line="86" selection-start-column="35" selection-end-line="86" selection-end-column="35" />
+        <state relative-caret-position="323">
+          <caret line="46" column="32" lean-forward="true" selection-start-line="35" selection-start-column="19" selection-end-line="46" selection-end-column="32" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/untisconnect/models.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/aub/models.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="17">
-          <caret line="822" column="12" lean-forward="false" selection-start-line="822" selection-start-column="6" selection-end-line="822" selection-end-column="12" />
+        <state relative-caret-position="387">
+          <caret line="56" column="27" lean-forward="true" selection-start-line="56" selection-start-column="27" selection-end-line="56" selection-end-column="27" />
           <folding />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/schoolapps/timetable/templates/timetable/admin/all.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="459">
-          <caret line="27" column="48" lean-forward="false" selection-start-line="27" selection-start-column="48" selection-end-line="27" selection-end-column="48" />
+        <state relative-caret-position="17">
+          <caret line="27" column="48" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="62" selection-end-column="0" />
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/test.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="0">
+          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/views.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="408">
-          <caret line="47" column="16" lean-forward="true" selection-start-line="47" selection-start-column="16" selection-end-line="47" selection-end-column="16" />
+        <state relative-caret-position="203">
+          <caret line="63" column="51" lean-forward="false" selection-start-line="63" selection-start-column="51" selection-end-line="63" selection-end-column="51" />
           <folding>
-            <element signature="e#0#57#0" expanded="true" />
+            <element signature="n#style#0;n#p#0;n#div#0;n#div#0;n#div#1;n#div#1;n#main#0;n#!!top" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/parse.py">
+    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/urls.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="680">
-          <caret line="214" column="41" lean-forward="true" selection-start-line="214" selection-start-column="41" selection-end-line="214" selection-end-column="41" />
+        <state relative-caret-position="68">
+          <caret line="5" column="36" lean-forward="true" selection-start-line="5" selection-start-column="36" selection-end-line="5" selection-end-column="36" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/static/common/logo.png">
-      <provider selected="true" editor-type-id="images">
-        <state />
+    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/views.py">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="440">
+          <caret line="40" column="19" lean-forward="true" selection-start-line="40" selection-start-column="19" selection-end-line="40" selection-end-column="19" />
+          <folding>
+            <element signature="e#0#57#0" expanded="true" />
+          </folding>
+        </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/templates/partials/header.html">
+    <entry file="file://$PROJECT_DIR$/schoolapps/schoolapps/settings.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="110">
-          <caret line="56" column="30" lean-forward="true" selection-start-line="56" selection-start-column="30" selection-end-line="56" selection-end-column="30" />
+        <state relative-caret-position="287">
+          <caret line="147" column="19" lean-forward="true" selection-start-line="147" selection-start-column="19" selection-end-line="147" selection-end-column="19" />
           <folding />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/templates/timetable/plan.html">
+    <entry file="file://$PROJECT_DIR$/schoolapps/timetable/parse.py">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="221">
-          <caret line="83" column="81" lean-forward="true" selection-start-line="83" selection-start-column="81" selection-end-line="83" selection-end-column="81" />
+        <state relative-caret-position="134">
+          <caret line="220" column="0" lean-forward="true" selection-start-line="220" selection-start-column="0" selection-end-line="220" selection-end-column="0" />
           <folding />
         </state>
       </provider>
diff --git a/schoolapps/dashboard/urls.py b/schoolapps/dashboard/urls.py
index 144b665c2..d6e35cbd7 100644
--- a/schoolapps/dashboard/urls.py
+++ b/schoolapps/dashboard/urls.py
@@ -3,5 +3,6 @@ from . import views
 
 urlpatterns = [
     path('', views.index, name='dashboard'),
-    path('mail/', views.test_mail, name='dashboard_mail')
+    path('mail/', views.test_mail, name='dashboard_mail'),
+    path('impress/', views.impress, name='impress')
 ]
diff --git a/schoolapps/dashboard/views.py b/schoolapps/dashboard/views.py
index f1dbdb3cc..eae3fc5e8 100644
--- a/schoolapps/dashboard/views.py
+++ b/schoolapps/dashboard/views.py
@@ -33,3 +33,8 @@ def test_mail(request):
     """ Sends a test mail """
     send_mail_with_template("Test", [request.user.email], 'mail/email.txt', 'mail/email.html', {'user': request.user})
     return redirect(reverse('dashboard'))
+
+
+@login_required
+def impress(request):
+    return render(request, 'partials/impress.html')
diff --git a/schoolapps/schoolapps/settings.py b/schoolapps/schoolapps/settings.py
index f20b6b2c6..48a42b96f 100644
--- a/schoolapps/schoolapps/settings.py
+++ b/schoolapps/schoolapps/settings.py
@@ -143,3 +143,7 @@ EMAIL_PORT = 587
 EMAIL_HOST_USER = 'infoplan@katharineum.de'
 EMAIL_HOST_PASSWORD = 'grummelPASS1531'
 EMAIL_USE_TLS = True
+
+# TIMETABLE
+TIMETABLE_WIDTH = 5
+TIMETABLE_HEIGHT = 10
diff --git a/schoolapps/templates/partials/footer.html b/schoolapps/templates/partials/footer.html
index 32b2e99ec..bb4dfa624 100644
--- a/schoolapps/templates/partials/footer.html
+++ b/schoolapps/templates/partials/footer.html
@@ -1,8 +1,8 @@
 <footer class="page-footer primary-color">
     <div class="footer-copyright">
         <div class="container">
-            © 2017 Computer-AG, Katharineum zu Lübeck
-            <a class="grey-text text-lighten-4 right" href="">Impressum</a>
+            © 2018 Computer-AG, Katharineum zu Lübeck
+            <a class="grey-text text-lighten-4 right" href="{% url 'impress' %}">Impressum</a>
         </div>
     </div>
 </footer>
diff --git a/schoolapps/templates/partials/impress.html b/schoolapps/templates/partials/impress.html
new file mode 100644
index 000000000..b19c37880
--- /dev/null
+++ b/schoolapps/templates/partials/impress.html
@@ -0,0 +1,34 @@
+{% include 'partials/header.html' %}
+
+<main>
+    <h3>Impressum</h3>
+
+    <p>
+        <strong>Katharineum zu Lübeck</strong> <br>
+        Königsstraße 27-31 <br>
+        23552 Lübeck
+    </p>
+
+    <p>
+        <strong>Kommissarischer Schulleiter:</strong> Herr StD Poetzsch-Heffter <br>
+        <strong>E-Mail:</strong> schulleiter@katharineum.de
+    </p>
+
+    <p>
+        <strong>Schulträger:</strong> Hansestadt Lübeck <br>
+        vertreten durch den Bürgermeister Bernd Saxe
+    </p>
+
+    <p>
+        <strong>Entwicklung und Betreuung von <i>SchoolApps</i>:</strong> Herr Poetzsch-Heffter und die Computer-AG
+    </p>
+
+    <h4>Disclaimer – rechtliche Hinweise</h4>
+    <strong><i><u>TODO</u></i></strong><br>
+    Haftungsausschluss (Aktualität, Richtigkeit, etc.)<br>
+    Datenschutz, Datenverarbeitung (Weitergabe an Dritte?, etc.)<br>
+    Sicherheit (Verschlüsselung, generell Sicherheitsprobleme möglich)
+
+</main>
+
+{% include 'partials/footer.html' %}
diff --git a/schoolapps/timetable/migrations/0002_auto_20180410_1100.py b/schoolapps/timetable/migrations/0002_auto_20180410_1100.py
new file mode 100644
index 000000000..7e4d06cb7
--- /dev/null
+++ b/schoolapps/timetable/migrations/0002_auto_20180410_1100.py
@@ -0,0 +1,25 @@
+# Generated by Django 2.0.3 on 2018-04-10 09:00
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+    dependencies = [
+        ('timetable', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.RemoveField(
+            model_name='class',
+            name='room',
+        ),
+        migrations.DeleteModel(
+            name='Teacher',
+        ),
+        migrations.DeleteModel(
+            name='Class',
+        ),
+        migrations.DeleteModel(
+            name='Room',
+        ),
+    ]
diff --git a/schoolapps/timetable/models.py b/schoolapps/timetable/models.py
index 09889fffd..41465b7e8 100644
--- a/schoolapps/timetable/models.py
+++ b/schoolapps/timetable/models.py
@@ -3,19 +3,19 @@ from django.db import models
 
 # Create your models here.
 
-class Teacher(models.Model):
-    shortcode = models.CharField(max_length=10)
-    first_name = models.CharField(max_length=100)
-    name = models.CharField(max_length=100)
-
-
-class Room(models.Model):
-    shortcode = models.CharField(max_length=10)
-    name = models.CharField(max_length=100)
-
-
-class Class(models.Model):
-    name = models.CharField(max_length=10)
-    text1 = models.CharField(max_length=200)
-    text2 = models.CharField(max_length=200)
-    room = models.ForeignKey(Room, on_delete=models.CASCADE)
+# class Teacher(models.Model):
+#     shortcode = models.CharField(max_length=10)
+#     first_name = models.CharField(max_length=100)
+#     name = models.CharField(max_length=100)
+#
+#
+# class Room(models.Model):
+#     shortcode = models.CharField(max_length=10)
+#     name = models.CharField(max_length=100)
+#
+#
+# class Class(models.Model):
+#     name = models.CharField(max_length=10)
+#     text1 = models.CharField(max_length=200)
+#     text2 = models.CharField(max_length=200)
+#     room = models.ForeignKey(Room, on_delete=models.CASCADE)
diff --git a/schoolapps/timetable/parse.py b/schoolapps/timetable/parse.py
index 8ffb08fc3..2bd372e3e 100644
--- a/schoolapps/timetable/parse.py
+++ b/schoolapps/timetable/parse.py
@@ -1,3 +1,6 @@
+from django.conf import settings
+
+
 class Lesson(object):
     def __init__(self):
         self.filled = False
@@ -106,6 +109,24 @@ def parse():
             raw_lesson_data = raw_lesson.lessonelement1.split(",")
             raw_time_data = raw_lesson.lesson_tt.split(",")
 
+            rtd2 = []
+            for el in raw_time_data:
+                rtd2.append(el.split("~"))
+
+            # print(rtd2)
+
+            for el in rtd2:
+                day = int(el[1])
+                hour = int(el[2])
+                room_ids = untis_split(el[3], conv=int)
+
+                rooms = []
+                for room_id in room_ids:
+                    r = drive["rooms"][room_id]
+                    rooms.append(r)
+
+                lesson_obj.add_time(day, hour, rooms)
+
             # print(raw_lesson_data)
             # print(raw_time_data)
 
@@ -149,24 +170,6 @@ def parse():
 
                 lesson_obj.add_element(teacher, subject, rooms, classes)
 
-            rtd2 = []
-            for el in raw_time_data:
-                rtd2.append(el.split("~"))
-
-            # print(rtd2)
-
-            for el in rtd2:
-                day = int(el[1])
-                hour = int(el[2])
-                room_ids = untis_split(el[3], conv=int)
-
-                rooms = []
-                for room_id in room_ids:
-                    r = drive["rooms"][room_id]
-                    rooms.append(r)
-
-                lesson_obj.add_time(day, hour, rooms)
-
                 # print("DAY – ", day, "; HOUR – ", hour, "; ROOMS – ", room_ids)
 
             lessons.append(lesson_obj)
@@ -179,22 +182,53 @@ TYPE_ROOM = 1
 TYPE_CLASS = 2
 
 
+class LessonContainer(object):
+    """
+    Needed for Django template because template language does not support dictionaries
+    Saves the time object and the lesson elements
+    """
+
+    def __init__(self, ):
+        self.time = None
+        self.elements = []
+
+    def set_time(self, time):
+        self.time = time
+
+    def append(self, element):
+        self.elements.append(element)
+
+
+class LessonElementContainer(object):
+    """
+    Needed for Django template because template language does not support dictionaries
+    Saves the lesson element object and the room (from time object)
+    """
+
+    def __init__(self, element, room):
+        self.element = element
+        self.room = room
+
+
 def get_plan(type, id):
+    """ Generates a plan for type (TYPE_TEACHE, TYPE_CLASS, TYPE_ROOM) and a id of the teacher (class, room)"""
+
+    # Get parsed lessons
     lessons = parse()
-    plan = [[[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []],
-            [[], [], [], [], []]]
 
+    # Init plan array
+    plan = []
+
+    # Fill plan array with LessonContainers (show upside), WIDTH and HEIGHT are defined by Django settings
+    for hour_idx in range(settings.TIMETABLE_HEIGHT):
+        plan.append([])
+        for day_idx in range(settings.TIMETABLE_WIDTH):
+            plan[hour_idx].append(LessonContainer())
+
+    # Fill plan with lessons
     for lesson in lessons:
-        for element in lesson.elements:
+        for i, element in enumerate(lesson.elements):
+            # Check if the lesson element is important for that plan (look by type and id)
             found = False
             if type == TYPE_CLASS:
                 for lclass in element.classes:
@@ -211,12 +245,34 @@ def get_plan(type, id):
                     if lroom.id == id:
                         found = True
 
+            # If the lesson element is important then add it to plan array
             if found:
-                for time in lesson.times:
+                for time in lesson.times:  # Go for every time the lesson is thought
                     # print(time.hour, " ", time.day)
                     # print(element.subject.shortcode)
-                    plan[time.hour - 1][time.day - 1].append(element)
+
+                    # Add the time object to the matching LessonContainer on the right position in the plan array
+                    plan[time.hour - 1][time.day - 1].set_time(time)
+
+                    # Check if there is an room for this time and lesson
+                    try:
+                        room = time.rooms[i]
+                    except IndexError:
+                        room = None
+
+                    # Create a LessonElementContainer with room and lesson element
+                    element_container = LessonElementContainer(element, room)
+
+                    # Add this container object to the LessonContainer object in the plan array
+                    plan[time.hour - 1][time.day - 1].append(element_container)
 
     # print(plan)
+    #
+    # for hour in plan:
+    #     for day in hour:
+    #         print(day.elements)
+    #         for c in day.elements:
+    #             # print(c.element)
+    #             pass
 
     return plan
diff --git a/schoolapps/timetable/templates/timetable/plan.html b/schoolapps/timetable/templates/timetable/plan.html
index 90ab77494..9bbaeb23f 100644
--- a/schoolapps/timetable/templates/timetable/plan.html
+++ b/schoolapps/timetable/templates/timetable/plan.html
@@ -61,7 +61,7 @@
                 <div class="card timetable-title-card">
                     <div class="card-content">
                     <span class="card-title">
-                        0.
+                        {{ forloop.counter0|add:"+1" }}.
                     </span>
                     </div>
                 </div>
@@ -71,24 +71,22 @@
                 <div class="col s2">
                     <div class="card lesson-card">
                         <div class="card-content">
-                            {% for element in col %}
-                                <p>
+                            {% for element_container in col.elements %}
+                                <p style="background-color: {{ element_container.element.subject.hex_color }};">
 
                                     {% if type == 0 or type == 1 %}
-                                        {% for class in element.classes %}
+                                        {% for class in element_container.elements.classes %}
                                             {{ class.name }}
                                         {% endfor %}
                                     {% endif %}
                                     {% if type == 2 or type == 1 %}
                                         <span data-position="bottom" class="tooltipped"
-                                              data-tooltip="{{ element.teacher }}">{{ element.teacher.shortcode }}</span>
+                                              data-tooltip="{{ element_container.element.teacher }}">{{ element_container.element.teacher.shortcode }}</span>
                                     {% endif %}
-                                    <strong>{{ element.subject.shortcode }}</strong>
+                                    <strong>{{ element_container.element.subject.shortcode }}</strong>
                                     {% if type == 0 or type == 2 %}
-                                        {% for room in element.rooms %}
-                                            <span class="tooltipped" data-position="bottom"
-                                                  data-tooltip="{{ room.name }}">{{ room.shortcode }}</span>
-                                        {% endfor %}
+                                        <span class="tooltipped" data-position="bottom"
+                                              data-tooltip="{{ element_container.room.name }}">{{ element_container.room.shortcode }}</span>
                                     {% endif %}
                                 </p>
 
diff --git a/schoolapps/untisconnect/api.py b/schoolapps/untisconnect/api.py
index e51d62776..5c89c7ca2 100644
--- a/schoolapps/untisconnect/api.py
+++ b/schoolapps/untisconnect/api.py
@@ -177,12 +177,16 @@ class Subject(object):
         self.id = None
         self.shortcode = None
         self.name = None
+        self.color = None
+        self.hex_color = None
 
     def create(self, db_obj):
         self.filled = True
         self.id = db_obj.subject_id
         self.shortcode = db_obj.name
         self.name = db_obj.longname
+        self.color = db_obj.backcolor
+        self.hex_color = "#" + str(hex(db_obj.backcolor)).replace("0x", "")
 
 
 def get_all_subjects():
-- 
GitLab