205 lines
5.9 KiB
Python
205 lines
5.9 KiB
Python
from django.contrib import admin
|
|
from .models import *
|
|
|
|
|
|
class PersonAdmin(admin.ModelAdmin):
|
|
search_fields = ['title', 'first_name', 'last_name', 'organisation', 'position', 'country', 'contact_email']
|
|
|
|
|
|
class ResourceAdmin(admin.ModelAdmin):
|
|
search_fields = ['title', 'url', 'citation', 'abstract']
|
|
|
|
|
|
class RangeAdmin(admin.ModelAdmin):
|
|
search_fields = ['name', 'countries']
|
|
|
|
|
|
class FieldAdmin(admin.ModelAdmin):
|
|
search_fields = ['name']
|
|
|
|
|
|
class CountriesAdmin(admin.ModelAdmin):
|
|
search_fields = ['short_name', 'formal_name', 'membership_within_un_system', 'continent', 'eu_ms', 'eea_ms', 'iso3',
|
|
'iso2']
|
|
|
|
|
|
class GMBA_SpeciesGroupAdmin(admin.ModelAdmin):
|
|
search_fields = ['species_group']
|
|
|
|
|
|
class LanguageAdmin(admin.ModelAdmin):
|
|
search_fields = ['language']
|
|
|
|
|
|
class PeopleStatusAdmin(admin.ModelAdmin):
|
|
search_fields = ['status']
|
|
|
|
|
|
class RangeTypeAdmin(admin.ModelAdmin):
|
|
search_fields = ['range_type']
|
|
|
|
|
|
class RedListCategoryAdmin(admin.ModelAdmin):
|
|
search_fields = ['red_list_category']
|
|
|
|
|
|
class SourceAdmin(admin.ModelAdmin):
|
|
search_fields = ['source']
|
|
|
|
|
|
class TaxonStatusAdmin(admin.ModelAdmin):
|
|
search_fields = ['taxon_status']
|
|
|
|
|
|
class TaxonUnitAdmin(admin.ModelAdmin):
|
|
search_fields = ['taxon_status']
|
|
|
|
|
|
class TrendsQuantityAdmin(admin.ModelAdmin):
|
|
search_fields = ['trend']
|
|
|
|
|
|
class TrendsQualityAdmin(admin.ModelAdmin):
|
|
search_fields = ['trend']
|
|
|
|
|
|
class RepositoryAdmin(admin.ModelAdmin):
|
|
search_fields = ['repository_name', 'repository_url']
|
|
|
|
|
|
class GMBAFunctionAdmin(admin.ModelAdmin):
|
|
search_fields = ['gmba_function']
|
|
|
|
|
|
class OrganizationAdmin(admin.ModelAdmin):
|
|
search_fields = ['organisation_search', 'org_alpjha_search', 'organization_2', 'organization_3', 'subject']
|
|
|
|
|
|
class RangeOnlineInfoAdmin(admin.ModelAdmin):
|
|
search_fields = ['info_source']
|
|
|
|
|
|
class PeaksAdmin(admin.ModelAdmin):
|
|
search_fields = ['point_name', 'link']
|
|
|
|
|
|
class SearchAdmin(admin.ModelAdmin):
|
|
search_fields = ['search_string', 'search_date', 'result']
|
|
list_display = ['search_string', 'search_date', 'result']
|
|
|
|
def search_string(self, obj):
|
|
return str(obj.search_string) if obj else '--'
|
|
|
|
def search_date(self, obj):
|
|
return str(obj.search_date) if obj else '--'
|
|
|
|
def result(self, obj):
|
|
return str(obj.result) if obj else '--'
|
|
|
|
|
|
class SpeciesAdmin(admin.ModelAdmin):
|
|
search_fields = ['scientific_name', 'class_', 'english_name', 'url']
|
|
|
|
|
|
class TaxonRangeAdmin(admin.ModelAdmin):
|
|
model = TaxonRange
|
|
search_fields = ['range__range_name', 'taxon', 'subrange_or_region', 'distribution', 'source', 'remarks']
|
|
list_display = ['range_name', 'taxon']
|
|
|
|
def range_name(self, obj):
|
|
return str(obj.range.range_name) if obj and obj.range and obj.range.range_name else 'None'
|
|
|
|
def taxon(self, obj):
|
|
return str(obj.taxon) if obj.taxon else 'None'
|
|
|
|
|
|
class RangeNameTranslationAdmin(admin.ModelAdmin):
|
|
model = RangeNameTranslation
|
|
search_fields = ['range__range_name', 'language__language']
|
|
list_display = ['range_name', 'language_translation']
|
|
|
|
def range_name(self, obj):
|
|
return str(obj.range.range_name)
|
|
|
|
def country_name(self, obj):
|
|
return str(obj.language.language) if obj.language else 'None'
|
|
|
|
|
|
class PeopleRangeAdmin(admin.ModelAdmin):
|
|
model = Range
|
|
list_display = ['person', 'range_name', ]
|
|
|
|
def range_name(self, obj):
|
|
return str(obj.range.name)
|
|
|
|
|
|
class SpeciesRangeAdmin(admin.ModelAdmin):
|
|
model = SpeciesRange
|
|
search_fields = ['scientific_name__scientific_name', 'range__range_name']
|
|
list_display = ['scientific_name', 'range_name']
|
|
|
|
def scientific_name(self, obj):
|
|
return str(obj.scientific_name.scientific_name) if obj and obj.scientific_name and obj.scientific_name.scientific_name else '--'
|
|
|
|
def range_name(self, obj):
|
|
return str(obj.range) if obj.range else '--'
|
|
|
|
|
|
class RangeCountryAdmin(admin.ModelAdmin):
|
|
model = RangeCountry
|
|
search_fields = ['range__range_name', 'country__short_name']
|
|
list_display = ['range_name', 'country_name']
|
|
|
|
def range_name(self, obj):
|
|
return str(obj.range.range_name)
|
|
|
|
def country_name(self, obj):
|
|
return str(obj.country.short_name) if obj.country else 'None'
|
|
|
|
|
|
# Register your models here.
|
|
admin.site.register(Person, PersonAdmin)
|
|
admin.site.register(Resource, ResourceAdmin)
|
|
admin.site.register(Range, RangeAdmin)
|
|
admin.site.register(Method)
|
|
admin.site.register(Scale)
|
|
admin.site.register(Taxon)
|
|
admin.site.register(Field, FieldAdmin)
|
|
|
|
|
|
# LU models
|
|
admin.site.register(Country, CountriesAdmin)
|
|
admin.site.register(GMBA_SpeciesGroup, GMBA_SpeciesGroupAdmin)
|
|
admin.site.register(Language, LanguageAdmin)
|
|
admin.site.register(PeopleStatus, PeopleStatusAdmin)
|
|
admin.site.register(RangeType, RangeTypeAdmin)
|
|
admin.site.register(RedListCategory, RedListCategoryAdmin)
|
|
admin.site.register(Source, SourceAdmin)
|
|
admin.site.register(TaxonStatus, TaxonStatusAdmin)
|
|
admin.site.register(TaxonUnit, TaxonUnitAdmin)
|
|
admin.site.register(TrendsQuality, TrendsQualityAdmin)
|
|
admin.site.register(TrendsQuantity, TrendsQuantityAdmin)
|
|
|
|
# Others
|
|
admin.site.register(Repository, RepositoryAdmin)
|
|
admin.site.register(GMBA_function, GMBAFunctionAdmin)
|
|
admin.site.register(Organization, OrganizationAdmin)
|
|
admin.site.register(RangeOnlineInfo, RangeOnlineInfoAdmin)
|
|
|
|
admin.site.register(RangeNameTranslation, RangeNameTranslationAdmin)
|
|
admin.site.register(AddElevation)
|
|
admin.site.register(GMBA_V2_Centroid)
|
|
admin.site.register(ImportGeom210915)
|
|
admin.site.register(Peak, PeaksAdmin)
|
|
admin.site.register(Search, SearchAdmin)
|
|
admin.site.register(TaxaPeople)
|
|
# admin.site.register(RangesPeople)
|
|
# admin.site.register(ResourcesPeople)
|
|
admin.site.register(ScalesPeople)
|
|
admin.site.register(Species, SpeciesAdmin)
|
|
admin.site.register(PeopleFunction)
|
|
admin.site.register(SpeciesRange, SpeciesRangeAdmin)
|
|
admin.site.register(RangesPeople, PeopleRangeAdmin)
|
|
admin.site.register(TaxonRange, TaxonRangeAdmin)
|
|
admin.site.register(PeopleResource)
|
|
admin.site.register(RangeCountry, RangeCountryAdmin)
|