We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
Fix OEO page and add OEO pages to navigation bar
- [x] Fix linebreak in link (Dipl.-Ing.)
- [x] Add Daniel to list
- [x] Add pages to navigation bar

--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `ontology/views.py`
Content:
```
1 from django.shortcuts import render, HttpResponse, redirect, Http404
2 from django.views import View
3 from rdflib import Graph, RDFS
4 from oeplatform.settings import ONTOLOGY_FOLDER
5 from collections import OrderedDict
6 
7 import os
8 import re
9 
10 
11 def collect_modules(path):
12     modules = dict()
13     for file in os.listdir(path):
14         if not os.path.isdir(os.path.join(path,file)):
15             match = re.match("^(?P<filename>.*)\.(?P<extension>\w+)$", file)
16             filename, extension = match.groups()
17             if filename not in modules:
18                 modules[filename] = dict(extensions=[], comment="No description found")
19             if extension == "owl":
20                 g = Graph()
21                 g.parse(os.path.join(path, file))
22                 root = dict(g.namespaces())['']
23                 comments = g.objects(root, RDFS.comment)
24                 try:
25                     modules[filename]["comment"] = next(comments)
26                 except StopIteration:
27                     modules[filename]["comment"] = "No description found"
28             modules[filename]["extensions"].append(extension)
29     return modules
30 
31 class OntologyOverview(View):
32     def get(self, request, ontology, module_or_id=None, version=None, imports=False):
33         versions = os.listdir(f"{ONTOLOGY_FOLDER}/{ontology}")
34         if not version:
35             version = max((d for d in versions), key=lambda d:[int(x) for x in d.split(".")])
36 
37         if "text/html" in request.headers.get("accept","").split(","):
38             main_module = collect_modules(f"{ONTOLOGY_FOLDER}/{ontology}/{version}")
39             main_module_name = list(main_module.keys())[0]
40             main_module = main_module[main_module_name]
41             main_module["name"] = main_module_name
42             submodules = collect_modules(f"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules")
43             # Collect all file names
44 
45             imports = collect_modules(f"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports")
46 
47             return render(request, "ontology/oeo.html", dict(
48                 ontology=ontology,
49                 version=version,
50                 main_module=main_module,
51                 submodules=submodules.items(),
52                 imports=imports.items()
53             ))
54         else:
55             module_name = None
56             if module_or_id:
57                 if imports:
58                     submodules = collect_modules(f"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports")
59                 else:
60                     submodules = collect_modules(f"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules")
61                 # If module_or_id is the name of a valid submodule, use this module
62                 if module_or_id in submodules:
63                     module_name = module_or_id
64                 if imports:
65                     return redirect(f"/ontology/{ontology}/releases/{version}/imports/{module_name}.owl")
66                 else:
67                     return redirect(f"/ontology/{ontology}/releases/{version}/{module_name}.owl")
68             # If no module was requested or the requested id was not a module, serve main ontology
69             if module_name is None:
70                 main_module = collect_modules(f"{ONTOLOGY_FOLDER}/{ontology}/{version}")
71                 module_name = list(main_module.keys())[0]
72             return redirect(f"/ontology/{ontology}/releases/{version}/{module_name}.owl")
73 
74 
75 class OntologyStatics(View):
76     def get(self, request, ontology, file, version=None, extension=None, imports=False):
77         """
78         Returns the requested file `{file}.{extension}` of version `version`
79         of ontology `ontology`
80 
81         :param version: default: highest version in folder
82         :param extension: default: `.owl`
83         :return:
84         """
85 
86         if not extension:
87             extension = "owl"
88         if not version:
89             version = max((d for d in os.listdir(f"{ONTOLOGY_FOLDER}/{ontology}")), key=lambda d:[int(x) for x in d.split(".")])
90         if imports:
91             file_path = f"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports/{file}.{extension}"
92         else:
93             file_path = f"{ONTOLOGY_FOLDER}/{ontology}/{version}/{file}.{extension}"
94         if os.path.exists(file_path):
95             with open(file_path, "br") as f:
96                 response = HttpResponse(f, content_type="application/rdf+xml; charset=utf-8")
97                 response["Content-Disposition"] = f'attachment; filename="{file}.{extension}"'
98                 return response
99         else:
100             file_path = f"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules/{file}.{extension}"
101             if not os.path.exists(file_path):
102                 raise Http404
103             with open(file_path, "br") as f:
104                 response = HttpResponse(f, content_type="application/rdf+xml; charset=utf-8")
105                 response["Content-Disposition"] = f'attachment; filename="{file}.{extension}"'
106                 return response
```

Path: `ontology/urls.py`
Content:
```
1 from django.conf.urls import url
2 from django.conf.urls.static import static
3 from django.views.generic import TemplateView, RedirectView
4 from os import walk
5 from ontology import views
6 from oeplatform import settings
7 
8 urlpatterns = [
9   url(r"^$", TemplateView.as_view(template_name="ontology/about.html")),
10   url(r"^ontology/oeo-steering-committee$",
11       TemplateView.as_view(template_name="ontology/oeo-steering-committee.html"),
12       name="oeo-s-c"),
13   url(r"^(?P<ontology>[\w_-]+)\/releases(\/v?(?P<version>[\d\.]+))?\/imports\/(?P<file>[\w_-]+)(.(?P<extension>[\w_-]+))?$",
14       views.OntologyStatics.as_view(), {"imports": True}),
15 
16   url(r"^(?P<ontology>[\w_-]+)\/releases(\/v?(?P<version>[\d\.]+))?\/(?P<file>[\w_-]+)(.(?P<extension>[\w_-]+))?$",
17       views.OntologyStatics.as_view()),
18 
19   url(r"^(?P<ontology>[\w_-]+)\/imports\/(?P<module_or_id>[\w\d_-]+)",
20       views.OntologyOverview.as_view(), {"imports": True}),
21 
22   url(r"^(?P<ontology>[\w_-]+)(/(?P<module_or_id>[\w\d_-]+))?",
23       views.OntologyOverview.as_view()),
24 
25 ]
26
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/ontology/urls.py b/ontology/urls.py
--- a/ontology/urls.py
+++ b/ontology/urls.py
@@ -7,9 +7,11 @@
 
 urlpatterns = [
   url(r"^$", TemplateView.as_view(template_name="ontology/about.html")),
-  url(r"^ontology/oeo-steering-committee$",
+  url(r"^ontology/$", TemplateView.as_view(template_name="ontology/about.html")),
+  url(r"^oeo-steering-committee/$",
       TemplateView.as_view(template_name="ontology/oeo-steering-committee.html"),
       name="oeo-s-c"),
+  url(r"^ontology/oeo-steering-committee/$", TemplateView.as_view(template_name="ontology/oeo-steering-committee.html")),
   url(r"^(?P<ontology>[\w_-]+)\/releases(\/v?(?P<version>[\d\.]+))?\/imports\/(?P<file>[\w_-]+)(.(?P<extension>[\w_-]+))?$",
       views.OntologyStatics.as_view(), {"imports": True}),
 
diff --git a/ontology/views.py b/ontology/views.py
--- a/ontology/views.py
+++ b/ontology/views.py
@@ -30,6 +30,8 @@
 
 class OntologyOverview(View):
     def get(self, request, ontology, module_or_id=None, version=None, imports=False):
+        if not os.path.exists(f"{ONTOLOGY_FOLDER}/{ontology}"):
+            raise Http404
         versions = os.listdir(f"{ONTOLOGY_FOLDER}/{ontology}")
         if not version:
             version = max((d for d in versions), key=lambda d:[int(x) for x in d.split(".")])

{"golden_diff": "diff --git a/ontology/urls.py b/ontology/urls.py\n--- a/ontology/urls.py\n+++ b/ontology/urls.py\n@@ -7,9 +7,11 @@\n \n urlpatterns = [\n   url(r\"^$\", TemplateView.as_view(template_name=\"ontology/about.html\")),\n-  url(r\"^ontology/oeo-steering-committee$\",\n+  url(r\"^ontology/$\", TemplateView.as_view(template_name=\"ontology/about.html\")),\n+  url(r\"^oeo-steering-committee/$\",\n       TemplateView.as_view(template_name=\"ontology/oeo-steering-committee.html\"),\n       name=\"oeo-s-c\"),\n+  url(r\"^ontology/oeo-steering-committee/$\", TemplateView.as_view(template_name=\"ontology/oeo-steering-committee.html\")),\n   url(r\"^(?P<ontology>[\\w_-]+)\\/releases(\\/v?(?P<version>[\\d\\.]+))?\\/imports\\/(?P<file>[\\w_-]+)(.(?P<extension>[\\w_-]+))?$\",\n       views.OntologyStatics.as_view(), {\"imports\": True}),\n \ndiff --git a/ontology/views.py b/ontology/views.py\n--- a/ontology/views.py\n+++ b/ontology/views.py\n@@ -30,6 +30,8 @@\n \n class OntologyOverview(View):\n     def get(self, request, ontology, module_or_id=None, version=None, imports=False):\n+        if not os.path.exists(f\"{ONTOLOGY_FOLDER}/{ontology}\"):\n+            raise Http404\n         versions = os.listdir(f\"{ONTOLOGY_FOLDER}/{ontology}\")\n         if not version:\n             version = max((d for d in versions), key=lambda d:[int(x) for x in d.split(\".\")])\n", "issue": "Fix OEO page and add OEO pages to navigation bar\n- [x] Fix linebreak in link (Dipl.-Ing.)\r\n- [x] Add Daniel to list\r\n- [x] Add pages to navigation bar\n", "before_files": [{"content": "from django.shortcuts import render, HttpResponse, redirect, Http404\nfrom django.views import View\nfrom rdflib import Graph, RDFS\nfrom oeplatform.settings import ONTOLOGY_FOLDER\nfrom collections import OrderedDict\n\nimport os\nimport re\n\n\ndef collect_modules(path):\n    modules = dict()\n    for file in os.listdir(path):\n        if not os.path.isdir(os.path.join(path,file)):\n            match = re.match(\"^(?P<filename>.*)\\.(?P<extension>\\w+)$\", file)\n            filename, extension = match.groups()\n            if filename not in modules:\n                modules[filename] = dict(extensions=[], comment=\"No description found\")\n            if extension == \"owl\":\n                g = Graph()\n                g.parse(os.path.join(path, file))\n                root = dict(g.namespaces())['']\n                comments = g.objects(root, RDFS.comment)\n                try:\n                    modules[filename][\"comment\"] = next(comments)\n                except StopIteration:\n                    modules[filename][\"comment\"] = \"No description found\"\n            modules[filename][\"extensions\"].append(extension)\n    return modules\n\nclass OntologyOverview(View):\n    def get(self, request, ontology, module_or_id=None, version=None, imports=False):\n        versions = os.listdir(f\"{ONTOLOGY_FOLDER}/{ontology}\")\n        if not version:\n            version = max((d for d in versions), key=lambda d:[int(x) for x in d.split(\".\")])\n\n        if \"text/html\" in request.headers.get(\"accept\",\"\").split(\",\"):\n            main_module = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}\")\n            main_module_name = list(main_module.keys())[0]\n            main_module = main_module[main_module_name]\n            main_module[\"name\"] = main_module_name\n            submodules = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules\")\n            # Collect all file names\n\n            imports = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports\")\n\n            return render(request, \"ontology/oeo.html\", dict(\n                ontology=ontology,\n                version=version,\n                main_module=main_module,\n                submodules=submodules.items(),\n                imports=imports.items()\n            ))\n        else:\n            module_name = None\n            if module_or_id:\n                if imports:\n                    submodules = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports\")\n                else:\n                    submodules = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules\")\n                # If module_or_id is the name of a valid submodule, use this module\n                if module_or_id in submodules:\n                    module_name = module_or_id\n                if imports:\n                    return redirect(f\"/ontology/{ontology}/releases/{version}/imports/{module_name}.owl\")\n                else:\n                    return redirect(f\"/ontology/{ontology}/releases/{version}/{module_name}.owl\")\n            # If no module was requested or the requested id was not a module, serve main ontology\n            if module_name is None:\n                main_module = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}\")\n                module_name = list(main_module.keys())[0]\n            return redirect(f\"/ontology/{ontology}/releases/{version}/{module_name}.owl\")\n\n\nclass OntologyStatics(View):\n    def get(self, request, ontology, file, version=None, extension=None, imports=False):\n        \"\"\"\n        Returns the requested file `{file}.{extension}` of version `version`\n        of ontology `ontology`\n\n        :param version: default: highest version in folder\n        :param extension: default: `.owl`\n        :return:\n        \"\"\"\n\n        if not extension:\n            extension = \"owl\"\n        if not version:\n            version = max((d for d in os.listdir(f\"{ONTOLOGY_FOLDER}/{ontology}\")), key=lambda d:[int(x) for x in d.split(\".\")])\n        if imports:\n            file_path = f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports/{file}.{extension}\"\n        else:\n            file_path = f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/{file}.{extension}\"\n        if os.path.exists(file_path):\n            with open(file_path, \"br\") as f:\n                response = HttpResponse(f, content_type=\"application/rdf+xml; charset=utf-8\")\n                response[\"Content-Disposition\"] = f'attachment; filename=\"{file}.{extension}\"'\n                return response\n        else:\n            file_path = f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules/{file}.{extension}\"\n            if not os.path.exists(file_path):\n                raise Http404\n            with open(file_path, \"br\") as f:\n                response = HttpResponse(f, content_type=\"application/rdf+xml; charset=utf-8\")\n                response[\"Content-Disposition\"] = f'attachment; filename=\"{file}.{extension}\"'\n                return response", "path": "ontology/views.py"}, {"content": "from django.conf.urls import url\nfrom django.conf.urls.static import static\nfrom django.views.generic import TemplateView, RedirectView\nfrom os import walk\nfrom ontology import views\nfrom oeplatform import settings\n\nurlpatterns = [\n  url(r\"^$\", TemplateView.as_view(template_name=\"ontology/about.html\")),\n  url(r\"^ontology/oeo-steering-committee$\",\n      TemplateView.as_view(template_name=\"ontology/oeo-steering-committee.html\"),\n      name=\"oeo-s-c\"),\n  url(r\"^(?P<ontology>[\\w_-]+)\\/releases(\\/v?(?P<version>[\\d\\.]+))?\\/imports\\/(?P<file>[\\w_-]+)(.(?P<extension>[\\w_-]+))?$\",\n      views.OntologyStatics.as_view(), {\"imports\": True}),\n\n  url(r\"^(?P<ontology>[\\w_-]+)\\/releases(\\/v?(?P<version>[\\d\\.]+))?\\/(?P<file>[\\w_-]+)(.(?P<extension>[\\w_-]+))?$\",\n      views.OntologyStatics.as_view()),\n\n  url(r\"^(?P<ontology>[\\w_-]+)\\/imports\\/(?P<module_or_id>[\\w\\d_-]+)\",\n      views.OntologyOverview.as_view(), {\"imports\": True}),\n\n  url(r\"^(?P<ontology>[\\w_-]+)(/(?P<module_or_id>[\\w\\d_-]+))?\",\n      views.OntologyOverview.as_view()),\n\n]\n", "path": "ontology/urls.py"}], "after_files": [{"content": "from django.shortcuts import render, HttpResponse, redirect, Http404\nfrom django.views import View\nfrom rdflib import Graph, RDFS\nfrom oeplatform.settings import ONTOLOGY_FOLDER\nfrom collections import OrderedDict\n\nimport os\nimport re\n\n\ndef collect_modules(path):\n    modules = dict()\n    for file in os.listdir(path):\n        if not os.path.isdir(os.path.join(path,file)):\n            match = re.match(\"^(?P<filename>.*)\\.(?P<extension>\\w+)$\", file)\n            filename, extension = match.groups()\n            if filename not in modules:\n                modules[filename] = dict(extensions=[], comment=\"No description found\")\n            if extension == \"owl\":\n                g = Graph()\n                g.parse(os.path.join(path, file))\n                root = dict(g.namespaces())['']\n                comments = g.objects(root, RDFS.comment)\n                try:\n                    modules[filename][\"comment\"] = next(comments)\n                except StopIteration:\n                    modules[filename][\"comment\"] = \"No description found\"\n            modules[filename][\"extensions\"].append(extension)\n    return modules\n\nclass OntologyOverview(View):\n    def get(self, request, ontology, module_or_id=None, version=None, imports=False):\n        if not os.path.exists(f\"{ONTOLOGY_FOLDER}/{ontology}\"):\n            raise Http404\n        versions = os.listdir(f\"{ONTOLOGY_FOLDER}/{ontology}\")\n        if not version:\n            version = max((d for d in versions), key=lambda d:[int(x) for x in d.split(\".\")])\n\n        if \"text/html\" in request.headers.get(\"accept\",\"\").split(\",\"):\n            main_module = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}\")\n            main_module_name = list(main_module.keys())[0]\n            main_module = main_module[main_module_name]\n            main_module[\"name\"] = main_module_name\n            submodules = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules\")\n            # Collect all file names\n\n            imports = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports\")\n\n            return render(request, \"ontology/oeo.html\", dict(\n                ontology=ontology,\n                version=version,\n                main_module=main_module,\n                submodules=submodules.items(),\n                imports=imports.items()\n            ))\n        else:\n            module_name = None\n            if module_or_id:\n                if imports:\n                    submodules = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports\")\n                else:\n                    submodules = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules\")\n                # If module_or_id is the name of a valid submodule, use this module\n                if module_or_id in submodules:\n                    module_name = module_or_id\n                if imports:\n                    return redirect(f\"/ontology/{ontology}/releases/{version}/imports/{module_name}.owl\")\n                else:\n                    return redirect(f\"/ontology/{ontology}/releases/{version}/{module_name}.owl\")\n            # If no module was requested or the requested id was not a module, serve main ontology\n            if module_name is None:\n                main_module = collect_modules(f\"{ONTOLOGY_FOLDER}/{ontology}/{version}\")\n                module_name = list(main_module.keys())[0]\n            return redirect(f\"/ontology/{ontology}/releases/{version}/{module_name}.owl\")\n\n\nclass OntologyStatics(View):\n    def get(self, request, ontology, file, version=None, extension=None, imports=False):\n        \"\"\"\n        Returns the requested file `{file}.{extension}` of version `version`\n        of ontology `ontology`\n\n        :param version: default: highest version in folder\n        :param extension: default: `.owl`\n        :return:\n        \"\"\"\n\n        if not extension:\n            extension = \"owl\"\n        if not version:\n            version = max((d for d in os.listdir(f\"{ONTOLOGY_FOLDER}/{ontology}\")), key=lambda d:[int(x) for x in d.split(\".\")])\n        if imports:\n            file_path = f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/imports/{file}.{extension}\"\n        else:\n            file_path = f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/{file}.{extension}\"\n        if os.path.exists(file_path):\n            with open(file_path, \"br\") as f:\n                response = HttpResponse(f, content_type=\"application/rdf+xml; charset=utf-8\")\n                response[\"Content-Disposition\"] = f'attachment; filename=\"{file}.{extension}\"'\n                return response\n        else:\n            file_path = f\"{ONTOLOGY_FOLDER}/{ontology}/{version}/modules/{file}.{extension}\"\n            if not os.path.exists(file_path):\n                raise Http404\n            with open(file_path, \"br\") as f:\n                response = HttpResponse(f, content_type=\"application/rdf+xml; charset=utf-8\")\n                response[\"Content-Disposition\"] = f'attachment; filename=\"{file}.{extension}\"'\n                return response", "path": "ontology/views.py"}, {"content": "from django.conf.urls import url\nfrom django.conf.urls.static import static\nfrom django.views.generic import TemplateView, RedirectView\nfrom os import walk\nfrom ontology import views\nfrom oeplatform import settings\n\nurlpatterns = [\n  url(r\"^$\", TemplateView.as_view(template_name=\"ontology/about.html\")),\n  url(r\"^ontology/$\", TemplateView.as_view(template_name=\"ontology/about.html\")),\n  url(r\"^oeo-steering-committee/$\",\n      TemplateView.as_view(template_name=\"ontology/oeo-steering-committee.html\"),\n      name=\"oeo-s-c\"),\n  url(r\"^ontology/oeo-steering-committee/$\", TemplateView.as_view(template_name=\"ontology/oeo-steering-committee.html\")),\n  url(r\"^(?P<ontology>[\\w_-]+)\\/releases(\\/v?(?P<version>[\\d\\.]+))?\\/imports\\/(?P<file>[\\w_-]+)(.(?P<extension>[\\w_-]+))?$\",\n      views.OntologyStatics.as_view(), {\"imports\": True}),\n\n  url(r\"^(?P<ontology>[\\w_-]+)\\/releases(\\/v?(?P<version>[\\d\\.]+))?\\/(?P<file>[\\w_-]+)(.(?P<extension>[\\w_-]+))?$\",\n      views.OntologyStatics.as_view()),\n\n  url(r\"^(?P<ontology>[\\w_-]+)\\/imports\\/(?P<module_or_id>[\\w\\d_-]+)\",\n      views.OntologyOverview.as_view(), {\"imports\": True}),\n\n  url(r\"^(?P<ontology>[\\w_-]+)(/(?P<module_or_id>[\\w\\d_-]+))?\",\n      views.OntologyOverview.as_view()),\n\n]\n", "path": "ontology/urls.py"}]}