|
@@ -1,34 +0,0 @@
|
|
|
-from django.core.management.base import AppCommand
|
|
|
-from django.utils.encoding import force_unicode
|
|
|
-from django.utils.text import capfirst
|
|
|
-
|
|
|
-MODULE_TEMPLATE = ''' {%% if perms.%(app)s.%(addperm)s or perms.%(app)s.%(changeperm)s %%}
|
|
|
- <tr>
|
|
|
- <th>{%% if perms.%(app)s.%(changeperm)s %%}<a href="%(app)s/%(mod)s/">{%% endif %%}%(name)s{%% if perms.%(app)s.%(changeperm)s %%}</a>{%% endif %%}</th>
|
|
|
- <td class="x50">{%% if perms.%(app)s.%(addperm)s %%}<a href="%(app)s/%(mod)s/add/" class="addlink">{%% endif %%}Add{%% if perms.%(app)s.%(addperm)s %%}</a>{%% endif %%}</td>
|
|
|
- <td class="x75">{%% if perms.%(app)s.%(changeperm)s %%}<a href="%(app)s/%(mod)s/" class="changelink">{%% endif %%}Change{%% if perms.%(app)s.%(changeperm)s %%}</a>{%% endif %%}</td>
|
|
|
- </tr>
|
|
|
- {%% endif %%}'''
|
|
|
-
|
|
|
-class Command(AppCommand):
|
|
|
- help = 'Prints the admin-index template snippet for the given app name(s).'
|
|
|
-
|
|
|
- def handle_app(self, app, **options):
|
|
|
- from django.db.models import get_models
|
|
|
- output = []
|
|
|
- app_models = get_models(app)
|
|
|
- app_label = app_models[0]._meta.app_label
|
|
|
- output.append('{%% if perms.%s %%}' % app_label)
|
|
|
- output.append('<div class="module"><h2>%s</h2><table>' % app_label.title())
|
|
|
- for model in app_models:
|
|
|
- if model._meta.admin:
|
|
|
- output.append(MODULE_TEMPLATE % {
|
|
|
- 'app': app_label,
|
|
|
- 'mod': model._meta.module_name,
|
|
|
- 'name': force_unicode(capfirst(model._meta.verbose_name_plural)),
|
|
|
- 'addperm': model._meta.get_add_permission(),
|
|
|
- 'changeperm': model._meta.get_change_permission(),
|
|
|
- })
|
|
|
- output.append('</table></div>')
|
|
|
- output.append('{% endif %}')
|
|
|
- return '\n'.join(output)
|