def __init__(self, *args, **kwargs): super(TreeEditor, self).__init__(*args, **kwargs) self.list_display = list(self.list_display) if 'indented_short_title' not in self.list_display: if self.list_display[0] == 'action_checkbox': self.list_display[1] = 'indented_short_title' else: self.list_display[0] = 'indented_short_title' self.list_display_links = ('indented_short_title', ) opts = self.model._meta self.change_list_template = [ 'admin/feincms/%s/%s/tree_editor.html' % (opts.app_label, opts.object_name.lower()), 'admin/feincms/%s/tree_editor.html' % opts.app_label, 'admin/feincms/tree_editor.html', ] self.object_change_permission =\ opts.app_label + '.' + get_permission_codename('change', opts) self.object_add_permission =\ opts.app_label + '.' + get_permission_codename('add', opts) self.object_delete_permission =\ opts.app_label + '.' + get_permission_codename('delete', opts)
def __init__(self, *args, **kwargs): super(TreeEditor, self).__init__(*args, **kwargs) self.list_display = list(self.list_display) if 'indented_short_title' not in self.list_display: if self.list_display[0] == 'action_checkbox': self.list_display[1] = 'indented_short_title' else: self.list_display[0] = 'indented_short_title' self.list_display_links = ('indented_short_title',) opts = self.model._meta self.change_list_template = [ 'admin/feincms/%s/%s/tree_editor.html' % ( opts.app_label, opts.object_name.lower()), 'admin/feincms/%s/tree_editor.html' % opts.app_label, 'admin/feincms/tree_editor.html', ] self.object_change_permission =\ opts.app_label + '.' + get_permission_codename('change', opts) self.object_add_permission =\ opts.app_label + '.' + get_permission_codename('add', opts) self.object_delete_permission =\ opts.app_label + '.' + get_permission_codename('delete', opts)
def show_content_type_selection_widget(context, region): """ {% show_content_type_selection_widget region %} """ if 'request' in context: user = context['request'].user elif 'user' in context: user = context['user'] else: user = None grouped = {} ungrouped = [] if user: for ct in region._content_types: # Skip cts that we shouldn't be adding anyway opts = ct._meta perm = opts.app_label + "." + get_permission_codename('add', opts) if not user.has_perm(perm): continue ct_info = (ct.__name__.lower(), ct._meta.verbose_name) if hasattr(ct, 'optgroup'): if ct.optgroup in grouped: grouped[ct.optgroup].append(ct_info) else: grouped[ct.optgroup] = [ct_info] else: ungrouped.append(ct_info) return {'grouped': grouped, 'ungrouped': ungrouped}
def can_add_content(self, request, content_type): perm = '.'.join((content_type._meta.app_label, get_permission_codename('add', content_type._meta))) return request.user.has_perm(perm)
def can_add_content(self, request, content_type): perm = '.'.join(( content_type._meta.app_label, get_permission_codename('add', content_type._meta))) return request.user.has_perm(perm)