network_inventory/network_inventory/inventory/admin.py

362 lines
9.9 KiB
Python
Raw Normal View History

2017-12-22 17:02:24 +01:00
from django.contrib import admin
2019-06-16 14:58:53 +02:00
from guardian.admin import GuardedModelAdmin
import nested_admin
2019-07-25 20:13:04 +02:00
from .models import (Backup, BackupMethod, TargetDevice, Device, RamType, Ram,
DiskType, Owner, Disk, CpuArchitecture, CpuManufacturer,
Cpu, OperatingSystem, Computer, Raid,
2019-07-25 20:13:04 +02:00
ComputerDiskRelation, DisksInRaid, RaidType,
ComputerCpuRelation, ComputerSoftwareRelation,
ComputerRamRelation, Warranty, WarrantyType, Customer,
DeviceCategory, ConnectedDevice, DeviceInNet, Net,
DeviceManufacturer, AdGroup, MailGroup, Location,
MailAlias, IpStatus, Notification, NotificationType,
SoftwareArchitecture, SoftwareCategory, Software, User,
2019-12-29 23:54:27 +01:00
UserInAdGroup, UserInMailGroup, UserLicense,
ComputerLicense, LicenseWithComputer, LicenseWithUser)
2019-06-16 14:58:53 +02:00
class CustomerAdmin(GuardedModelAdmin):
pass
2019-06-10 21:56:21 +02:00
class CpuAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class CpuArchitectureAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class BackupMethodAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class CpuManufacturerAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class DeviceCategoryAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class DeviceManufacturerAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class IpStatusAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
2019-12-29 23:54:27 +01:00
class LicenseWithComputerAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class LicenseWithUserAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
2019-06-10 21:56:21 +02:00
class MailAliasAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class NotificationTypeAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class NotificationAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class OperatingSystemAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class RamModuleAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class RaidTypeAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class SoftwareArchitectureAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class SoftwareCategoryAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class TargetDeviceAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class DiskTypeAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class RamTypeAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class UserInAdGroupAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class UserInMailGroupAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class WarrantyTypeAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class DiskInRaidAdmin(admin.ModelAdmin):
def get_model_perms(self, request):
"""
Return empty perms dict thus hiding the model from admin index.
"""
return {}
class SoftwareInLine(nested_admin.NestedStackedInline):
2019-06-10 21:56:21 +02:00
model = ComputerSoftwareRelation
extra = 0
verbose_name_plural = 'Software'
2017-12-22 17:02:24 +01:00
class RamInLine(nested_admin.NestedStackedInline):
2017-12-22 17:02:24 +01:00
model = ComputerRamRelation
extra = 0
verbose_name_plural = 'RAM Modules'
2017-12-22 17:02:24 +01:00
class DiskInLine(nested_admin.NestedStackedInline):
2017-12-22 17:02:24 +01:00
model = ComputerDiskRelation
extra = 0
2017-12-22 17:02:24 +01:00
verbose_name_plural = 'Disks'
class DisksInRaidInLine(nested_admin.NestedStackedInline):
model = DisksInRaid
extra = 0
verbose_name_plural = 'Disks in RAID'
class CpusInLine(nested_admin.NestedStackedInline):
model = ComputerCpuRelation
extra = 0
verbose_name_plural = 'CPUs'
class RaidInLine(nested_admin.NestedStackedInline):
model = Raid
2019-06-10 21:56:21 +02:00
extra = 0
verbose_name_plural = 'RAID'
inlines = (DisksInRaidInLine,)
2017-12-22 17:02:24 +01:00
class DeviceInNetInline(nested_admin.NestedStackedInline):
2019-06-10 21:56:21 +02:00
model = DeviceInNet
extra = 0
verbose_name_plural = 'Nets'
2019-12-29 23:54:27 +01:00
class LicenseWithComputerInLine(nested_admin.NestedStackedInline):
model = LicenseWithComputer
extra = 0
verbose_name_plural = 'Licenses'
class ComputerAdmin(nested_admin.NestedModelAdmin):
list_display = ('name', 'host')
2019-06-10 21:56:21 +02:00
inlines = (SoftwareInLine, CpusInLine, RamInLine, DiskInLine, RaidInLine,
2019-12-29 23:54:27 +01:00
DeviceInNetInline, LicenseWithComputerInLine)
2019-06-10 21:56:21 +02:00
class AdGroupInLine(admin.StackedInline):
model = UserInAdGroup
extra = 0
verbose_name_plural = 'AD Groups'
2019-12-29 23:54:27 +01:00
class LicenseWithUserInLine(admin.StackedInline):
model = LicenseWithUser
extra = 0
verbose_name_plural = 'Licenses'
2019-06-10 21:56:21 +02:00
class MailGroupInLine(admin.StackedInline):
model = UserInMailGroup
extra = 0
verbose_name_plural = 'Mail Groups'
class MailAliasInLine(admin.StackedInline):
model = MailAlias
extra = 0
verbose_name_plural = 'Mail Aliases'
class UserAdmin(admin.ModelAdmin):
list_display = ('name', 'customer', 'enabled')
2019-12-29 23:54:27 +01:00
inlines = (AdGroupInLine, MailGroupInLine, MailAliasInLine, LicenseWithUserInLine)
2019-06-10 21:56:21 +02:00
class TargetDeviceInLine(admin.StackedInline):
model = TargetDevice
extra = 0
verbose_name_plural = 'Target Devices'
class BackupAdmin(admin.ModelAdmin):
inlines = (TargetDeviceInLine,)
2019-12-29 23:54:27 +01:00
class UserLicenseAdmin(admin.ModelAdmin):
model = UserLicense
extra = 0
verbose_name_plural = 'User Licenses'
class ComputerLicenseAdmin(admin.ModelAdmin):
model = ComputerLicense
extra = 0
verbose_name_plural = 'Computer Licenses'
2019-06-10 21:56:21 +02:00
admin.site.register(AdGroup)
admin.site.register(Backup, BackupAdmin)
admin.site.register(BackupMethod, BackupMethodAdmin)
admin.site.register(Computer, ComputerAdmin)
2019-12-29 23:54:27 +01:00
admin.site.register(ComputerLicense, ComputerLicenseAdmin)
2019-06-10 21:56:21 +02:00
admin.site.register(ConnectedDevice)
admin.site.register(Cpu, CpuAdmin)
admin.site.register(CpuArchitecture, CpuArchitectureAdmin)
admin.site.register(CpuManufacturer, CpuManufacturerAdmin)
2019-06-16 14:58:53 +02:00
admin.site.register(Customer, CustomerAdmin)
2019-06-10 21:56:21 +02:00
admin.site.register(Device)
admin.site.register(DeviceCategory, DeviceCategoryAdmin)
admin.site.register(DeviceInNet)
admin.site.register(DeviceManufacturer, DeviceManufacturerAdmin)
admin.site.register(Disk)
admin.site.register(DiskType, DiskTypeAdmin)
admin.site.register(IpStatus, IpStatusAdmin)
2019-12-29 23:54:27 +01:00
admin.site.register(LicenseWithComputer, LicenseWithComputerAdmin)
admin.site.register(LicenseWithUser, LicenseWithUserAdmin)
2019-06-10 21:56:21 +02:00
admin.site.register(Location)
admin.site.register(MailAlias, MailAliasAdmin)
admin.site.register(MailGroup)
admin.site.register(Net)
admin.site.register(Notification, NotificationAdmin)
admin.site.register(NotificationType, NotificationTypeAdmin)
admin.site.register(OperatingSystem, OperatingSystemAdmin)
admin.site.register(Owner)
admin.site.register(RaidType, RaidTypeAdmin)
admin.site.register(Ram, RamModuleAdmin)
admin.site.register(RamType, RamTypeAdmin)
admin.site.register(Software)
admin.site.register(SoftwareArchitecture, SoftwareArchitectureAdmin)
admin.site.register(SoftwareCategory, SoftwareCategoryAdmin)
admin.site.register(TargetDevice, TargetDeviceAdmin)
admin.site.register(User, UserAdmin)
admin.site.register(UserInAdGroup, UserInAdGroupAdmin)
admin.site.register(UserInMailGroup, UserInMailGroupAdmin)
2019-12-29 23:54:27 +01:00
admin.site.register(UserLicense, UserLicenseAdmin)
2017-12-22 17:02:24 +01:00
admin.site.register(Warranty)
2019-06-10 21:56:21 +02:00
admin.site.register(WarrantyType, WarrantyTypeAdmin)