return details;
}
+/*
+ * All the HTML stuff to render the search forms and
+ * result pages.
+ */
+function mkws_html_all(data) {
+
+ /* default config */
+ var config = {
+ sort: [["relevance"], ["title:1", "title"], ["date:0", "newest"], ["date:1", "oldest"]],
+ perpage: [10, 20, 30, 50],
+ sort_default: "relevance",
+ perpage_default: 20,
+ query_width: 50,
+ mkws_switch: true, /* show/hide Records|Targets menu */
+
+ dummy: "dummy"
+ };
+
+ /* override standard config values by function parameters */
+ for (var k in data) {
+ config[k] = data[k];
+ }
+
-$(document).ready(function() {
$("#mkwsSwitch").html($("<a/>", {
href: '#',
onclick: "switchView(\'records\')",
- text: "Records",
+ text: "Records"
}));
$("#mkwsSwitch").append($("<span/>", { text: " | " }));
$("#mkwsSwitch").append($("<a/>", {
href: '#',
onclick: "switchView(\'targets\')",
- text: "Targets",
+ text: "Targets"
}));
+ if (!config.mkws_switch) {
+ $("#mkwsSwitch").css("display", "none");
+ }
+
+ var sort_html = '<select name="sort" id="sort">';
+ for(var i = 0; i < config.sort.length; i++) {
+ var key = config.sort[i][0];
+ var val = config.sort[i].length == 1 ? config.sort[i][0] : config.sort[i][1];
+
+ sort_html += '<option value="' + key + '"';
+ if (key == config.sort_default) {
+ sort_html += ' selected="selected"';
+ }
+ sort_html += '>' + val + '</option>';
+ }
+ sort_html += '</select>';
+
+ var perpage_html = '<select name="perpage" id="perpage">';
+ for(var i = 0; i < config.perpage.length; i++) {
+ var key = config.perpage[i];
+
+ perpage_html += '<option value="' + key + '"';
+ if (key == config.perpage_default) {
+ perpage_html += ' selected="selected"';
+ }
+ perpage_html += '>' + key + '</option>';
+ }
+ perpage_html += '</select>';
+
// For some reason, doing this programmatically results in
// document.search.query being undefined, hence the raw HTML.
$("#mkwsSearch").html('\
<td valign="top">\
<div id="ranking">\
<form name="select" id="select">\
- Sort by\
- <select name="sort" id="sort"><option value="relevance" selected="selected">relevance</option><option value="title:1">title</option><option value="date:0">newest</option><option value="date:1">oldest</option></select>\
- and show \
- <select name="perpage" id="perpage"><option value="10">10</option><option value="20" selected="selected">20</option><option value="30">30</option><option value="50">50</option></select>\
+ Sort by' + sort_html + '\
+ and show ' + perpage_html + '\
per page.\
</form>\
</div>\
$("#mkwsTargets").css("display", "none");
domReady();
-});
-
-$(document).ready(function() {
- if (useServiceProxy) {
- var jqxhr = jQuery.get(authURLServiceProxy)
- .fail(function() {
- alert("service proxy authentification failed for URL " + authURLServiceProxy + " , give up!");
- })
- .success(function(data) {
- if (!jQuery.isXMLDoc(data)) {
- alert("service proxy auth response document is not valid XML document, give up!");
- return;
- }
-
- var status = $(data).find("status");
- if (status.text() != "OK") {
+}
+
+/*
+ * Run service-proxy authentication in background (after page load).
+ * The username/password is configured in the apache config file
+ * for the site.
+ */
+function mkws_service_proxy_auth() {
+ var jqxhr = jQuery.get("/service-proxy-auth")
+ .fail(function() {
+ alert("service proxy authentication failed, give up!");
+ })
+ .success(function(data) {
+ if (!jQuery.isXMLDoc(data)) {
+ alert("service proxy auth response document is not valid XML document, give up!");
+ return;
+ }
+ var status = $(data).find("status");
+ if (status.text() != "OK") {
alert("service proxy auth repsonse status: " + status.text() + ", give up!");
return;
- }
- });
- }
-});
+ }
+ });
+}
+
+$(document).ready(function() { mkws_html_all(mkws_config) });
+$(document).ready(function() { mkws_service_proxy_auth(); });