Skip to content
Snippets Groups Projects
Commit b93555d0 authored by Nik | Klampfradler's avatar Nik | Klampfradler
Browse files

Merge branch '18-fix-icon-in-admin' into 'master'

Resolve "Fix icon in admin"

Closes #18

See merge request !22
parents ec4b7462 2f174b19
No related branches found
No related tags found
1 merge request!22Resolve "Fix icon in admin"
......@@ -7,14 +7,17 @@ from django.utils.translation import ugettext_lazy as _
from .models import FAQQuestion, FAQSection, IssueCategory
MATERIAL_ICONS_CSS_URL = "/static/css/materialdesignicons-webfont/material-icons.css"
MATERIAL_ICONS_CSS_URL = "/static/material-design-icons-iconfont/dist/material-design-icons.css"
def icon_html(obj: Model) -> str:
return format_html('<i class="material-icons">{}<i/>', obj.icon)
class IconMixin(object):
"""Mixin for icon lookup."""
def _icon(self, obj: Model) -> str:
return format_html('<i class="material-icons">{}<i/>', obj.icon)
class FAQSectionAdmin(admin.ModelAdmin):
class FAQSectionAdmin(IconMixin, admin.ModelAdmin):
"""ModelAdmin for FAQ sections."""
list_display = ("name", "_icon")
......@@ -22,8 +25,6 @@ class FAQSectionAdmin(admin.ModelAdmin):
class Media:
css = {"all": (MATERIAL_ICONS_CSS_URL,)}
_icon = icon_html
def show(modeladmin, request, queryset):
queryset.update(show=True)
......@@ -39,7 +40,7 @@ def hide(modeladmin, request, queryset):
hide.short_description = _("Unpublish selected questions")
class FAQQuestionAdmin(admin.ModelAdmin):
class FAQQuestionAdmin(IconMixin, admin.ModelAdmin):
"""ModelAdmin for FAQ questions."""
list_display = ("question_text", "section", "_icon", "show")
......@@ -48,10 +49,8 @@ class FAQQuestionAdmin(admin.ModelAdmin):
class Media:
css = {"all": (MATERIAL_ICONS_CSS_URL,)}
_icon = icon_html
class IssueCategoryAdmin(admin.ModelAdmin):
class IssueCategoryAdmin(IconMixin, admin.ModelAdmin):
"""ModelAdmin for issue categories."""
list_display = ("name", "_icon", "parent", "placeholder", "free_text")
......@@ -59,8 +58,6 @@ class IssueCategoryAdmin(admin.ModelAdmin):
class Media:
css = {"all": (MATERIAL_ICONS_CSS_URL,)}
_icon = icon_html
admin.site.register(FAQQuestion, FAQQuestionAdmin)
admin.site.register(FAQSection, FAQSectionAdmin)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment