Source code for oioioi.ipauthsync.admin

from oioioi.base import admin
from oioioi.base.forms import AlwaysChangedModelForm
from oioioi.ipauthsync.models import IpAuthSyncConfig


[docs]class IpAuthSyncConfigInline(admin.TabularInline):
[docs] model = IpAuthSyncConfig
[docs] extra = 0
[docs] form = AlwaysChangedModelForm
[docs] def has_add_permission(self, request, obj=None): return request.user.is_superuser
[docs] def has_change_permission(self, request, obj=None): return request.user.is_superuser
[docs] def has_delete_permission(self, request, obj=None): return request.user.is_superuser
[docs]class ContestAdminWithIpAuthSyncInlineMixin(object): """Adds :class:`~oioioi.ipauthsync.models.IpAuthSyncConfig` to an admin panel. """ def __init__(self, *args, **kwargs): super(ContestAdminWithIpAuthSyncInlineMixin, self).__init__(*args, **kwargs) self.inlines = self.inlines + [IpAuthSyncConfigInline]