class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'iotdeviceregistration' workflow_permission = 'iotdeviceregistration_page' name = CustomStringField(label='NAME', is_disabled_on_start=False, required=True, validators=[DataRequired()]) email = CustomStringField(label='Email', is_disabled_on_start=False, required=True, default='*****@*****.**', validators=[DataRequired(), Email()]) file = FileField(label='File') submit = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'configure_service_requests' workflow_permission = 'configure_service_requests_page' servicenow_url = CustomStringField( label='ServiceNow URL', default=service_requests_config.servicenow_url, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) servicenow_username = CustomStringField( label='ServiceNow User', default=service_requests_config.servicenow_username, is_disabled_on_start=False, is_disabled_on_error=False, required=True) servicenow_secret_file = CustomStringField( label='ServiceNow Secret file and path', default=service_requests_config.servicenow_secret_file, is_disabled_on_start=False, is_disabled_on_error=False, required=True) submit = CustomSubmitField(label='Save', is_disabled_on_start=False, is_disabled_on_error=False)
class GenericFormTemplate(GatewayForm): # When updating the form, remember to make the corresponding changes to the workflow pages workflow_name = 'add_text_record_example' workflow_permission = 'add_text_record_example_page' configuration = Configuration(workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, validators=[], is_disabled_on_start=False, on_complete=['call_view'], enable_on_complete=['view']) view = View(workflow_name=workflow_name, permissions=workflow_permission, label='View', required=True, one_off=True, on_complete=['call_zone'], enable_on_complete=['zone']) zone = Zone(workflow_name=workflow_name, permissions=workflow_permission, label='Zone', required=True, enable_on_complete=['name', 'text', 'submit']) name = CustomStringField(label='Name') text = CustomStringField(label='Text') submit = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'vro_configuration' workflow_permission = 'vro_configuration_page' default_configuration = CustomStringField( label='Default Configuration', default=vro_config.default_configuration, is_disabled_on_start=False, is_disabled_on_error=False, required=True) default_view = CustomStringField(label='vRO Default DNS View', default=vro_config.default_view, is_disabled_on_start=False, is_disabled_on_error=False, required=True) default_zone = CustomStringField(label='vRO Default Zone', default=vro_config.default_zone, is_disabled_on_start=False, is_disabled_on_error=False, required=True) default_reverse_flag = CustomStringField( label='vRO Create PTR Record', default=vro_config.default_reverse_flag, is_disabled_on_start=False, is_disabled_on_error=False, required=True) submit = CustomSubmitField(label='Save', is_disabled_on_start=False, is_disabled_on_error=False)
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'edge_create_internal_ns' workflow_permission = 'edge_create_internal_ns_page' domainlist_name = CustomStringField( label='Domain List Name', is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) domainlist_desc = CustomStringField( label='Domain List Description', is_disabled_on_start=False, is_disabled_on_error=False, required=False, ) sourceType = CustomStringField( label='Domain List Type', default='user', is_disabled_on_start=True, is_disabled_on_error=True, required=True, ) namespaces = EdgeNamespaces(label='Edge Namespaces', is_disabled_on_start=False, workflow_name=workflow_name, permissions=workflow_permission) submit = CustomSubmitField(label='Submit', is_disabled_on_start=False)
class GenericFormTemplate(GatewayForm): """ Form to generate HTML and Javascript for the update_ip4_address_example workflow Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'update_ip4_address_example' workflow_permission = 'update_ip4_address_example_page' configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, clear_below_on_change=False, is_disabled_on_start=False, enable_dependencies={'on_complete': ['ip4_address']}, disable_dependencies={'on_change': ['ip4_address']}, clear_dependencies={'on_change': ['ip4_address']}) ip4_address = IP4Address( workflow_name=workflow_name, permissions=workflow_permission, label='Address', required=True, clear_below_on_change=False, inputs={ 'configuration': 'configuration', 'address': 'ip4_address' }, server_outputs={ 'on_validate': { 'state': 'address_state', 'mac_address': 'mac_address', 'name': 'description' } }, server_side_output_method=get_ip4_address_endpoint, result_decorator=filter_allocated, should_cascade_clear_on_change=True, should_cascade_disable_on_change=True, enable_dependencies={ 'on_complete': ['address_state', 'mac_address', 'description', 'submit'] }, disable_dependencies={ 'on_change': ['address_state', 'mac_address', 'description', 'submit'] }) line_break = PlainHTML('<hr>') address_state = CustomStringField(label='Address State', readonly=True) mac_address = CustomStringField(label='MAC Address') description = CustomStringField(label='Description') submit = SubmitField(label='Update')
class GenericFormTemplate(GatewayForm): """ Form to generate HTML and Javascript for the add_text_record workflow Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'add_text_record' workflow_permission = 'add_text_record_page' configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, clear_below_on_change=False, is_disabled_on_start=False, on_complete=['call_view'], enable_dependencies={'on_complete': ['view']}, disable_dependencies={'on_change': ['view']}, clear_dependencies={'on_change': ['view']} ) view = View( workflow_name=workflow_name, permissions=workflow_permission, label='View', required=True, one_off=True, on_complete=['call_zone'], clear_below_on_change=False, enable_dependencies={'on_complete': ['zone']}, disable_dependencies={'on_change': ['zone']}, clear_dependencies={'on_change': ['zone']}, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True ) zone = Zone( workflow_name=workflow_name, permissions=workflow_permission, label='Zone', required=True, clear_below_on_change=False, enable_dependencies={'on_complete': ['name', 'text', 'submit']}, disable_dependencies={'on_change': ['name', 'text', 'submit']}, clear_dependencies={'on_change': ['name', 'text']}, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True ) name = CustomStringField( label='Name' ) text = CustomStringField( label='Text' ) submit = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): """Form to generate HTML and Javascript for the add_text_record workflow Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = "add_text_record" workflow_permission = "add_text_record_page" configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label="Configuration", required=True, coerce=int, clear_below_on_change=False, is_disabled_on_start=False, on_complete=["call_view"], enable_dependencies={"on_complete": ["view"]}, disable_dependencies={"on_change": ["view"]}, clear_dependencies={"on_change": ["view"]}, ) view = View( workflow_name=workflow_name, permissions=workflow_permission, label="View", required=True, one_off=True, on_complete=["call_zone"], clear_below_on_change=False, enable_dependencies={"on_complete": ["zone"]}, disable_dependencies={"on_change": ["zone"]}, clear_dependencies={"on_change": ["zone"]}, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True, ) zone = Zone( workflow_name=workflow_name, permissions=workflow_permission, label="Zone", required=True, clear_below_on_change=False, enable_dependencies={"on_complete": ["name", "text", "submit"]}, disable_dependencies={"on_change": ["name", "text", "submit"]}, clear_dependencies={"on_change": ["name", "text"]}, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True, ) name = CustomStringField(label="Name") text = CustomStringField(label="Text") submit = SubmitField(label="Submit")
class GenericFormTemplate(GatewayForm): """Form to generate HTML and Javascript for the delete_ip4_address workflow Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = "delete_ip4_address" workflow_permission = "delete_ip4_address_page" configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label="Configuration", required=True, coerce=int, clear_below_on_change=False, is_disabled_on_start=False, enable_dependencies={"on_complete": ["ip4_address"]}, disable_dependencies={"on_change": ["ip4_address"]}, clear_dependencies={"on_change": ["ip4_address"]}, ) ip4_address = IP4Address( workflow_name=workflow_name, permissions=workflow_permission, label="Address", required=True, inputs={"configuration": "configuration", "address": "ip4_address"}, server_outputs={ "on_change": { "state": "address_state", "mac_address": "mac_address", "name": "description", } }, server_side_output_method=get_ip4_address_endpoint, result_decorator=filter_allocated, clear_below_on_change=False, should_cascade_disable_on_change=True, enable_dependencies={"on_complete": ["submit"]}, disable_dependencies={ "on_change": ["address_state", "mac_address", "description", "submit"] }, ) line_break = PlainHTML("<hr>") address_state = CustomStringField(label="Address State", readonly=True) mac_address = CustomStringField(label="MAC Address", readonly=True) description = CustomStringField(label="Description", readonly=True) submit = SubmitField(label="Delete")
class GenericFormTemplate(GatewayForm): # When updating the form, remember to make the corresponding changes to the workflow pages workflow_name = 'add_static_ip4_address_example' workflow_permission = 'add_static_ip4_address_example_page' configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, validators=[], is_disabled_on_start=False, enable_on_complete=['ip4_address'], ) ip4_address = IP4Address( workflow_name=workflow_name, permissions=workflow_permission, label='Address', required=True, inputs={ 'configuration': 'configuration', 'address': 'ip4_address' }, result_decorator=filter_unallocated, on_complete=['call_view'], enable_on_complete=['view', 'mac_address', 'description', 'submit']) mac_address = CustomStringField(label='MAC Address') description = CustomStringField(label='Description') view = View(workflow_name=workflow_name, permissions=workflow_permission, label='View', one_off=True, on_complete=['call_zone'], on_change=['view_changed'], clear_below_on_change=False, enable_on_complete=['zone']) zone = Zone(workflow_name=workflow_name, permissions=workflow_permission, label='Zone', on_change=['reset_hostname'], clear_below_on_change=False, enable_on_complete=['hostname']) hostname = CustomStringField(label='Hostname') submit = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'gitlab_import' workflow_permission = 'gitlab_import_page' default_group = CustomStringField( label='Default GitLab Group', default=gitlab_import_config.default_group, is_disabled_on_start=True, is_disabled_on_error=True, required=True) gitlab_groups = gitlab_import_entities.GitlabGroups( workflow_name=workflow_name, permissions=workflow_permission, label='GitLab Projects/Sub Groups', required=True, coerce=int, validators=[], is_disabled_on_start=False, on_complete=[], clear_below_on_change=False, enable_dependencies={'on_complete': ['submit']}) submit = SubmitField(label='Import')
class GenericFormTemplate(GatewayForm): client_id = CustomStringField( default='b2756813-e562-4d21-837b-33aa1d5456b6', label='Cliend ID') password = PasswordField(label='Security Key', default='c62ba28e-c6a8-4d40-ae50-bf45c47dbfd1') ip_address = IP4Address(label='IP Address', default='10.244.135.248', required=True, result_decorator=None, enable_on_complete=['submit']) port = CustomStringField(default='443', label='Port') submit = SubmitField(label='Login') logout = SubmitField(label='logout')
class GenericFormTemplate(GatewayForm): """Form template to generate html and javascript for page""" workflow_name = "table_component" workflow_permission = "table_component_page" object_type = CustomSelectField( workflow_name=workflow_name, permissions=workflow_permission, label="Object Type", choices_function=get_object_types, required=True, is_disabled_on_start=False, ) keyword = CustomStringField(label="Keyword", is_disabled_on_start=False, required=True) search = CustomSearchButtonField( workflow_name=workflow_name, permissions=workflow_permission, default="Search Objects", inputs={ "keyword": "keyword", "object_type": "object_type" }, server_side_method=find_objects_by_type_endpoint, display_message=True, on_complete=["call_output_table", "call_server_table"], is_disabled_on_start=False, ) output_table = TableField( workflow_name=workflow_name, permissions=workflow_permission, label="", data_function=raw_table_data, on_complete=["custom_js_table_loaded"], ) server_table = TableField( workflow_name=workflow_name, permissions=workflow_permission, label="Server table", server_side_method=server_table_data_endpoint, data_function=raw_table_data, table_features={ "searching": False, "paging": False, "ordering": False, "info": False }, inputs={ "keyword": "keyword", "object_type": "object_type" }, )
class GenericFormTemplate(GatewayForm): # When updating the form, remember to make the corresponding changes to the workflow pages workflow_name = 'register_mac_address' workflow_permission = 'register_mac_address_page' text = get_resource_text() require_message = text['require_message'] mac_address = CustomStringField( label=text['label_mac_address'], default='FF:FF:FF:FF:FF:FF', is_disabled_on_start=False, validators=[DataRequired(message=require_message), MacAddress()]) device_group = CustomSelectField(label=text['label_device_group'], coerce=int, is_disabled_on_start=False, validators=[]) asset_code = CustomStringField( label=text['label_asset_code'], is_disabled_on_start=False, validators=[DataRequired(message=require_message)]) employee_code = CustomStringField( label=text['label_employee_code'], is_disabled_on_start=False, validators=[DataRequired(message=require_message)]) location = CustomSelectField(label=text['label_location'], coerce=int, is_disabled_on_start=False) submit_date = DateTimeField(label=text['label_submit_date'], default=datetime.datetime.now(), format='%Y/%m/%d') expiry_date = DateTimeField(label=text['label_expiry_date'], default=datetime.datetime.now() + datetime.timedelta(days=365), format='%Y/%m/%d') submit = CustomSubmitField(label=text['label_submit'], is_disabled_on_start=False)
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'gitlab_configuration' workflow_permission = 'gitlab_configuration_page' gitlab_url = CustomStringField( label='GitLab URL', default=gitlab_import_config.gitlab_url, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) default_group = CustomStringField( label='Default GitLab Group', default=gitlab_import_config.default_group, is_disabled_on_start=False, is_disabled_on_error=False, required=True) gitlab_import_directory = CustomStringField( label='GitLab Workflow Directory', default=gitlab_import_config.gitlab_import_directory, is_disabled_on_start=False, is_disabled_on_error=False, required=True) gitlab_import_utils_directory = CustomStringField( label='GitLab Util Directory', default=gitlab_import_config.gitlab_import_utils_directory, is_disabled_on_start=False, is_disabled_on_error=False) gw_utils_directory = CustomStringField( label='Gateway Util Directory', default=gitlab_import_config.gw_utils_directory, is_disabled_on_start=False, is_disabled_on_error=False) backups_folder = CustomStringField( label='Gateway Backup Folder', default=gitlab_import_config.backups_folder, is_disabled_on_start=False, is_disabled_on_error=False, required=True) secret_file = CustomStringField(label='Gateway Secret file and path', default=gitlab_import_config.secret_file, is_disabled_on_start=False, is_disabled_on_error=False, required=True) submit = CustomSubmitField(label='Save', is_disabled_on_start=False, is_disabled_on_error=False)
class GenericFormTemplate(GatewayForm): # When updating the form, remember to make the corresponding changes to the workflow pages workflow_name = 'update_ip4_address_example' workflow_permission = 'update_ip4_address_example_page' configuration = Configuration(workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, validators=[], is_disabled_on_start=False, enable_on_complete=['ip4_address']) ip4_address = IP4Address( workflow_name=workflow_name, permissions=workflow_permission, label='Address', required=True, inputs={ 'configuration': 'configuration', 'address': 'ip4_address' }, on_change=['server_output_ip4_address'], server_outputs={ 'state': 'address_state', 'mac_address': 'mac_address', 'name': 'description' }, server_side_output_method=get_ip4_address_endpoint, result_decorator=filter_allocated, enable_on_complete=[ 'address_state', 'mac_address', 'description', 'submit' ]) line_break = PlainHTML('<hr>') address_state = CustomStringField(label='Address State', readonly=True) mac_address = CustomStringField(label='MAC Address') description = CustomStringField(label='Description') submit = SubmitField(label='Update')
class GenericFormTemplate(GatewayForm): """ Form template to generate html and javascript for page """ workflow_name = 'table_component' workflow_permission = 'table_component_page' object_type = CustomSelectField( workflow_name=workflow_name, permissions=workflow_permission, label='Object Type', choices_function=get_object_types, required=True, is_disabled_on_start=False ) keyword = CustomStringField( label='Keyword', is_disabled_on_start=False, required=True ) search = CustomSearchButtonField( workflow_name=workflow_name, permissions=workflow_permission, default='Search Objects', inputs={'keyword': 'keyword', 'object_type': 'object_type'}, server_side_method=find_objects_by_type_endpoint, display_message=True, on_complete=['call_output_table', 'call_server_table'], is_disabled_on_start=False ) output_table = TableField( workflow_name=workflow_name, permissions=workflow_permission, label='', data_function=raw_table_data, on_complete=['custom_js_table_loaded'] ) server_table = TableField( workflow_name=workflow_name, permissions=workflow_permission, label='Server table', server_side_method=server_table_data_endpoint, data_function=raw_table_data, table_features={ 'searching': False, 'paging': False, 'ordering': False, 'info': False }, inputs={'keyword': 'keyword', 'object_type': 'object_type'} )
class GenericFormTemplate(GatewayForm): # When updating the form, remember to make the corresponding changes to the workflow pages workflow_name = 'delete_alias_record_example' workflow_permission = 'delete_alias_record_example_page' configuration = Configuration(workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, validators=[], is_disabled_on_start=False, on_complete=['call_view'], enable_on_complete=['view']) view = View(workflow_name=workflow_name, permissions=workflow_permission, label='View', required=True, one_off=True, on_complete=['call_zone'], enable_on_complete=['zone']) zone = Zone(workflow_name=workflow_name, permissions=workflow_permission, label='Zone', required=True, enable_on_complete=['alias_record']) alias_record = AliasRecord( workflow_name=workflow_name, permissions=workflow_permission, label='Alias Record', required=True, on_complete=['populate_alias_record_data'], enable_on_complete=['name', 'linked_record', 'submit']) name = CustomStringField(label='Name', readonly=True) linked_record = CustomStringField(label='Linked Record', readonly=True) submit = SubmitField(label='Delete')
class EdgeForm(GatewayForm): workflow_name = 'hello_edge' workflow_permission = 'hello_edge_page' edge = CustomStringField(label='Edge CI', default='https://api.edge.example.com', validators=[DataRequired(), URL()], is_disabled_on_start=False) client = CustomStringField(label='Client ID', default='', validators=[DataRequired()], is_disabled_on_start=False) client_secret = CustomStringField(label='Client Secret', default='', validators=[DataRequired()], is_disabled_on_start=False) submit = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'query_logger' workflow_permission = 'query_logger_page' text=util.get_text(module_path(), config.language) invalid_url_message=text['invalid_url_message'] require_message=text['require_message'] edge_url = CustomStringField( label=text['label_edge_url'], is_disabled_on_start=False, validators=[DataRequired(message=require_message), URL(message=invalid_url_message)], render_kw={"placeholder": "https://api-<Edge Instance>.bluec.at"} ) edge_token = CustomStringField( label=text['label_edge_token'], is_disabled_on_start=False, validators=[DataRequired(message=require_message)] ) syslog_server = CustomStringField( label=text['label_syslog_server'], is_disabled_on_start=False, validators=[DataRequired(message=require_message), IPAddress()] ) poll_interval = CustomStringField( label=text['label_poll_interval'], is_disabled_on_start=False, validators=[DataRequired(message=require_message)] ) submit = SubmitField(label=text['label_submit'])
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'add_mac_address' workflow_permission = 'add_mac_address_page' configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, is_disabled_on_start=False, ) mac_address = CustomStringField(label='MAC Address', is_disabled_on_start=False, validators=[MacAddress()], required=True) mac_address_name = CustomStringField(label='MAC Address Name', is_disabled_on_start=False, required=True) mac_pool_boolean = CustomBooleanField(label='Add to MAC Pool', is_disabled_on_start=False) mac_pool = MACPool(workflow_name=workflow_name, permissions=workflow_permission, label='MAC Pool', is_disabled_on_start=False) submit = CustomSubmitField(label='Submit', is_disabled_on_start=False)
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'NewLocation' workflow_permission = 'NewLocation_page' parent_location = Location(workflow_name=workflow_name, permissions=workflow_permission, label='Parent Location', is_disabled_on_start=False, required=True) new_location_name = CustomStringField(label='New Location Name', is_disabled_on_start=False, required=True) new_location_code = CustomStringField(label='New Location Code', is_disabled_on_start=False, required=True) submit = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'edge_create_internal_ns_config' workflow_permission = 'edge_umbrella_domain_list_config_page' default_configuration = CustomStringField( label='Default Configuration', default=edge_create_internal_ns_configuration.default_configuration, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) default_view = CustomStringField( label='Default DNS View', default=edge_create_internal_ns_configuration.default_view, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) edge_url = CustomStringField( label='Edge URL', default=edge_create_internal_ns_configuration.edge_url, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) domain_list_file = CustomStringField( label='Domain List File', default=edge_create_internal_ns_configuration.domain_list_file, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) client_id = CustomStringField( label='Edge Client ID', default=edge_create_internal_ns_configuration.client_id, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) clientSecret = CustomStringField( label='Edge Client Secret', default=edge_create_internal_ns_configuration.clientSecret, is_disabled_on_start=False, is_disabled_on_error=False, required=True, ) submit = CustomSubmitField(label='Save', is_disabled_on_start=False, is_disabled_on_error=False)
class GenericFormTemplate(GatewayForm): workflow_name = 'cache_example' workflow_permission = 'cache_example_page' configuration = Configuration(workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, validators=[], is_disabled_on_start=False, enable_on_complete=['ip_network', 'submit'], clear_below_on_change=False) ip_network = CustomStringField(label='Network', validators=[DataRequired()]) display = PlainHTML("<div id='data_display' />") submit = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): workflow_name = 'lease_history_mac' workflow_permission = 'lease_history_mac_page' text = get_resource_text() mac_address = CustomStringField( label=text['label_mac_address'], default='FF:FF:FF:FF:FF:FF', validators=[DataRequired(message=text['require_message']), MacAddress()], required=True, is_disabled_on_start=False ) query_history = CustomSearchButtonField( workflow_name=workflow_name, permissions=workflow_permission, label=text['label_query'], default='Search Objects', inputs={'mac_address': 'mac_address'}, server_side_method=query_history_by_mac_endpoint, display_message=True, on_complete=['call_output_table'], is_disabled_on_start=False ) output_table = TableField( workflow_name=workflow_name, permissions=workflow_permission, label='', data_function=raw_table_data, table_features={ 'searching': False, 'ordering': False, 'info': False, 'lengthChange': False }, is_disabled_on_start=False )
class GenericFormTemplate(GatewayForm): """ Form to generate HTML and Javascript for the update_alias_record_example workflow Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'update_alias_record_example' workflow_permission = 'update_alias_record_example_page' configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, is_disabled_on_start=False, on_complete=['call_view'], enable_dependencies={'on_complete': ['view']}, disable_dependencies={'on_change': ['view']}, clear_dependencies={'on_change': ['view']}) view = View(workflow_name=workflow_name, permissions=workflow_permission, label='View', required=True, one_off=True, on_complete=['call_zone', 'call_linked_record_zone'], enable_dependencies={'on_complete': ['zone']}, disable_dependencies={'on_change': ['zone']}, should_cascade_disable_on_change=True, clear_dependencies={'on_change': ['zone']}, should_cascade_clear_on_change=True) zone = Zone(workflow_name=workflow_name, permissions=workflow_permission, label='Zone', required=True, enable_dependencies={'on_complete': ['alias_record']}, disable_dependencies={'on_change': ['alias_record']}, should_cascade_disable_on_change=True, clear_dependencies={'on_change': ['alias_record']}, should_cascade_clear_on_change=True) alias_record = AliasRecord( workflow_name=workflow_name, permissions=workflow_permission, label='Alias Record', required=True, inputs={ 'configuration': 'configuration', 'view': 'view', 'zone': 'zone', 'alias_record': 'alias_record' }, server_outputs={ 'on_complete': { 'alias_record_name': 'alias_name', 'linked_record_zone': 'linked_record_zone', 'linked_record_name': 'linked_record' } }, server_side_output_method=get_alias_records_endpoint, enable_dependencies={ 'on_complete': ['alias_name', 'linked_record_zone', 'linked_record', 'submit'] }, disable_dependencies={ 'on_change': ['alias_name', 'linked_record_zone', 'linked_record', 'submit'] }, should_cascade_disable_on_change=True, clear_dependencies={ 'on_change': ['alias_name', 'linked_record_zone', 'linked_record'] }, should_cascade_clear_on_change=True) alias_name = CustomStringField(label='New Alias Name', required=True) linked_record_zone = Zone(workflow_name=workflow_name, permissions=workflow_permission, label='Linked Record Zone', required=True, inputs={ 'configuration': 'configuration', 'view': 'view', 'zone': 'linked_record_zone' }, clear_below_on_change=False) linked_record = CustomStringField(label='Linked Record', required=True) submit = SubmitField(label='Update')
class GenericFormTemplate(GatewayForm): # When updating the form, remember to make the corresponding changes to the workflow pages workflow_name = 'update_host_record_example' workflow_permission = 'update_host_record_example_page' configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, validators=[], is_disabled_on_start=False, on_complete=['call_view'], enable_on_complete=['view'] ) view = View( workflow_name=workflow_name, permissions=workflow_permission, label='View', required=True, one_off=True, on_complete=[], enable_on_complete=['parent_zone'] ) parent_zone = Zone( workflow_name=workflow_name, permissions=workflow_permission, label='Zone', required=True, start_initialized=True, inputs={'zone': 'parent_zone', 'configuration': 'configuration', 'view': 'view'}, enable_on_complete=['host_record'] ) host_record = HostRecord( workflow_name=workflow_name, permissions=workflow_permission, label='Host Record', required=True, inputs={ 'configuration': 'configuration', 'view': 'view', 'parent_zone': 'parent_zone', 'host_record': 'host_record' }, on_complete=['server_output_host_record'], server_outputs={'name': 'name', 'addresses': 'ip4_address'}, server_side_output_method=get_host_records_endpoint, enable_on_complete=['submit', 'name', 'ip4_address'] ) seperator = PlainHTML('<hr>') name = CustomStringField( label='New Host Name', required=True ) ip4_address = CustomStringField( label='IP4 Address (multiple IP4 addresses must be seperated by a comma)', required=True ) submit = SubmitField(label='Update')
class GenericFormTemplate(GatewayForm): """ Generic form Template Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'Debian_CVE_Analysis' workflow_permission = 'Debian_CVE_Analysis_page' # configuration = Configuration( # workflow_name=workflow_name, # permissions=workflow_permission, # label='Configuration', # required=True, # coerce=int, # validators=[], # is_disabled_on_start=False, # on_complete=[], # enable_on_complete=['email', 'password', 'ip_address'], # clear_below_on_change=False # ) # email = CustomStringField( # label='Email', # default='*****@*****.**', # validators=[DataRequired(), Email()] # ) ip_address = IP4Address( workflow_name=workflow_name, permissions=workflow_permission, label='IP Address', required=True, #inputs={'configuration': 'configuration', 'address': 'ip_address'}, result_decorator=None, enable_on_complete=[ 'ssh_user', 'password', 'cve', 'submit', 'cve_2', 'rel', "submit2" ]) ssh_user = CustomStringField( label='SSH User', default='root', # validators=[MacAddress()] ) password = PasswordField(label='Password', default='abc', validators=[DataRequired()]) cve = CustomStringField(label='CVE-XXXX-XXXX', default='CVE-', validators=[DataRequired()]) # url = StringField( # label='URL', # default='http://www.example.com', # validators=[URL()] # ) # file = FileField( # label='File' # ) # # boolean_checked = BooleanField( # label='Use for true or false things', # default='checked' # ) # # boolean_unchecked = BooleanField( # label='default for field is unchecked' # ) # # date_time = DateTimeField( # label='Date and Time:', # default=datetime.datetime.now(), # format='%Y-%m-%d %H:%M:%S' # ) submit = SubmitField(label='Submit') emptyField = HiddenField(label="HiddenField") action = SelectField(label='Action Type', choices=[('Search', 'Search'), ('Update', 'Update')]) cve_2 = CustomStringField(label='CVE-XXXX-XXXX', default='CVE-', validators=[DataRequired()]) rel = CustomStringField(label='REL', default='', validators=[DataRequired()]) password2 = PasswordField(label='Admin Password', default='abc', validators=[DataRequired()]) submit2 = SubmitField(label='Submit')
class GenericFormTemplate(GatewayForm): """Form to generate HTML and Javascript for the add_static_ip4_address workflow Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = "add_static_ip4_address" workflow_permission = "add_static_ip4_address_page" configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label="Configuration", required=True, coerce=int, clear_below_on_change=False, is_disabled_on_start=False, enable_dependencies={"on_complete": ["ip4_address"]}, disable_dependencies={"on_change": ["ip4_address"]}, clear_dependencies={ "on_change": ["ip4_address", "view", "mac_address", "description"] }, ) ip4_address = IP4Address( workflow_name=workflow_name, permissions=workflow_permission, label="Address", required=True, inputs={ "configuration": "configuration", "address": "ip4_address" }, result_decorator=filter_unallocated, on_complete=["call_view"], clear_below_on_change=False, should_cascade_disable_on_change=True, enable_dependencies={ "on_complete": ["view", "mac_address", "description", "submit"] }, disable_dependencies={ "on_change": ["view", "mac_address", "description", "submit"] }, display_message=True, ) mac_address = CustomStringField(label="MAC Address") description = CustomStringField(label="Description") view = View( workflow_name=workflow_name, permissions=workflow_permission, label="View", one_off=True, on_complete=["call_zone"], clear_below_on_change=False, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True, enable_dependencies={"on_complete": ["zone"]}, disable_dependencies={"on_change": ["zone"]}, clear_dependencies={"on_change": ["zone"]}, ) zone = Zone( workflow_name=workflow_name, permissions=workflow_permission, label="Zone", clear_below_on_change=False, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True, enable_dependencies={"on_complete": ["hostname"]}, disable_dependencies={"on_change": ["hostname"]}, clear_dependencies={"on_change": ["hostname"]}, ) hostname = CustomStringField(label="Hostname") submit = SubmitField(label="Submit")
class GenericFormTemplate(GatewayForm): """ Form to generate HTML and Javascript for the update_text_record workflow Note: When updating the form, remember to make the corresponding changes to the workflow pages """ workflow_name = 'update_text_record' workflow_permission = 'update_text_record_page' configuration = Configuration( workflow_name=workflow_name, permissions=workflow_permission, label='Configuration', required=True, coerce=int, clear_below_on_change=False, is_disabled_on_start=False, on_complete=['call_view'], enable_dependencies={'on_complete': ['view']}, disable_dependencies={'on_change': ['view']}, clear_dependencies={'on_change': ['view']}) view = View(workflow_name=workflow_name, permissions=workflow_permission, label='View', required=True, one_off=True, clear_below_on_change=False, display_message=True, enable_dependencies={'on_complete': ['parent_zone']}, disable_dependencies={'on_change': ['parent_zone']}, clear_dependencies={'on_change': ['parent_zone']}, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True) parent_zone = Zone( workflow_name=workflow_name, permissions=workflow_permission, label='Zone', required=True, start_initialized=True, display_message=True, inputs={ 'zone': 'parent_zone', 'configuration': 'configuration', 'view': 'view' }, clear_below_on_change=False, enable_dependencies={'on_complete': ['text_record', 'search']}, disable_dependencies={'on_change': ['text_record', 'search']}, clear_dependencies={'on_change': ['text_record', 'search']}, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True) text_record = CustomStringField(label='Text Record') search = CustomSearchButtonField( workflow_name=workflow_name, permissions=workflow_permission, default='Search', inputs={ 'configuration': 'configuration', 'view': 'view', 'parent_zone': 'parent_zone', 'name': 'text_record' }, server_side_method=get_text_records_endpoint, display_message=True, on_complete=['call_txt_list'], enable_dependencies={'on_complete': ['txt_filter', 'txt_list']}, disable_dependencies={ 'on_change': ['txt_filter', 'txt_list'], 'on_click': ['txt_filter', 'txt_list'] }, clear_dependencies={ 'on_change': ['txt_filter', 'txt_list'], 'on_click': ['txt_filter', 'txt_list'] }, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True) txt_filter = CustomStringField(label='Filter', is_disabled_on_error=True) txt_list = FilteredSelectField( workflow_name=workflow_name, permissions=workflow_permission, label='Text', size=12, filter_field='txt_filter', choices=[(0, '')], coerce=int, is_disabled_on_error=True, on_complete=['call_name_js', 'call_text'], inputs={ 'configuration': 'configuration', 'view': 'view', 'parent_zone': 'parent_zone', 'name': 'text_record' }, clear_dependencies={'on_change': ['name', 'text']}, server_side_method=get_text_records_endpoint, enable_dependencies={'on_complete': ['name', 'text', 'submit']}, disable_dependencies={'on_change': ['name', 'text', 'submit']}, should_cascade_disable_on_change=True, should_cascade_clear_on_change=True) plain_1 = PlainHTML('<hr>') name = CustomStringField(label='New Name', is_disabled_on_error=True) text = CustomStringField(label='New Text', inputs={'text': 'txt_list'}, is_disabled_on_error=True) submit = CustomSubmitField(label='Update')