PageSourceSearch

https://www.swissgroundwaternetwork.ch/typo3conf/ext/eawag_intrane…/suggest_controller.js?1645194641

js swissgroundwaternetwork.ch collected 2026-09-29 16:31:57 UTC 2,456 bytes, 75 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>" + decodeURI(item.label) + "</a>").appendTo(ul);
14        };
15
16        var req = false;
17
18        jQuery('form[data-suggest]').each(function () {
19            var $form = jQuery(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                            'tx_solr[queryString]': 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                appendTo: this
47            });
48        });
49    };
50
51    this.handleSuggestResponse = function (data) {
52        req = false;
53        var output = [];
54        jQuery.each(data.suggestions, function (term, termIndex) {
55            output.push({
56                label: term.replace(new RegExp('(?![^&;]+;)(?!<[^<>]*)(' +
57                    jQuery.ui.autocomplete.escapeRegex(_this.request.term) +
58                    ')(?![^<>]*>)(?![^&;]+;)', 'gi'), '<strong>$1</strong>'),
59                value: term
60            });
61        });
62
63        _this.response(output);
64    };
65}
66jQuery(document).ready(function () {
67    var solrSuggestController = new SuggestController();
68    solrSuggestController.init();
69
70    jQuery("body").on("tx_solr_updated", function() {
71        solrSuggestController.init();
72    });
73});
74
75

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.