def __init__(self, request, *args, **kwargs): # Obtain list of projects self.target_choices = common.get_project_list_choices(request) # Obtain list of dsl filters self.dsl_filter_choices = common.get_dsl_filter_list_choices(request) # Obtain list of object types self.object_type_choices = common.get_object_type_choices(request) # Initialization super(CreateSimplePolicy, self).__init__(request, *args, **kwargs) # Overwrite target_id input form self.fields['target_id'] = forms.ChoiceField(choices=self.target_choices, label=_("Project"), help_text=_("The project where the rule will be apply."), required=True) # Overwrite filter_id input form self.fields['filter_id'] = forms.ChoiceField(choices=self.dsl_filter_choices, label=_("Filter"), help_text=_("The id of the filter which will be used."), required=True) # Overwrite object_type input form self.fields['object_type'] = forms.ChoiceField(choices=self.object_type_choices, label=_("Object Type"), help_text=_("The type of object the rule will be applied to."), required=False)
def __init__(self, request, *args, **kwargs): # Obtain list of object types self.object_type_choices = common.get_object_type_choices(request) # initialization super(UpdatePolicy, self).__init__(request, *args, **kwargs) # overwrite object_type input form self.fields['object_type'] = forms.ChoiceField(choices=self.object_type_choices, label=_("Object Type"), help_text=_("The type of object the rule will be applied to."), required=False)
def get_data(self, request, policy_id): response = api.dsl_get_static_policy(request, policy_id) data = json.loads(response.text) policy = StaticPolicy(data['id'], data['target_id'], data['target_name'], data['filter_name'], data['object_type'], data['object_size'], data['execution_server'], data['execution_server_reverse'], data['execution_order'], data['params']) # Overwrite choices for object_type choices = common.get_object_type_choices(request) self.table.columns['object_type'].form_field.choices = choices return policy