Pager rewrite for bookmark/history support.
[mkdru-moved-to-drupal.org.git] / mkdru.theme.js
1 Drupal.theme.prototype.mkdruResult = function(hit, num, detailLink) {
2   var html = "";
3   html += '<li class="mkdru-result" id="rec_' + hit.recid + '" >'
4           + '<span>' + num + '. </span>'
5           + '<a href="' + detailLink + '" class="mkdru-result-title">'
6           + hit["md-title"] + '</a> ';
7   if (hit["md-title-remainder"] !== undefined) {
8     html += '<span class="mkdru-result-title-remainder">' 
9             + hit["md-title-remainder"] + ' </span>';
10   }
11   if (hit["md-title-responsibility"] !== undefined) {
12     html += '<span class="mkdru-result-author"><i>'
13             + hit["md-title-responsibility"]
14             + '</i></span>';
15   }
16   html += '</li>';
17   return html;
18 };
19
20 Drupal.theme.prototype.mkdruDetail = function(data) {
21   var html = '<table id=det_"' + data.recid +'>';
22   if (data["md-title"] != undefined) {
23     html += '<tr><td><b>Title</b></td><td><b>:</b> '+data["md-title"];
24   if (data["md-title-remainder"] !== undefined) {
25     html += ' : <span>' + data["md-title-remainder"] + ' </span>';
26   }
27   if (data["md-title-responsibility"] !== undefined) {
28     html += ' <span><i>'+ data["md-title-responsibility"] +'</i></span>';
29   }
30   html += '</td></tr>';
31   }
32   if (data["md-date"] != undefined)
33     html += '<tr><td><b>Date</b></td><td><b>:</b> ' + data["md-date"] + '</td></tr>';
34   if (data["md-author"] != undefined)
35     html += '<tr><td><b>Author</b></td><td><b>:</b> ' + data["md-author"] + '</td></tr>';
36   if (data["md-electronic-url"] != undefined)
37     html += '<tr><td><b>URL</b></td><td><b>:</b> <a href="' + data["md-electronic-url"] + '" target="_blank">' + data["md-electronic-url"] + '</a>' + '</td></tr>';
38   if (data["location"][0]["md-subject"] != undefined)
39     html += '<tr><td><b>Subject</b></td><td><b>:</b> ' + data["location"][0]["md-subject"] + '</td></tr>';
40   if (data["location"][0]["@name"] != undefined)
41     html += '<tr><td><b>Location</b></td><td><b>:</b> ' + data["location"][0]["@name"] + " (" +data["location"][0]["@id"] + ")" + '</td></tr>';
42   html += '</table></div>';
43   html += '<a class="mkdru-detail-back">Return to result list...</a>';
44   return html;
45 };
46
47 /**
48  * Pager theme
49  *
50  * @param pages
51  *   Array of hrefs for page links.
52  * @param start
53  *   Number of first page.
54  * @param current
55  *   Number of current page.
56  * @param total
57  *   Total number of pages.
58  * @param prev
59  *   Href for previous page.
60  * @param next
61  *   Href for next page.
62  */
63 Drupal.theme.prototype.mkdruPager = function (pages, start, current, total, prev, next) {
64   var html = "";
65   if (prev) 
66     html += '<a href="' + prev + '" class="mkdru-pager-prev">&#60;&#60; '
67             + Drupal.t("Prev") + '</a> | ';
68   else
69     html += '<span class="mkdru-pager-prev">&#60;&#60; ' + Drupal.t("Prev")
70             + '</span> | ';
71
72   if (start > 1)
73     html += '...';
74
75   for (var i = 0; i < pages.length; i++) {
76     if (i + start == current)
77       html += ' <span class="mkdru-pager-current">' + (i + start) + '</span>';
78     else
79       html += ' <a href="' + pages[i] + '">' + (i + start) + '</a>';
80   }
81
82   if (total > i)
83     html += ' ...';
84
85   if (next)
86     html += ' | <a href="' + next + '" class="mkdru-pager-next">'
87       + Drupal.t("Next") + ' &#62;&#62;</a>';
88   else
89     html += ' | <span class="mkdru-pager-next">' + Drupal.t("Next")
90             + ' &#62;&#62;</span>';
91
92   return html;
93 };
94
95 Drupal.theme.prototype.mkdruTerm = function (term, freq, linkClass, id) {
96   var html = '<a href="#"';
97   if (id)
98     html += ' target_id="' + id + '"';
99   html += ' class="' + linkClass + '">' + term + '</a><span> (' + freq + ')</span><br/>';
100   return html;
101 };