Class: FilterView

FilterView()

Render a view of a single FilterModel

Constructor

new FilterView()

Source:

Extends

  • Backbone.View

Members

labelTemplate :Underscore.Template

The template that renders the icon and label of a filter
Type:
  • Underscore.Template
Since:
  • 2.17.0
Source:

mode :string

One of "normal", "edit", or "uiBuilder". "normal" renders a regular filter used to update a search model in a DataCatalogViewWithFilters. "edit" creates a filter that cannot update a search model, but which has an "EDIT" button that opens a modal with an interface for editing the filter model's properties (e.g. fields, model type, etc.). "uiBuilder" is the view of the filter within this editing modal; it has inputs that are overlaid above the filter elements where a user can edit the placeholder text, label, etc. in a WYSIWYG fashion.
Type:
  • string
Since:
  • 2.17.0
Source:

model :Filter

A Filter model to be rendered in this view
Type:
Source:

modelClass :Backbone.Model

The Filter model that this View renders. This is used to create a new instance of the model if one is not provided to the view.
Type:
  • Backbone.Model
Since:
  • 2.17.0
Source:

template :Underscore.Template

Reference to template for this view. HTML files are converted to Underscore.js templates
Type:
  • Underscore.Template
Source:

uiBuilderClass :string

The class to add to the filter when it is in "uiBuilder" mode
Type:
  • string
Since:
  • 2.17.0
Source:

uiInputClass :string

The class used for input elements where the user can change UI attributes when this view is in "uiBuilder" mode. For example, the input for the placeholder text should have this class. Elements with this class also need to have a data-category attribute with the name of the model attribute they correspond to.
Type:
  • string
Since:
  • 2.17.0
Source:

Methods

events() → {Object}

A function that creates and returns the Backbone events object.
Source:
Returns:
Returns a Backbone events object
Type
Object

handleChange()

Updates the view when the filter input is updated
Parameters:
Type Description
Event The DOM Event that occurred on the filter view input element
Source:

handleTyping()

When the user presses Enter in the input element, update the view and model
Parameters:
Type Description
Event The DOM Event that occurred on the filter view input element
Source:

hideInputError(input, messageContainer)

This function hides the error message and error class added to inputs with the FilterView#showInputError function.
Parameters:
Name Type Description
input HTMLElement The input that had an error associated with its value
messageContainer HTMLElement The element in which the error message was inserted
Source:

initialize(optionsopt)

Function executed whenever a new FilterView is created.
Parameters:
Name Type Attributes Description
options Object <optional>
A literal object of options to set on this View
Source:

render(templateVars)

Render an instance of a Filter View. All of the extended Filter Views also call this render function.
Parameters:
Name Type Description
templateVars Object The variables to use in the HTML template. If not provided, defaults to the model in JSON
Source:

showInputError(input, messageContainer, message)

This function indicates that there is an error with an input in this filter. It displays an error message and adds the error CSS class to the problematic input.
Parameters:
Name Type Description
input HTMLElement The input that has an error associated with its value
messageContainer HTMLElement The element in which to insert the error message
message string The error message to show
Source:

showValidationErrors(errors)

Show validation errors. This is used for filters that are in "UIBuilder" mode.
Parameters:
Name Type Description
errors Object The error messages associated with each attribute that has an error, passed from the Filter model validation function.
Source:

updateModel()

Updates the value set on the Filter Model associated with this view. The filter value is grabbed from the input element in this view.
Source:

updateUIAttribute(e)

Updates the corresponding model attribute when an input for one of the UI options changes (in "uiBuilder" mode).
Parameters:
Name Type Description
e Object The change event
Since:
  • 2.17.0
Source: