Lava Shortcode - Defined Value Picker

Description

Display a dropdown populated with defined values from Rock.

Documentation

This control allows you to select a value.

Example Usage
{[ definedvaluepicker label:'Connection Type' value:'1,2' definedtype:'768' ]}
Parameters

Below are the parameters for the defined value picker shortcode.

  • definedtype – Specifies the ID or Guid of the Defined Type to use for populating the picker.
  • label - The label to display above the control.
  • showlabel (true) - Whether to display label.
  • name (definedvalue) - The name for the defined value picker control.
  • value - The ID or Guid of the currently selected value.
  • valuefield (id) - Specifies whether the picker's value should correspond to the defined value's id or guid.
  • longlistenabled (false) - Enhances the functionality to include a search feature, facilitating swift and efficient selection of the preferred item from the list.
  • allowmultiple (false) - Determines if the selection of multiple values is allowed.
  • isrequired (false) - Establishes whether making a selection is necessary.
  • validationmessage (Please select a value.) - Message to display when the value is not valid.
  • additionalattributes - Additional attributes to include on the input control.

The above settings enable a wide range of filtering options for the list. Regardless of the filter configurations, the current value will consistently be shown.

Markup

//- Prep configuration settings
{% if definedtype != '' %}
	{% assign definedtypeid = definedtype %}
{% endif %}
{% assign sc-definedtype = definedtypeid | FromCache:'DefinedType' %}
{% assign allowmultiple = allowmultiple | AsBoolean %}
{% assign includeinactive = includeinactive | AsBoolean %}
{% assign displaydescriptions = displaydescriptions | AsBoolean %}

{% assign sc-definedValues = sc-definedtype.DefinedValues | OrderBy:'Order' %}

{% if allowmultiple %}
    {[ checkboxlist label:'{{ label }}' showlabel:'{{ showlabel }}' name:'{{ name }}' isrequired:'{{ isrequired }}' value:'{{ value }}' columns:'4' controltype:'defined-values-picker' id:'{{ id }}' validationmessage:'{{ validationmessage }}' additionalattributes:'{{ additionalattributes}}' ]}

        {% for definedvalue in sc-definedValues %}
            {% if definedvalue.IsActive == true or includeinactive == true  %}
                [[ item value:'{% if valuefield == 'id' %}{{ definedvalue.Id }}{% else %}{{ definedvalue.Guid }}{% endif %}' text:'{% if displaydescriptions == false %}{{ definedvalue.Value }}{% else %} {{ definedvalue.Description }}{% endif %}' ]][[ enditem]]
            {% endif %}
        {% endfor %}

    {[ endcheckboxlist ]}
{% else %}
    {[ dropdown label:'{{ label }}' showlabel:'{{ showlabel }}' name:'{{ name }}' longlistenabled:'{{ longlistenabled }}' value:'{{ value }}' controltype:'defined-value-picker' isrequired:'{{ isrequired }}' id:'{{ id }}' validationmessage:'{{ validationmessage }}' additionalattributes:'{{ additionalattributes}}' ]}

        {% for definedvalue in sc-definedValues %}
            {% if definedvalue.IsActive == true or includeinactive == true  %}
                [[ item value:'{% if valuefield == 'id' %}{{ definedvalue.Id }}{% else %}{{ definedvalue.Guid }}{% endif %}' text:'{% if displaydescriptions == false %}{{ definedvalue.Value }}{% else %} {{ definedvalue.Description }}{% endif %}' ]][[ enditem]]
            {% endif %}
        {% endfor %}

    {[ enddropdown ]}
{% endif %}