OpenDroneMap-WebODM/app/admin.py

62 wiersze
2.5 KiB
Python
Czysty Zwykły widok Historia

2016-08-10 20:23:17 +00:00
from django.contrib import admin
from guardian.admin import GuardedModelAdmin
2017-07-21 20:48:01 +00:00
from app.models import Preset
from .models import Project, Task, ImageUpload, Setting, Theme
2017-11-06 22:43:47 +00:00
from django import forms
from codemirror2.widgets import CodeMirrorEditor
admin.site.register(Project, GuardedModelAdmin)
class TaskAdmin(admin.ModelAdmin):
def has_add_permission(self, request):
return False
admin.site.register(Task, TaskAdmin)
class ImageUploadAdmin(admin.ModelAdmin):
readonly_fields = ('image',)
admin.site.register(ImageUpload, ImageUploadAdmin)
2017-07-21 20:48:01 +00:00
admin.site.register(Preset, admin.ModelAdmin)
class SettingAdmin(admin.ModelAdmin):
2017-11-06 22:43:47 +00:00
def has_add_permission(self, request):
# if there's already an entry, do not allow adding
count = Setting.objects.all().count()
return count == 0
admin.site.register(Setting, SettingAdmin)
2017-11-06 22:43:47 +00:00
class ThemeModelForm(forms.ModelForm):
css = forms.CharField(help_text="Enter custom CSS",
required=False,
widget=CodeMirrorEditor(options={'mode': 'css', 'lineNumbers': True}))
html_before_header = forms.CharField(help_text="HTML that will be displayed above site header",
required=False,
widget=CodeMirrorEditor(options={'mode': 'xml', 'lineNumbers': True}))
html_after_header = forms.CharField(help_text="HTML that will be displayed after site header",
required=False,
widget=CodeMirrorEditor(options={'mode': 'xml', 'lineNumbers': True}))
html_after_body = forms.CharField(help_text="HTML that will be displayed after the </body> tag",
required=False,
widget=CodeMirrorEditor(options={'mode': 'xml', 'lineNumbers': True}))
2017-11-07 16:54:01 +00:00
html_footer = forms.CharField(help_text="HTML that will be displayed in the footer. You can also use the special tags:"
"<p class='help'>{ORGANIZATION}: show a link to your organization.</p>"
"<p class='help'>{YEAR}: show current year</p>",
2017-11-06 22:43:47 +00:00
required=False,
widget=CodeMirrorEditor(options={'mode': 'xml', 'lineNumbers': True}))
class Meta:
model = Theme
fields = '__all__'
class ThemeAdmin(admin.ModelAdmin):
form = ThemeModelForm
2017-11-07 21:48:27 +00:00
2017-11-06 22:43:47 +00:00
admin.site.register(Theme, ThemeAdmin)