forked from KoalixSwitzerland/koalixcrm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
dashboard.py
101 lines (87 loc) · 3.12 KB
/
dashboard.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
"""
This file was generated with the customdashboard management command and
contains the class for the main dashboard.
To activate your index dashboard add the following to your settings.py::
GRAPPELLI_INDEX_DASHBOARD = 'koalixcrm.dashboard.CustomIndexDashboard'
"""
from django.utils.translation import ugettext_lazy as _
from django.core.urlresolvers import reverse
from grappelli.dashboard import modules, Dashboard
from grappelli.dashboard.utils import get_admin_site_name
class CustomIndexDashboard(Dashboard):
"""
Custom index dashboard for koalixcrm
"""
def init_with_context(self, context):
site_name = get_admin_site_name(context)
# append a group for "Administration" & "Applications"
self.children.append(modules.Group(
_('Group: Administration & Applications'),
column=1,
collapsible=False,
children = [
modules.AppList(
_('Administration'),
column=1,
collapsible=True,
css_classes=('collapse closed',),
models=('django.contrib.*',),
),
modules.AppList(
_('Applications'),
column=1,
collapsible=False,
exclude=('django.contrib.*',),
)
]
))
# append an app list module for "Administration"
self.children.append(modules.ModelList(
_('ModelList: Administration'),
column=1,
collapsible=False,
models=('django.contrib.*',),
))
# append another link list module for "support".
self.children.append(modules.LinkList(
_('Media Management'),
column=2,
children=[
{
'title': _('FileBrowser'),
'url': '/admin/filebrowser/browse/',
'external': False,
},
]
))
# append another link list module for "support".
self.children.append(modules.LinkList(
_('Support'),
column=2,
children=[
{
'title': _('koalixcrm documentation'),
'url': 'http://docs.koalix.org/',
'external': True,
},
{
'title': _('koalixcrm "koalixcrm-user" mailing list'),
'url': 'http://groups.google.com/group/koalixcrm-users',
'external': True,
},
]
))
# append a feed module
self.children.append(modules.Feed(
title=_('Latest koalixcrm News'),
column=2,
feed_url='http://www.koalix.org/projects/koalixcrm/news.atom',
limit=5
))
# append a recent actions module
self.children.append(modules.RecentActions(
_('Recent Actions'),
limit=5,
collapsible=False,
column=3,
))