Skip to content

Commit ff6a339

Browse files
Merge pull request #87 from srobo/static-links
Static links
2 parents 44ed6eb + 5fb9162 commit ff6a339

File tree

3 files changed

+27
-12
lines changed

3 files changed

+27
-12
lines changed
+12-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,21 @@
1+
import operator
2+
13
from django.template import Library, RequestContext
24

35
from core.models import NavigationLink
46

57
register = Library()
68

9+
# Some links are so universal, it's easier to hardcode them.
10+
STATIC_LINKS = [
11+
NavigationLink("Competition details", "https://srobo.org/comp"),
12+
NavigationLink("Docs", "https://srobo.org/docs"),
13+
NavigationLink("Rules", "https://srobo.org/rules"),
14+
NavigationLink("Runbook", "https://srobo.org/runbook/"),
15+
]
16+
717

818
@register.inclusion_tag("tags/navigation.html", takes_context=True)
919
def navigation(context: RequestContext) -> dict:
10-
return {**context.flatten(), "links": NavigationLink.objects.all()}
20+
links = sorted(list(NavigationLink.objects.all()) + STATIC_LINKS, key=operator.attrgetter("name"))
21+
return {**context.flatten(), "links": links}

helpdesk/helpdesk/tests/test_smoke.py

+6
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,9 @@ def test_landing_page_redirects(client: Client, admin_user: User) -> None:
1919
resp = client.get("/")
2020
assert resp.status_code == 302
2121
assert resp["Location"] == "/accounts/onboarding/"
22+
23+
24+
def test_onboarding(client: Client, admin_user: User) -> None:
25+
client.force_login(admin_user)
26+
resp = client.get("/accounts/onboarding/")
27+
assert resp.status_code == 200

helpdesk/templates/tags/navigation.html

+9-11
Original file line numberDiff line numberDiff line change
@@ -36,19 +36,17 @@
3636
</a>
3737
{% endif %}
3838

39-
{% if links %}
40-
<div class="navbar-item has-dropdown is-hoverable">
41-
<a class="navbar-link">
42-
Links
43-
</a>
39+
<div class="navbar-item has-dropdown is-hoverable">
40+
<a class="navbar-link">
41+
Links
42+
</a>
4443

45-
<div class="navbar-dropdown">
46-
{% for link in links %}
47-
<a class="navbar-item" href="{{ link.url }}">{{ link.name }}</a>
48-
{% endfor %}
49-
</div>
44+
<div class="navbar-dropdown">
45+
{% for link in links %}
46+
<a class="navbar-item" href="{{ link.url }}">{{ link.name }}</a>
47+
{% endfor %}
5048
</div>
51-
{% endif %}
49+
</div>
5250

5351
{% if user.is_authenticated %}
5452
<div class="navbar-item has-dropdown is-hoverable">

0 commit comments

Comments
 (0)