AutorÃa | Ultima modificación | Ver Log |
{{!This file is part of Moodle - http://moodle.org/Moodle is free software: you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation, either version 3 of the License, or(at your option) any later version.Moodle is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with Moodle. If not, see <http://www.gnu.org/licenses/>.}}{{!@template qbank_tagquestion/tag_conditionAn auto-complete select box containing a list of available tags tofilter the quesiton bank questions by.Classes required for JS:* noneData attributes required for JS:* noneContext variables required for this template:* tagoptions A list of available tagsExample context (json):{"tagoptions": [{"id": 1,"name": "foo","selected": true},{"id": 2,"name": "bar","selected": false}]}}}<div class="tag-condition-container" data-region="tag-condition-container-{{uniqid}}"><div class="mb-3"><select multiple name="qtagids[]" class="form-control invisible" size="3" data-region="tag-select">{{#tagoptions}}<option {{#selected}}selected{{/selected}} value="{{id}}">{{name}}</option>{{/tagoptions}}</select>{{< core/overlay_loading }}{{$hiddenclass}}{{/hiddenclass}}{{/ core/overlay_loading }}</div></div>{{#js}}require(['jquery','core/form-autocomplete'],function($,AutoComplete) {var root = $('[data-region="tag-condition-container-{{uniqid}}"]');var selectElement = root.find('[data-region="tag-select"]');var loadingContainer = root.find('[data-region="overlay-icon-container"]');var placeholderText = {{#quote}}{{#str}} filterbytags, core_question {{/str}}{{/quote}};var noSelectionText = {{#quote}}{{#str}} notagfiltersapplied, core_question {{/str}}{{/quote}};AutoComplete.enhance(selectElement, // Element to enhance.false, // Don't allow support for creating new tags.false, // Don't allow AMD module to handle loading new tags.placeholderText, // Placeholder text.false, // Make search case insensitive.true, // Show suggestions for tags.noSelectionText // Text when no tags are selected.).always(function() {// Hide the loading icon once the autocomplete has initialised.loadingContainer.addClass('hidden');});// We need to trigger a form submission because of how the question bank// page handles reloading the questions when an option changes.selectElement.on('change', function() {selectElement.closest('form').submit();});});{{/js}}