PageSourceSearch

https://www.siaap.fr/typo3conf/ext/solrfluid/Resources/Public/JavaScript/suggest_controller.js?1735557472

js siaap.fr collected 2026-10-02 04:26:35 UTC 2,387 bytes, 74 lines download raw bytes

1
2function SuggestController() {
3    var _this = this;
4
5    var request = {};
6
7    var response = {};
8
9    this.init = function() {
10        // Change back to the old behavior of auto-complete
11        // http://jqueryui.com/docs/Upgrade_Guide_184#Autocomplete
12        jQuery.ui.autocomplete.prototype._renderItem = function (ul, item) {
13            return jQuery("<li></li>").data("item.autocomplete", item).append("<a>" + item.label + "</a>").appendTo(ul);
14        };
15
16        var req = false;
17
18        jQuery('form[data-suggest]').each(function () {
19            var $form = $(this);
20            $form.find('input.js-solr-q').autocomplete({
21                source: function (request, response) {
22                    _this.request = request;
23                    _this.response = response;
24                    if (req) {
25                        req.abort();
26                        response();
27                    }
28
29                    req = jQuery.ajax({
30                        url: $form.data('suggest'),
31                        dataType: 'json',
32                        data: {
33                            termLowercase: request.term.toLowerCase(),
34                            termOriginal: request.term,
35                            L: $form.find('input[name="L"]').val()
36                        },
37                        success: _this.handleSuggestResponse
38                    });
39                },
40                select: function (event, ui) {
41                    this.value = ui.item.value;
42                    $form.submit();
43                },
44                delay: 0,
45                minLength: 3
46            });
47        });
48    };
49
50    this.handleSuggestResponse = function (data) {
51        req = false;
52        var output = [];
53        jQuery.each(data, function (term, termIndex) {
54            output.push({
55                label: term.replace(new RegExp('(?![^&;]+;)(?!<[^<>]*)(' +
56                    jQuery.ui.autocomplete.escapeRegex(_this.request.term) +
57                    ')(?![^<>]*>)(?![^&;]+;)', 'gi'), '<strong>$1</strong>'),
58                value: term
59            });
60        });
61
62        _this.response(output);
63    };
64}
65jQuery(document).ready(function () {
66    var solrSuggestController = new SuggestController();
67    solrSuggestController.init();
68
69    jQuery("body").on("tx_solr_updated", function() {
70        solrSuggestController.init();
71    });
72});
73
74

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.