Support variable MANAGER_HOMEPAGE_URL and MANAGER_HOMEPAGE_TILE for the first element of the manager breadcrumb (fixes #6690)
The goal is to ease integration of A2 manager in an administration portal by permitting global navigation between sites.
This commit is contained in:
parent
c38ee5e7c6
commit
6b9606a2c0
|
@ -4,9 +4,28 @@ class AppSettings(object):
|
|||
__PREFIX = 'A2_MANAGER_'
|
||||
__DEFAULTS = {
|
||||
'HOMEPAGE_URL': None,
|
||||
'HOMEPAGE_TITLE': None,
|
||||
'LOGOUT_URL': None,
|
||||
}
|
||||
|
||||
@property
|
||||
def HOMEPAGE_URL(self):
|
||||
from django.conf import settings
|
||||
return getattr(settings,
|
||||
'%sHOMEPAGE_URL' % self.__PREFIX,
|
||||
getattr(settings,
|
||||
'MANAGER_HOMEPAGE_URL',
|
||||
self.__DEFAULTS['HOMEPAGE_URL']))
|
||||
|
||||
@property
|
||||
def HOMEPAGE_TITLE(self):
|
||||
from django.conf import settings
|
||||
return getattr(settings,
|
||||
'%sHOMEPAGE_TITLE' % self.__PREFIX,
|
||||
getattr(settings,
|
||||
'MANAGER_HOMEPAGE_TITLE',
|
||||
self.__DEFAULTS['HOMEPAGE_URL']))
|
||||
|
||||
def __getattr__(self, name):
|
||||
from django.conf import settings
|
||||
if name not in self.__DEFAULTS:
|
||||
|
|
|
@ -22,12 +22,10 @@
|
|||
</script>
|
||||
{% endblock %}
|
||||
|
||||
{% block site-url %}{{ management_homepage_url }}{% endblock %}
|
||||
{% block site-title %}{% trans "Management" %}{% endblock %}
|
||||
{% block homepage-url %}{{ homepage_url }}{% endblock %}
|
||||
{% block homepage-title %}{% trans "Management" as default_homepage_title %}{% firstof homepage_title default_homepage_title %}{% endblock %}
|
||||
|
||||
{% block logout-url %}{{ management_logout_url }}{% endblock %}
|
||||
|
||||
{% block homepage-url %}{% url "a2-manager-homepage" %}{% endblock %}
|
||||
{% block logout-url %}{{ logout_url }}{% endblock %}
|
||||
|
||||
{% block appbar %}
|
||||
<h2>{% block page_title %}{% endblock %}</h2>
|
||||
|
|
|
@ -35,8 +35,9 @@ class Action(object):
|
|||
class ManagerMixin(object):
|
||||
def get_context_data(self, **kwargs):
|
||||
ctx = super(ManagerMixin, self).get_context_data(**kwargs)
|
||||
ctx['management_homepage_url'] = app_settings.HOMEPAGE_URL or reverse('auth_homepage')
|
||||
ctx['management_logout_url'] = app_settings.LOGOUT_URL or reverse('auth_logout')
|
||||
ctx['homepage_url'] = app_settings.HOMEPAGE_URL or reverse('auth_homepage')
|
||||
ctx['homepage_title'] = app_settings.HOMEPAGE_TITLE
|
||||
ctx['logout_url'] = app_settings.LOGOUT_URL or reverse('auth_logout')
|
||||
return ctx
|
||||
|
||||
class RolesMixin(ManagerMixin):
|
||||
|
|
Loading…
Reference in New Issue