aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pydis_site/apps/resources/templatetags/get_category_icon.py37
-rw-r--r--pydis_site/templates/resources/resource_box.html20
-rw-r--r--pydis_site/templates/resources/resources.html2
3 files changed, 54 insertions, 5 deletions
diff --git a/pydis_site/apps/resources/templatetags/get_category_icon.py b/pydis_site/apps/resources/templatetags/get_category_icon.py
new file mode 100644
index 00000000..683f2c98
--- /dev/null
+++ b/pydis_site/apps/resources/templatetags/get_category_icon.py
@@ -0,0 +1,37 @@
+from django import template
+
+register = template.Library()
+
+
+def get_category_icon(name: str) -> str:
+ """Get icon of a specific resource category."""
+ icons = {
+ "Algorithms And Data Structures": "fa-cogs",
+ "Data Science": "fa-flask",
+ "Databases": "fa-server",
+ "Game Development": "fa-joystick",
+ "General": "fa-book",
+ "Microcontrollers": "fa-microchip",
+ "Other": "fa-question-circle",
+ "Software Design": "fa-paint-brush",
+ "Testing": "fa-vial",
+ "Tooling": "fa-toolbox",
+ "User Interface": "fa-desktop",
+ "Web Development": "fa-wifi",
+ "Book": "fa-book",
+ "Community": "fa-users",
+ "Course": "fa-chalkboard-teacher",
+ "Interactive": "fa-mouse-pointer",
+ "Podcast": "fa-microphone-alt",
+ "Tool": "fa-tools",
+ "Tutorial": "fa-clipboard-list",
+ "Video": "fa-video",
+ "Free": "f",
+ "Paid": "fa-sack",
+ "Subscription": "fa-vault",
+ "Beginner": "fa-play-circle",
+ "Intermediate": "fa-align-center"
+ }
+ icon_name = icons[name]
+ return f'fa {icon_name}'
diff --git a/pydis_site/templates/resources/resource_box.html b/pydis_site/templates/resources/resource_box.html
index 8146be6f..40f692c3 100644
--- a/pydis_site/templates/resources/resource_box.html
+++ b/pydis_site/templates/resources/resource_box.html
@@ -1,4 +1,5 @@
{% load as_icon %}
+{% load get_category_icon %}
<div class="box" style="max-width: 800px;">
{% if 'title_url' in resource %}
@@ -11,7 +12,7 @@
<p class="is-italic">{{ resource.description|safe }}</p>
- <div class="is-flex">
+ <div class="is-flex is-align-items-center">
{# Icons #}
{% for icon in resource.urls %}
<span class="icon is-size-4 is-medium" style="margin: 5px;">
@@ -20,8 +21,19 @@
</a>
</span>
{% endfor %}
- <button class="button is-primary is-light is-small ml-auto p-1">
- <a href="#">src</a>
- </button>
+ <div class="is-flex ml-auto">
+ {% for tag in resource.tags.topics %}
+ <span class="tag is-primary ml-2"><i class="{{ tag|title|get_category_icon }} mr-1"></i>{{ tag|title }}</span>
+ {% endfor %}
+ {% for tag in resource.tags.type %}
+ <span class="tag is-primary ml-2"><i class="{{ tag|title|get_category_icon }} mr-1"></i>{{ tag|title }}</span>
+ {% endfor %}
+ {% for tag in resource.tags.payment_tiers %}
+ <span class="tag is-primary ml-2"><i class="{{ tag|title|get_category_icon }} mr-1"></i>{{ tag|title }}</span>
+ {% endfor %}
+ {% for tag in resource.tags.complexity %}
+ <span class="tag is-primary ml-2"><i class="{{ tag|title|get_category_icon }} mr-1"></i>{{ tag|title }}</span>
+ {% endfor %}
+ </div>
</div>
</div>
diff --git a/pydis_site/templates/resources/resources.html b/pydis_site/templates/resources/resources.html
index fb482345..38cd3d9d 100644
--- a/pydis_site/templates/resources/resources.html
+++ b/pydis_site/templates/resources/resources.html
@@ -104,7 +104,7 @@
{% if resources|length > 0 %}
<section class="section">
<div class="container">
- <div class="content">
+ <div class="content is-flex is-justify-content-center">
<div>
{% for resource in resources %}
{% include "resources/resource_box.html" %}