0001-Support-variable-MANAGER_HOMEPAGE_URL-and-MANAGER_HO.patch
src/authentic2/manager/app_settings.py | ||
---|---|---|
1 | 1 |
import sys |
2 | 2 | |
3 | 3 |
class AppSettings(object): |
4 | 4 |
__PREFIX = 'A2_MANAGER_' |
5 | 5 |
__DEFAULTS = { |
6 | 6 |
'HOMEPAGE_URL': None, |
7 |
'HOMEPAGE_TITLE': None, |
|
7 | 8 |
'LOGOUT_URL': None, |
8 | 9 |
} |
9 | 10 | |
11 |
@property |
|
12 |
def HOMEPAGE_URL(self): |
|
13 |
from django.conf import settings |
|
14 |
return getattr(settings, |
|
15 |
'%sHOMEPAGE_URL' % self.__PREFIX, |
|
16 |
getattr(settings, |
|
17 |
'MANAGER_HOMEPAGE_URL', |
|
18 |
self.__DEFAULTS['HOMEPAGE_URL'])) |
|
19 | ||
20 |
@property |
|
21 |
def HOMEPAGE_TITLE(self): |
|
22 |
from django.conf import settings |
|
23 |
return getattr(settings, |
|
24 |
'%sHOMEPAGE_TITLE' % self.__PREFIX, |
|
25 |
getattr(settings, |
|
26 |
'MANAGER_HOMEPAGE_TITLE', |
|
27 |
self.__DEFAULTS['HOMEPAGE_URL'])) |
|
28 | ||
10 | 29 |
def __getattr__(self, name): |
11 | 30 |
from django.conf import settings |
12 | 31 |
if name not in self.__DEFAULTS: |
13 | 32 |
raise AttributeError |
14 | 33 |
return getattr(settings, self.__PREFIX + name, self.__DEFAULTS[name]) |
15 | 34 | |
16 | 35 |
app_settings = AppSettings() |
17 | 36 |
app_settings.__name__ = __name__ |
src/authentic2/manager/templates/authentic2/manager/base.html | ||
---|---|---|
17 | 17 |
<script type="text/javascript" src="{% static "authentic2/manager/js/manager.js" %}"></script> |
18 | 18 |
<script type="text/javascript" src="/static/js/select2.js"></script> |
19 | 19 |
<script type="text/javascript" src="/static/js/heavy_data.js"></script> |
20 | 20 |
<script> |
21 | 21 |
window.csrf_token = '{{ csrf_token }}'; |
22 | 22 |
</script> |
23 | 23 |
{% endblock %} |
24 | 24 | |
25 |
{% block site-url %}{{ management_homepage_url }}{% endblock %}
|
|
26 |
{% block site-title %}{% trans "Management" %}{% endblock %}
|
|
25 |
{% block homepage-url %}{{ homepage_url }}{% endblock %}
|
|
26 |
{% block homepage-title %}{% trans "Management" as default_homepage_title %}{% firstof homepage_title default_homepage_title %}{% endblock %}
|
|
27 | 27 | |
28 |
{% block logout-url %}{{ management_logout_url }}{% endblock %} |
|
29 | ||
30 |
{% block homepage-url %}{% url "a2-manager-homepage" %}{% endblock %} |
|
28 |
{% block logout-url %}{{ logout_url }}{% endblock %} |
|
31 | 29 | |
32 | 30 |
{% block appbar %} |
33 | 31 |
<h2>{% block page_title %}{% endblock %}</h2> |
34 | 32 |
{% endblock %} |
35 | 33 |
src/authentic2/manager/views.py | ||
---|---|---|
30 | 30 |
self.name = name |
31 | 31 |
self.title = title |
32 | 32 |
self.confirm = confirm |
33 | 33 |
self.display = display |
34 | 34 | |
35 | 35 |
class ManagerMixin(object): |
36 | 36 |
def get_context_data(self, **kwargs): |
37 | 37 |
ctx = super(ManagerMixin, self).get_context_data(**kwargs) |
38 |
ctx['management_homepage_url'] = app_settings.HOMEPAGE_URL or reverse('auth_homepage') |
|
39 |
ctx['management_logout_url'] = app_settings.LOGOUT_URL or reverse('auth_logout') |
|
38 |
ctx['homepage_url'] = app_settings.HOMEPAGE_URL or reverse('auth_homepage') |
|
39 |
ctx['homepage_title'] = app_settings.HOMEPAGE_TITLE |
|
40 |
ctx['logout_url'] = app_settings.LOGOUT_URL or reverse('auth_logout') |
|
40 | 41 |
return ctx |
41 | 42 | |
42 | 43 |
class RolesMixin(ManagerMixin): |
43 | 44 |
def get_context_data(self, **kwargs): |
44 | 45 |
ctx = super(ManagerMixin, self).get_context_data(**kwargs) |
45 | 46 |
ctx['roles'] = utils.get_roles() |
46 | 47 |
ctx['role_add_form'] = forms.RoleAddForm() |
47 | 48 |
return ctx |
48 |
- |