mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-21 02:08:59 +02:00
23 lines
833 B
Python
23 lines
833 B
Python
from django.contrib import admin
|
|
from django import forms
|
|
from allianceauth import hooks
|
|
from .models import NameFormatConfig
|
|
|
|
|
|
class NameFormatConfigForm(forms.ModelForm):
|
|
def __init__(self, *args, **kwargs):
|
|
super(NameFormatConfigForm, self).__init__(*args, **kwargs)
|
|
SERVICE_CHOICES = [(s.name, s.name) for h in hooks.get_hooks('services_hook') for s in [h()]]
|
|
if self.instance.id:
|
|
current_choice = (self.instance.service_name, self.instance.service_name)
|
|
if current_choice not in SERVICE_CHOICES:
|
|
SERVICE_CHOICES.append(current_choice)
|
|
self.fields['service_name'] = forms.ChoiceField(choices=SERVICE_CHOICES)
|
|
|
|
|
|
class NameFormatConfigAdmin(admin.ModelAdmin):
|
|
form = NameFormatConfigForm
|
|
|
|
|
|
admin.site.register(NameFormatConfig, NameFormatConfigAdmin)
|