mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
Convert table config updates to use REST API
This commit is contained in:
@@ -168,8 +168,14 @@ class TableConfigForm(BootstrapMixin, forms.Form):
|
||||
)
|
||||
|
||||
def __init__(self, table, *args, **kwargs):
|
||||
self.table = table
|
||||
|
||||
super().__init__(*args, **kwargs)
|
||||
|
||||
# Initialize columns field based on table attributes
|
||||
self.fields['columns'].choices = table.configurable_columns
|
||||
self.fields['columns'].initial = table.visible_columns
|
||||
|
||||
@property
|
||||
def table_name(self):
|
||||
return self.table.__class__.__name__
|
||||
|
||||
@@ -317,23 +317,6 @@ class ObjectListView(ObjectPermissionRequiredMixin, View):
|
||||
|
||||
return render(request, self.template_name, context)
|
||||
|
||||
@method_decorator(login_required)
|
||||
def post(self, request):
|
||||
|
||||
# Update the user's table configuration
|
||||
table = self.table(self.queryset)
|
||||
form = TableConfigForm(table=table, data=request.POST)
|
||||
preference_name = f"tables.{self.table.__name__}.columns"
|
||||
|
||||
if form.is_valid():
|
||||
if 'set' in request.POST:
|
||||
request.user.config.set(preference_name, form.cleaned_data['columns'], commit=True)
|
||||
elif 'clear' in request.POST:
|
||||
request.user.config.clear(preference_name, commit=True)
|
||||
messages.success(request, "Your preferences have been updated.")
|
||||
|
||||
return redirect(request.get_full_path())
|
||||
|
||||
def extra_context(self):
|
||||
return {}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user