0.0.2 init, blocks prepare
This commit is contained in:
@@ -1,8 +1,75 @@
|
||||
from sets.admin import *
|
||||
from .models import *
|
||||
from django.contrib import admin
|
||||
from django.forms import widgets
|
||||
# from nested_inline.admin import NestedStackedInline, NestedTabularInline, NestedModelAdmin, NestedInline
|
||||
from super_inlines.admin import SuperInlineModelAdmin, SuperModelAdmin
|
||||
|
||||
|
||||
def sets_for_formfield_for_dbfield(field, db_field):
|
||||
if db_field.name == 'url' or db_field.name == 'name' or db_field.name == 'title' or db_field.name == 'name_plural':
|
||||
field.widget = widgets.TextInput(attrs={'style': 'width: 30%; height: 20px;'})
|
||||
if db_field.name == 'description':
|
||||
field.widget = widgets.Textarea(attrs={'style': 'width: 30%; height: 100px;'})
|
||||
return field
|
||||
|
||||
|
||||
class Admin_Inline_WidgetForBlock(SuperInlineModelAdmin, Admin_Trans_BaseIconStackedInline):
|
||||
# class Admin_Inline_WidgetForBlock(Admin_Trans_BaseIconTabularInline, SuperInlineModelAdmin):
|
||||
|
||||
def formfield_for_dbfield(self, db_field, request, **kwargs):
|
||||
field = super(Admin_Inline_WidgetForBlock, self).formfield_for_dbfield(db_field, request, **kwargs)
|
||||
return sets_for_formfield_for_dbfield(field, db_field)
|
||||
# return field
|
||||
|
||||
model = WidgetForBlock
|
||||
extra = 0
|
||||
# fields = ['title', 'description', 'picture', 'bg_color', 'but_title', 'but_color', 'url']
|
||||
fieldsets = [
|
||||
(None, {
|
||||
'classes': [],
|
||||
'fields': [
|
||||
('title', 'description', 'picture'),
|
||||
('bg_color', ),
|
||||
('but_title', 'but_color'),
|
||||
('url',),
|
||||
]
|
||||
})
|
||||
]
|
||||
|
||||
|
||||
|
||||
class Admin_StackedInline_Block(Admin_Trans_GenericBaseIconStackedInline, SuperInlineModelAdmin):
|
||||
# class Admin_StackedInline_Block(Admin_Trans_GenericBaseIconStackedInline):
|
||||
|
||||
def formfield_for_dbfield(self, db_field, request, **kwargs):
|
||||
field = super(Admin_StackedInline_Block, self).formfield_for_dbfield(db_field, request, **kwargs)
|
||||
return sets_for_formfield_for_dbfield(field, db_field)
|
||||
|
||||
model = Block
|
||||
extra = 0
|
||||
fieldsets = [
|
||||
(None, {
|
||||
'classes': [],
|
||||
'fields': [
|
||||
('block_type', 'title', 'description', 'picture'),
|
||||
('bg_color', ),
|
||||
('but_title', 'but_color'),
|
||||
('url',),
|
||||
('child_in_row_count',),
|
||||
]
|
||||
})
|
||||
]
|
||||
|
||||
inlines = [Admin_Inline_WidgetForBlock]
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# class Admin_StaticPage(NestedModelAdmin, Admin_Trans_BaseModelViewPage):
|
||||
class Admin_StaticPage(SuperModelAdmin, Admin_Trans_BaseModelViewPage):
|
||||
|
||||
class Admin_StaticPage(Admin_Trans_BaseModelViewPage):
|
||||
|
||||
fieldsets = [
|
||||
(None, {
|
||||
@@ -36,6 +103,8 @@ class Admin_StaticPage(Admin_Trans_BaseModelViewPage):
|
||||
search_fields = ['name', 'title']
|
||||
# filter_horizontal = ['options']
|
||||
|
||||
inlines = [Admin_StackedInline_Block]
|
||||
|
||||
def has_delete_permission(self, request, obj=None):
|
||||
if request.user.is_superuser:
|
||||
return True
|
||||
@@ -45,23 +114,11 @@ class Admin_StaticPage(Admin_Trans_BaseModelViewPage):
|
||||
|
||||
admin.site.register(StaticPage,Admin_StaticPage)
|
||||
|
||||
class Admin_Block(Admin_BaseBlock):
|
||||
class Admin_Block(Admin_Trans_BaseModelViewPage):
|
||||
|
||||
def get_fieldsets(self, request, obj=None):
|
||||
fieldsets = super(type(self), self).get_fieldsets(request, obj)
|
||||
if not request.user.is_superuser and obj.name and obj.name in ('About US', 'machines', 'works'):
|
||||
fieldsets[0][1]['fields'].pop(0)
|
||||
fieldsets.insert(
|
||||
1, ('Контент', {
|
||||
'classes': ['wide'],
|
||||
'fields': (
|
||||
'title', 'description', 'text',
|
||||
'picture',
|
||||
)
|
||||
|
||||
})
|
||||
)
|
||||
return fieldsets
|
||||
|
||||
inlines = [Admin_StackedInline_Block]
|
||||
|
||||
def has_delete_permission(self, request, obj=None):
|
||||
if request.user.is_superuser:
|
||||
|
||||
Reference in New Issue
Block a user