diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index ea7226c0d59f8d046a77521f785f81d84a24ef58..056214adae1c79e4f121de6d59397cc0dfcb1a24 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -6,6 +6,15 @@ All notable changes to this project will be documented in this file.
 The format is based on `Keep a Changelog`_,
 and this project adheres to `Semantic Versioning`_.
 
+Unreleased
+----------
+
+Fixed
+~~~~~
+
+* The lesson documentations tab was displayed on overviews for persons who are not teachers.
+* Teachers weren't able to edit personal notes of their students in the person overview.
+
 `2.0rc3`_ - 2021-07-20
 ----------------------
 
diff --git a/aleksis/apps/alsijil/rules.py b/aleksis/apps/alsijil/rules.py
index 0b418af8cb20cb96a109a4b8e55a16a707e38b6d..ea438b99366a5fcd27fbf70713b50e1a62afa45d 100644
--- a/aleksis/apps/alsijil/rules.py
+++ b/aleksis/apps/alsijil/rules.py
@@ -189,7 +189,7 @@ add_perm(
 )
 
 # Edit person overview personal notes
-edit_person_overview_personal_notes_predicate = view_person_overview_personal_notes_predicate & (
+edit_person_overview_personal_notes_predicate = view_person_overview_predicate & (
     ~is_current_person
     | has_global_perm("alsijil.edit_personalnote")
     | has_person_group_object_perm("core.edit_personalnote_group")
diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py
index 3999324f22796719df6586dc7a99a38851fda495..93d7cce2e72d6168ce800efa0b9364fc2537ea6b 100644
--- a/aleksis/apps/alsijil/views.py
+++ b/aleksis/apps/alsijil/views.py
@@ -876,7 +876,9 @@ def overview_person(request: HttpRequest, id_: Optional[int] = None) -> HttpResp
     context["excuse_types"] = ExcuseType.objects.all()
 
     form = PersonOverviewForm(request, request.POST or None, queryset=allowed_personal_notes)
-    if request.method == "POST":
+    if request.method == "POST" and request.user.has_perm(
+        "alsijil.edit_person_overview_personalnote_rule", person
+    ):
         if form.is_valid():
             with reversion.create_revision():
                 reversion.set_user(request.user)
@@ -957,7 +959,7 @@ def overview_person(request: HttpRequest, id_: Optional[int] = None) -> HttpResp
     filter_dict["person"] = person
     context["filter_form"] = filter_form
 
-    if request.user.person.is_teacher:
+    if person.is_teacher:
         register_objects = generate_list_of_all_register_objects(filter_dict)
         table = RegisterObjectTable(register_objects)
         items_per_page = request.user.person.preferences[