fluent_dashboard.modules

Custom modules for the admin dashboard.

This package adds the following classes:

The AppIconList class

class fluent_dashboard.modules.AppIconList(title=None, **kwargs)

The list of applications, icon style.

AppIconList module for django-fluent-dashboard

It uses the FLUENT_DASHBOARD_APP_ICONS setting to find application icons.

get_icon_for_model(app_name, model_name, default=None)

Return the icon for the given model. It reads the FLUENT_DASHBOARD_APP_ICONS setting.

get_icon_url(icon)

Replaces the “icon name” with a full usable URL.

  • When the icon is an absolute URL, it is used as-is.
  • When the icon contains a slash, it is relative from the STATIC_URL.
  • Otherwise, it’s relative to the theme url folder.
init_with_context(context)

Initializes the icon list.

icon_static_root = '/static/'

The current static root (considered read only)

icon_theme_root = '/static/fluent_dashboard/flaticons/'

The current theme folder (considerd read only)

template = 'fluent_dashboard/modules/app_icon_list.html'

Specify the template to render

The CmsAppIconList class

class fluent_dashboard.modules.CmsAppIconList(title=None, **kwargs)

A variation of the AppIconList class with a strong bias towards sorting CMS apps on top.

CmsAppIconList module for django-fluent-dashboard
init_with_context(context)

Initializes the icon list.

The PersonalModule class

class fluent_dashboard.modules.PersonalModule(title=None, **kwargs)

A simple module to display a welcome message.

PersonalModule for django-fluent-dashboard

It renders the template fluent_dashboard/modules/personal.html, unless the template variable is overwritten. The module overrides LinkList, allowing links to be added to the element. The FLUENT_DASHBOARD_CMS_PAGE_MODEL setting is used to display a link to the pages module. If this setting is not defined, a general text will be displayed instead.

init_with_context(context)

Initializes the link list.

is_empty()

Return True if the module has no content and False otherwise.

>>> mod = DashboardModule()
>>> mod.is_empty()
True
>>> mod.pre_content = 'foo'
>>> mod.is_empty()
False
>>> mod.pre_content = None
>>> mod.is_empty()
True
>>> mod.children.append('foo')
>>> mod.is_empty()
False
>>> mod.children = []
>>> mod.is_empty()
True
cms_page_model = None

The model to use for the CMS pages link.

template = 'fluent_dashboard/modules/personal.html'

Define the template to render

title = 'Welcome,'

Define the title to display

The CacheStatusGroup class

class fluent_dashboard.modules.CacheStatusGroup(title=None, **kwargs)

Display status modules for Varnish en Memcache, in a Group module.

This module is only displayed when the collowayproject/dashboardmods package is installed, added to the INSTALLED_APPS, and the caches are configured and reachable. For more information, see the optional dependencies page.

CacheStatusGroup module for django-fluent-dashboard
init_with_context(context)

Initializes the status list.

display = 'stacked'

The default display mode, can be “tabs”, “stacked” or “accordion”

enabled = False

Hide by default

title = 'System status'

The default title