diff --git a/aleksis/apps/chronos/templates/chronos/lesson.html b/aleksis/apps/chronos/templates/chronos/lesson.html
index f7a5771cd8fe48453b789c0de87dcc33a4897448..cfcfc6c7e10287b5751444e85de69ce1a6e6e575 100644
--- a/aleksis/apps/chronos/templates/chronos/lesson.html
+++ b/aleksis/apps/chronos/templates/chronos/lesson.html
@@ -18,14 +18,13 @@
                 {% endif %}
               {% endif %}
               "
-
               {# Add CSS class for sub when it's a sub #}
-           class="{% if lesson_period.get_substitution %}{% if lesson_period.substitution.table.is_event %}lesson-with-event{% else %}lesson-with-sub{% endif %}{% endif %}"
+           class="{% if lesson_period.get_substitution and smart %}{% if lesson_period.substitution.table.is_event %}lesson-with-event{% else %}lesson-with-sub{% endif %}{% endif %}"
       >
         <p>
-          {% if lesson_period.is_hol %}
+          {% if lesson_period.is_hol and smart %}
             {# Do nothing #}
-          {% elif lesson_period.get_substitution %}
+          {% elif lesson_period.get_substitution and smart %}
             {% with sub=lesson_period.get_substitution %}
               {# SUBSTITUTION #}
               {% if type == "room" and lesson_period.room != lesson_period.get_room %}
diff --git a/aleksis/apps/chronos/templates/chronos/plan.html b/aleksis/apps/chronos/templates/chronos/plan.html
index 1d347e6f0fa52486279490d9cf91c0b887e78ec3..136ccc175dae200d4c95984c1f4d04ec6b4a9787 100644
--- a/aleksis/apps/chronos/templates/chronos/plan.html
+++ b/aleksis/apps/chronos/templates/chronos/plan.html
@@ -67,7 +67,7 @@
         <span class="badge new primary-color left smart-plan-badge">SMART PLAN</span>
 
         <a class="waves-effect waves-light btn-flat no-print" style="padding-left: 3px; padding-right: 3px;"
-           href="#{#  url "timetable_regular_plan" raw_type id "regular" #}">
+           href="{% url "timetable_regular" type pk "regular" %}">
           <i class="material-icons left">slideshow</i>
           REGELPLAN ANZEIGEN
         </a>
diff --git a/aleksis/apps/chronos/urls.py b/aleksis/apps/chronos/urls.py
index ed55dca2ddf223c9377047360d7fe8d9b5e62b01..791a4b9c5c554e635672372fbc76a808fc3496d1 100644
--- a/aleksis/apps/chronos/urls.py
+++ b/aleksis/apps/chronos/urls.py
@@ -6,6 +6,7 @@ urlpatterns = [
     path("timetable/<str:_type>/<int:pk>", views.timetable, name="timetable"),
     path("all_timetables", views.all, name="all_timetables"),
     path("timetable/<str:_type>/<int:pk>/<int:year>/<int:week>", views.timetable, name="timetable_by_week"),
+    path("timetable/<str:_type>/<int:pk>/<str:regular>/", views.timetable, name="timetable_regular"),
     path("lessons", views.lessons_day, name="lessons_day"),
     path("lessons/<when>", views.lessons_day, name="lessons_day_by_date"),
     path(
diff --git a/aleksis/apps/chronos/views.py b/aleksis/apps/chronos/views.py
index a5f3e6aa09701605a7835d04485117c131c1fffe..817eff8eb5cc2dd6c9c9f4d945f7f9118b6af4e1 100644
--- a/aleksis/apps/chronos/views.py
+++ b/aleksis/apps/chronos/views.py
@@ -79,10 +79,12 @@ def all(request: HttpRequest) -> HttpResponse:
 
 @login_required
 def timetable(
-    request: HttpRequest, _type: str, pk: int, year: Optional[int] = None, week: Optional[int] = None
+    request: HttpRequest, _type: str, pk: int, year: Optional[int] = None, week: Optional[int] = None, regular: Optional[str] = None
 ) -> HttpResponse:
     context = {}
 
+    is_smart = regular != "regular"
+
     if _type == "group":
         el = get_object_or_404(Group, pk=pk)
     elif _type == "teacher":
@@ -154,7 +156,7 @@ def timetable(
     context["type"] = _type
     context["pk"] = pk
     context["el"] = el
-    context["smart"] = True
+    context["smart"] = is_smart
 
     week_prev = wanted_week - 1
     week_next = wanted_week + 1