'
+ pagerDiv.innerHTML += '
'
+ prev + predots + middle + postdots + next + '
';
}
@@ -289,17 +289,17 @@ function pagerPrev() {
// swithing view between targets and records
function switchView(view) {
-
+
var targets = document.getElementById('mkwsTargets');
var records = document.getElementById('mkwsRecords');
-
+
switch(view) {
case 'targets':
- targets.style.display = "block";
+ targets.style.display = "block";
records.style.display = "none";
break;
case 'records':
- targets.style.display = "none";
+ targets.style.display = "none";
records.style.display = "block";
break;
default:
@@ -312,7 +312,7 @@ function showDetails (prefixRecId) {
var recId = prefixRecId.replace('rec_', '');
var oldRecId = curDetRecId;
curDetRecId = recId;
-
+
// remove current detailed view if any
var detRecordDiv = document.getElementById('det_'+oldRecId);
// lovin DOM!
@@ -371,17 +371,58 @@ function renderDetails(data, marker)
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($("
", { href: '#',
- onclick: "switchView(\'records\')",
- text: "Record Browser",
- }));
+ $("#mkwsSwitch").html($("
", {
+ href: '#',
+ onclick: "switchView(\'records\')",
+ text: "Records"
+ }));
$("#mkwsSwitch").append($("
", { text: " | " }));
- $("#mkwsSwitch").append($("
", { href: '#',
- onclick: "switchView(\'targets\')",
- text: "Target Info",
- }));
+ $("#mkwsSwitch").append($("
", {
+ href: '#',
+ onclick: "switchView(\'targets\')",
+ text: "Targets"
+ }));
+
+ if (!config.mkws_switch) {
+ $("#mkwsSwitch").css("display", "none");
+ }
+
+ var sort_html = '
';
+ 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 += '' + val + ' ';
+ }
+ sort_html += ' ';
// For some reason, doing this programmatically results in
// document.search.query being undefined, hence the raw HTML.
@@ -391,6 +432,29 @@ $(document).ready(function() {
\
');
+ $("#mkwsRecords").html('\
+
\
+ \
+ \
+
\
+ \
+ \
+ \
+ \
+
\
+ \
+
\
+
\
+ \
+ \
+
\
+
');
+
$("#mkwsTargets").html('\
\
No information available yet.\
@@ -398,8 +462,30 @@ $(document).ready(function() {
$("#mkwsTargets").css("display", "none");
domReady();
+}
+/*
+ * 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 authentifiction failed"); });
+ .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(); });