- Fix click mangling.

This commit is contained in:
Jordan Sissel 2011-02-03 12:39:46 -08:00
parent ce70dd9bf7
commit 5e67b5c22f

View file

@ -10,8 +10,11 @@
if (query == undefined || query == "") { if (query == undefined || query == "") {
return; return;
} }
//console.log("Searching: " + query);
var display_query = query.replace("<", "&lt;").replace(">", "&gt;") var display_query = query.replace("<", "&lt;").replace(">", "&gt;")
$("#querystatus").html("Loading query '" + display_query + "'") $("#querystatus").html("Loading query '" + display_query + "'")
//console.log(logstash.params)
logstash.params.q = query; logstash.params.q = query;
document.location.hash = escape(JSON.stringify(logstash.params)); document.location.hash = escape(JSON.stringify(logstash.params));
$("#results").load("/search/ajax", logstash.params); $("#results").load("/search/ajax", logstash.params);
@ -19,12 +22,21 @@
}, /* search */ }, /* search */
parse_params: function(href) { parse_params: function(href) {
var params = href.replace(/^[^?]*\?/, "").split("&") var query = href.replace(/^[^?]*\?/, "");
if (query == href) {
//console.log("No query params in link " + href);
/* No query params */
return {};
}
//console.log({ "query": query });
var params = query.split("&");
//console.log({ "Parsed params": params });
for (var p in params) { for (var p in params) {
var a = params[p].split("="); var a = params[p].split("=");
var key = a[0] var key = a[0];
var value = a[1] var value = a[1];
logstash.params[key] = unescape(value) logstash.params[key] = unescape(value);
} }
return params; return params;
}, },
@ -89,6 +101,7 @@
} else { } else {
/* No hash. See if there's a query param. */ /* No hash. See if there's a query param. */
var params = logstash.parse_params(location.href); var params = logstash.parse_params(location.href);
//console.log(params)
for (var p in params) { for (var p in params) {
logstash.params[p] = params[p]; logstash.params[p] = params[p];
} }
@ -106,7 +119,7 @@
$("a.pager").live("click", function() { $("a.pager").live("click", function() {
var href = $(this).attr("href"); var href = $(this).attr("href");
var params = logstash.parse_params(location.href); var params = logstash.parse_params(href);
for (var p in params) { for (var p in params) {
logstash.params[p] = params[p]; logstash.params[p] = params[p];
} }
@ -119,6 +132,7 @@
var re = new RegExp("[&?]q=([^&]+)"); var re = new RegExp("[&?]q=([^&]+)");
var match = re.exec(href); var match = re.exec(href);
if (match) { if (match) {
//console.log(match)
logstash.search(match[1]); logstash.search(match[1]);
} }
return false; return false;