/** * Get an HTML select element representing a list of icon types * * @since 1.40 * * @param array Display template array * @param string HTML name attribute value * @param string currently selected Icon Type * * @return string HTML select element or empty string on failure. */ public static function mla_get_icon_type_dropdown($templates, $name, $selection = '.none.') { $option_template = $templates['icon-type-select-option']; if ('.nochange.' == $selection) { $option_values = array('selected' => 'selected="selected"', 'value' => '.none.', 'text' => '— ' . __('No Change', 'media-library-assistant') . ' —'); } else { $option_values = array('selected' => '.none.' == $selection ? 'selected="selected"' : '', 'value' => '.none.', 'text' => '— ' . __('None (select a value)', 'media-library-assistant') . ' —'); } $options = MLAData::mla_parse_template($option_template, $option_values); $icon_types = MLAMime::mla_get_current_icon_types(); foreach ($icon_types as $icon_type) { $option_values = array('selected' => $icon_type == $selection ? 'selected="selected"' : '', 'value' => $icon_type, 'text' => $icon_type); $options .= MLAData::mla_parse_template($option_template, $option_values); } // foreach icon_type return MLAData::mla_parse_template($templates['icon-type-select'], array('name' => $name, 'options' => $options)); }