aboutsummaryrefslogtreecommitdiff
path: root/assets/js/search.js
blob: 8dc95cb20cd96ce869885c2ea629480903405dd7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
var strokeTimeout = null;

function instantSearch() {
	if (strokeTimeout) {
		clearTimeout(strokeTimeout);
	}
	strokeTimeout = setTimeout(doSearch, 150);
}

function doSearch() {
	value = document.getElementById("search").value;

	if (value === "") {
		strokeTimeout = null;
		return;
	}
	var xhr = new XMLHttpRequest();
	xhr.onreadystatechange = function() {
	if (xhr.readyState == XMLHttpRequest.DONE) {
			if (xhr.status === 404 || xhr.status === 400 || typeof xhr.response === 'undefined' || xhr.response === '404 not found') {
				document.getElementById("search-results").innerHTML = '';
				return
			}
			document.getElementById("search-results").innerHTML = xhr.response;
		}
	}
	xhr.open('GET', '/search/gril_instant/' + value, true);
	xhr.send(null);
	strokeTimeout = null;
}