diff --git a/src/servala/core/crd.py b/src/servala/core/crd.py index fe8edbb..5d5c34e 100644 --- a/src/servala/core/crd.py +++ b/src/servala/core/crd.py @@ -327,18 +327,6 @@ class CrdModelFormMixin: field.widget = forms.HiddenInput() field.required = False - # Mark advanced fields with a CSS class and data attribute - for name, field in self.fields.items(): - if self.is_field_advanced(name): - field.widget.attrs.update( - { - "class": ( - field.widget.attrs.get("class", "") + " advanced-field" - ).strip(), - "data-advanced": "true", - } - ) - if self.instance and self.instance.pk: self.fields["name"].disabled = True self.fields["name"].help_text = _("Name cannot be changed after creation.") @@ -355,17 +343,6 @@ class CrdModelFormMixin: return True return False - def is_field_advanced(self, field_name): - advanced_fields = getattr(self, "ADVANCED_FIELDS", []) - return field_name in advanced_fields or any( - field_name.startswith(f"{af}.") for af in advanced_fields - ) - - def are_all_fields_advanced(self, field_list): - if not field_list: - return False - return all(self.is_field_advanced(field_name) for field_name in field_list) - def get_fieldsets(self): fieldsets = [] @@ -381,7 +358,6 @@ class CrdModelFormMixin: "fields": general_fields, "fieldsets": [], "has_mandatory": self.has_mandatory_fields(general_fields), - "is_advanced": self.are_all_fields_advanced(general_fields), } if all( [ @@ -448,9 +424,6 @@ class CrdModelFormMixin: title = f"{fieldset['title']}: {sub_fieldset['title']}: " for field in sub_fieldset["fields"]: self.strip_title(field, title) - sub_fieldset["is_advanced"] = self.are_all_fields_advanced( - sub_fieldset["fields"] - ) nested_fieldsets_list.append(sub_fieldset) fieldset["fieldsets"] = nested_fieldsets_list @@ -467,8 +440,6 @@ class CrdModelFormMixin: all_fields.extend(sub_fieldset["fields"]) fieldset["has_mandatory"] = self.has_mandatory_fields(all_fields) - fieldset["is_advanced"] = self.are_all_fields_advanced(all_fields) - fieldsets.append(fieldset) # Add 'others' tab if there are any fields @@ -479,7 +450,6 @@ class CrdModelFormMixin: "fields": others, "fieldsets": [], "has_mandatory": self.has_mandatory_fields(others), - "is_advanced": self.are_all_fields_advanced(others), } ) @@ -543,7 +513,7 @@ class CrdModelFormMixin: pass -def generate_model_form_class(model, advanced_fields=None): +def generate_model_form_class(model): meta_attrs = { "model": model, "fields": "__all__", @@ -551,7 +521,6 @@ def generate_model_form_class(model, advanced_fields=None): fields = { "Meta": type("Meta", (object,), meta_attrs), "__module__": "crd_models", - "ADVANCED_FIELDS": advanced_fields or [], } class_name = f"{model.__name__}ModelForm" return ModelFormMetaclass(class_name, (CrdModelFormMixin, ModelForm), fields) diff --git a/src/servala/core/models/service.py b/src/servala/core/models/service.py index 3af8c89..d03ef6b 100644 --- a/src/servala/core/models/service.py +++ b/src/servala/core/models/service.py @@ -360,16 +360,6 @@ class ServiceDefinition(ServalaModelMixin, models.Model): null=True, blank=True, ) - advanced_fields = models.JSONField( - verbose_name=_("Advanced fields"), - help_text=_( - "Array of field names that should be hidden behind an 'Advanced' toggle. " - "Use dot notation (e.g., ['spec.parameters.monitoring.enabled', 'spec.parameters.backup.schedule'])" - ), - null=True, - blank=True, - default=list, - ) service = models.ForeignKey( to="Service", on_delete=models.CASCADE, @@ -510,10 +500,7 @@ class ControlPlaneCRD(ServalaModelMixin, models.Model): if not self.django_model: return - advanced_fields = self.service_definition.advanced_fields or [] - return generate_model_form_class( - self.django_model, advanced_fields=advanced_fields - ) + return generate_model_form_class(self.django_model) class ServiceOffering(ServalaModelMixin, models.Model): diff --git a/src/servala/frontend/templates/includes/tabbed_fieldset_form.html b/src/servala/frontend/templates/includes/tabbed_fieldset_form.html index 74fa22a..c34c41a 100644 --- a/src/servala/frontend/templates/includes/tabbed_fieldset_form.html +++ b/src/servala/frontend/templates/includes/tabbed_fieldset_form.html @@ -6,22 +6,10 @@ {% if form_action %}action="{{ form_action }}"{% endif %}> {% csrf_token %} {% include "frontend/forms/errors.html" %} - {% if form.ADVANCED_FIELDS %} -
- -
- {% endif %}