coalition.content.admin ======================= .. py:module:: coalition.content.admin .. autoapi-nested-parse:: Content admin package. Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/coalition/content/admin/content_block/index /autoapi/coalition/content/admin/homepage/index /autoapi/coalition/content/admin/image/index /autoapi/coalition/content/admin/theme/index /autoapi/coalition/content/admin/video/index Classes ------- .. autoapisummary:: coalition.content.admin.ContentBlockAdmin coalition.content.admin.HomePageAdmin coalition.content.admin.ImageAdmin coalition.content.admin.ThemeAdmin coalition.content.admin.VideoAdmin Package Contents ---------------- .. py:class:: ContentBlockAdmin(model, admin_site) Bases: :py:obj:`django.contrib.admin.ModelAdmin` Admin interface for ContentBlock model. .. py:attribute:: list_display :value: ('display_title', 'block_type', 'page_type', 'order', 'is_visible', 'has_image', 'created_at') .. py:attribute:: list_filter :value: ('block_type', 'page_type', 'is_visible', 'created_at') .. py:attribute:: search_fields :value: ('title', 'content') .. py:attribute:: readonly_fields :value: ('created_at', 'updated_at') .. py:attribute:: list_editable :value: ('order', 'is_visible') .. py:attribute:: fieldsets .. py:method:: display_title(obj: coalition.content.models.ContentBlock) -> str Display title with a more meaningful placeholder for empty titles .. py:method:: has_image(obj: coalition.content.models.ContentBlock) -> bool Display whether content block has an image .. py:class:: HomePageAdmin(model, admin_site) Bases: :py:obj:`django.contrib.admin.ModelAdmin` Admin interface for Homepage model. .. py:attribute:: list_display :value: ('organization_name', 'theme', 'is_active', 'has_hero_image', 'has_hero_video', 'created_at',... .. py:attribute:: list_filter :value: ('theme', 'is_active', 'created_at') .. py:attribute:: search_fields :value: ('organization_name', 'tagline', 'hero_title') .. py:attribute:: readonly_fields :value: ('created_at', 'updated_at') .. py:attribute:: fieldsets .. py:method:: has_hero_image(obj: coalition.content.models.HomePage) -> bool Display whether homepage has a hero image .. py:method:: has_hero_video(obj: coalition.content.models.HomePage) -> bool Display whether homepage has a hero video .. py:class:: ImageAdmin(model, admin_site) Bases: :py:obj:`django.contrib.admin.ModelAdmin` Admin interface for Image model. .. py:attribute:: list_display :value: ('title', 'image_type', 'has_caption', 'author', 'license', 'uploaded_by', 'created_at') .. py:attribute:: list_filter :value: ('image_type', 'license', 'created_at', 'uploaded_by') .. py:attribute:: search_fields :value: ('title', 'alt_text', 'description', 'author') .. py:attribute:: readonly_fields :value: ('created_at', 'updated_at', 'uploaded_by') .. py:attribute:: fieldsets .. py:method:: has_caption(obj: coalition.content.models.Image) -> bool Check if the image has a custom caption. .. py:method:: save_model(request: django.http.HttpRequest, obj: coalition.content.models.Image, form: django.forms.ModelForm, change: bool) -> None Set the uploaded_by field to the current user. .. py:class:: ThemeAdmin(model, admin_site) Bases: :py:obj:`django.contrib.admin.ModelAdmin` Admin interface for Theme model. .. py:attribute:: list_display :value: ('name', 'description', 'is_active', 'created_at') .. py:attribute:: list_filter :value: ('is_active', 'created_at') .. py:attribute:: search_fields :value: ('name', 'description') .. py:attribute:: readonly_fields :value: ('created_at', 'updated_at') .. py:attribute:: save_as :value: True .. py:attribute:: save_as_continue :value: True .. py:attribute:: fieldsets .. py:class:: VideoAdmin(model, admin_site) Bases: :py:obj:`django.contrib.admin.ModelAdmin` Admin interface for Video model. .. py:attribute:: list_display :value: ('title', 'video_type', 'display_video_file', 'autoplay', 'loop', 'muted', 'show_controls',... .. py:attribute:: list_filter :value: ('video_type', 'autoplay', 'loop', 'muted', 'created_at') .. py:attribute:: search_fields :value: ('title', 'alt_text', 'description', 'author', 'license') .. py:attribute:: readonly_fields :value: ('created_at', 'updated_at', 'display_video_preview') .. py:attribute:: raw_id_fields :value: ('uploaded_by',) .. py:attribute:: fieldsets .. py:method:: display_video_file(obj: coalition.content.models.Video) -> str Display video file name or 'No file'. .. py:method:: display_video_preview(obj: coalition.content.models.Video) -> str Display video preview if available. .. py:method:: save_model(request: django.http.HttpRequest, obj: coalition.content.models.Video, form: django.forms.ModelForm, change: bool) -> None Set uploaded_by to current user if not set.