{% set title %}{% trans "Name" %}{% endset %}
{% set helpText %}{% trans "An optional name for this widget" %}{% endset %}
{{ forms.input("name", title, module.getOption("name"), helpText) }}
{% set title %}{% trans "Set a duration?" %}{% endset %}
{% set helpText %}{% trans "Select to provide a specific duration for this Widget" %}{% endset %}
{{ forms.checkbox("useDuration", title, module.getUseDuration(), helpText) }}
{% set title %}{% trans "Duration" %}{% endset %}
{% set helpText %}{% trans "The duration in seconds this item should be displayed" %}{% endset %}
{{ forms.number("duration", title, module.getDuration(), helpText, "duration-fields", "required") }}
{% set title %}{% trans "Duration is per page" %}{% endset %}
{% set helpText %}{% trans "The duration specified is per page otherwise it is overall Widget duration." %}{% endset %}
{{ forms.checkbox("durationIsPerPage", title, module.getOption("durationIsPerPage"), helpText) }}
{% set title %}{% trans "Enable Stats Collection?" %}{% endset %}
{% set helpText %}{% trans "Enable the collection of Proof of Play statistics for this Widget. Ensure that ‘Enable Stats Collection’ is set to ‘On’ in the Display Settings." %}{% endset %}
{% set offOption %}{% trans "Off" %}{% endset %}
{% set onOption %}{% trans "On" %}{% endset %}
{% set inheritOption %}{% trans "Inherit" %}{% endset %}
{% set options = [
{ id: "Off", value: offOption },
{ id: "On", value: onOption },
{ id: "Inherit", value: inheritOption }
] %}
{{ forms.dropdown("enableStat", "single", title, module.getOption("enableStat", theme.getSetting("WIDGET_STATS_ENABLED_DEFAULT")), options, "id", "value", helpText) }}
{% set message %}{% trans "Below you can select the columns to be shown in the table - drag and drop to reorder and to move between lists." %}{% endset %}
{{ forms.message(message) }}
{% trans "Columns Available" %}
{% for column in module.dataSetColumnsNotSelected() %}
- {{ column.heading }}
{% endfor %}
{% trans "Columns Selected" %}
{% for column in module.dataSetColumnsSelected() %}
- {{ column.heading }}
{% endfor %}
{% set title %}{% trans "Show the table headings?" %}{% endset %}
{% set helpText %}{% trans "Should the Table headings be shown?" %}{% endset %}
{{ forms.checkbox("showHeadings", title, module.getOption("showHeadings"), helpText) }}
{% set title %}{% trans "Lower Row Limit" %}{% endset %}
{% set helpText %}{% trans "Please enter the Lower Row Limit for this DataSet (enter 0 for no limit)')" %}{% endset %}
{{ forms.number("lowerLimit", title, module.getOption("lowerLimit"), helpText) }}
{% set title %}{% trans "Upper Row Limit" %}{% endset %}
{% set helpText %}{% trans "Please enter the Upper Row Limit for this DataSet (enter 0 for no limit)" %}{% endset %}
{{ forms.number("upperLimit", title, module.getOption("upperLimit"), helpText ) }}
{% set title %}{% trans "Rows per page" %}{% endset %}
{% set helpText %}{% trans "Please enter the number of rows per page. 0 for no pages." %}{% endset %}
{{ forms.number("rowsPerPage", title, module.getOption("rowsPerPage"), helpText) }}
{% set title %}{% trans "Template" %}{% endset %}
{% set helpText %}{% trans "Select the template you would like to apply. This can be overridden using the check box below." %}{% endset %}
{{ forms.dropdown("templateId", "single", title, module.getOption("templateId"), templatesAvailable, "id", "value", helpText, "template-selector-control localSelect selectPickerWithImage", null, null, null, [{ name: "data-minimum-results-for-search", value: "Infinity" },{ name: "data-width", value: "100%" }], null, "image") }}
{% set title %}{% trans "Override the template?" %}{% endset %}
{% set helpText %}{% trans "Tick if you would like to override the template." %}{% endset %}
{{ forms.checkbox("overrideTemplate", title, module.getOption("overrideTemplate", "0"), helpText) }}
{% set useTemplatesMessage %}
{% trans "With Override the Template selected enter your own text, html and css by using the Templates drop down menu in the tab header above." %}
{% endset %}
{{ forms.message(useTemplatesMessage, 'template-override-controls') }}
{% set title %}{% trans "Background Colour" %}{% endset %}
{% set helpText %}{% trans "Use the colour picker to select the background colour" %}{% endset %}
{{ forms.colorPicker("backgroundColor", title, module.getOption("backgroundColor"), helpText, "template-selector-control") }}
{% set title %}{% trans "Border Colour" %}{% endset %}
{% set helpText %}{% trans "Use the colour picker to select the border colour" %}{% endset %}
{{ forms.colorPicker("borderColor", title, module.getOption("borderColor"), helpText, "template-selector-control") }}
{% set title %}{% trans "Font Colour" %}{% endset %}
{% set helpText %}{% trans "Use the colour picker to select the font colour" %}{% endset %}
{{ forms.colorPicker("fontColor", title, module.getOption("fontColor"), helpText, "template-selector-control") }}
{% set title %}{% trans "Font" %}{% endset %}
{% set attributes = [
{ name: "data-search-url", value: url_for("library.font.list") },
{ name: "data-value", value: module.getOption("fontFamily") }
] %}
{% set helpText %}{% trans "Select a custom font - leave empty to use the default font." %}{% endset %}
{{ forms.dropdown("fontFamily", "single", title, "", [{id: "", value: ""}], "id", "value", helpText, "template-selector-control", "", "", "", attributes) }}
{% set title %}{% trans "Font Size" %}{% endset %}
{% set helpText %}{% trans "Set the font size" %}{% endset %}
{{ forms.number("fontSize", title, module.getOption("fontSize"), helpText, "template-selector-control") }}
{% set noDataMessageMessage1 %}
{% trans "Enter text or HTML in the box below." %}
{% endset %}
{{ forms.message(noDataMessageMessage1, 'noDataMessage-advanced-editor-hide') }}
{% set noDataMessageMessage2 %}
{% trans "Enter the text to display." %}
{% trans "The red rectangle reflects the size of the region you are editing." %}
{% trans "Shift+Enter will drop a single line. Enter alone starts a new paragraph." %}
{% endset %}
{{ forms.message(noDataMessageMessage2, 'noDataMessage-advanced-editor-show') }}
{% set helpText %}{% trans "A message to display when no data is returned from the source" %}{% endset %}
{{ forms.textarea("noDataMessage", "", module.getRawNode("noDataMessage"), helpText, "", "", 5) }}
{% trans "Optional Stylesheet Template" %}
{% set title %}{% trans "Enter a style sheet for the table" %}{% endset %}
{{ forms.textarea("styleSheet", "", module.getRawNode("styleSheet", module.defaultStyleSheet()), title, "template-override-controls", "", 10) }}
{% trans "Optional JavaScript" %}
{{ forms.textarea("javaScript", "", module.getRawNode("javaScript"), "", "", "", 10) }}
{% set message %}{% trans "The DataSet results can be ordered by any column and set below. New fields can be added by selecting the plus icon at the end of the current row. Should a more complicated order be required the advanced checkbox can be selected to provide custom SQL syntax." %}{% endset %}
{{ forms.message(message) }}
{% set title %}{% trans "Use advanced order clause?" %}{% endset %}
{% set helpText %}{% trans "Provide a custom clause instead of using the clause builder above." %}{% endset %}
{{ forms.checkbox("useOrderingClause", title, module.getOption("useOrderingClause", 0), helpText) }}
{% set title %}{% trans "Order" %}{% endset %}
{% set helpText %}{% trans "Please enter a SQL clause for how this dataset should be ordered" %}{% endset %}
{{ forms.input("ordering", title, module.getOption("ordering"), helpText, "order-clause-field") }}
{% set message %}{% trans "The DataSet results can be filtered by any column and set below. New fields can be added by selecting the plus icon at the end of the current row. Should a more complicated filter be required the advanced checkbox can be selected to provide custom SQL syntax." %}{% endset %}
{{ forms.message(message) }}
{% set message %}{% trans "The substitution [DisplayId] can be used in filter clauses and will be substituted at run time with the Display ID. When shown in the CMS it will be substituted with 0." %}{% endset %}
{{ forms.message(message) }}
{% set title %}{% trans "Use advanced filter clause?" %}{% endset %}
{% set helpText %}{% trans "Provide a custom clause instead of using the clause builder above." %}{% endset %}
{{ forms.checkbox("useFilteringClause", title, module.getOption("useFilteringClause", 0), helpText) }}
{% set title %}{% trans "Filter" %}{% endset %}
{% set helpText %}{% trans "Please enter a SQL clause to filter this DataSet." %}{% endset %}
{{ forms.input("filter", title, module.getOption("filter"), helpText, "filter-clause-field") }}
{% set title %}{% trans "Update Interval (mins)" %}{% endset %}
{% set helpText %}{% trans "Please enter the update interval in minutes. This should be kept as high as possible. For example, if the data will only change once per day this could be set to 60." %}{% endset %}
{{ forms.number("updateInterval", title, module.getOption("updateInterval", 5), helpText, "", "required") }}
{% set title %}{% trans "Freshness (mins)" %}{% endset %}
{% set helpText %}{% trans "If the Player is offline it will switch to the No Data Template after this freshness time. Set this to 0 to never switch." %}{% endset %}
{{ forms.number("freshnessTimeout", title, module.getOption("freshnessTimeout", 0), helpText) }}