annotate client/digitallibrary/navcat_n4.js @ 77:b877e54b0794

New servlet version 1.5b. Mostly cleanup. Global parameters for digilib now in DigilibConfiguration, per request parameters are now all in DigilibRequest. The DocuImage implementation can be selected by the configuration docuimage-class. Pixel-by-pixel view implemented with "mo=clip".
author robcast
date Fri, 24 Jan 2003 22:13:49 +0100
parents 866e798e2bef
children cbfc008b4245
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
20
d407cb901df4 Initial revision
robcast
parents:
diff changeset
1 // these two global variables have to be initialised before the frist use of the functions below
d407cb901df4 Initial revision
robcast
parents:
diff changeset
2 // to fill in the attributes you can use the function initPicture provided below
d407cb901df4 Initial revision
robcast
parents:
diff changeset
3 // - array with all attributes
d407cb901df4 Initial revision
robcast
parents:
diff changeset
4 var att = new Array();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
5
d407cb901df4 Initial revision
robcast
parents:
diff changeset
6 // - variable to store the path to the frame, in which the pictures should be created
d407cb901df4 Initial revision
robcast
parents:
diff changeset
7 var whichFrame = parent.mainFrame;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
8
d407cb901df4 Initial revision
robcast
parents:
diff changeset
9 // give a name to the window containing digicat - this way one can test if there is already a
d407cb901df4 Initial revision
robcast
parents:
diff changeset
10 // digicat-window open and replace the contents of it (ex. digilib)
d407cb901df4 Initial revision
robcast
parents:
diff changeset
11 window.name = "digicat";
d407cb901df4 Initial revision
robcast
parents:
diff changeset
12
d407cb901df4 Initial revision
robcast
parents:
diff changeset
13 function loadThumbTable() {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
14 tableWidth = whichFrame.innerWidth-30;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
15 tableHeight = whichFrame.innerHeight-30;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
16
d407cb901df4 Initial revision
robcast
parents:
diff changeset
17 cellWidth = Math.floor(tableWidth/att[3])-6;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
18 cellHeight = Math.floor(tableHeight/att[2])-4;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
19
d407cb901df4 Initial revision
robcast
parents:
diff changeset
20 // alert(tableWidth + " " + tableHeight + "\n" + cellWidth + " " +cellHeight);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
21
d407cb901df4 Initial revision
robcast
parents:
diff changeset
22 whichFrame.document.open();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
23 whichFrame.document.write('<html><head>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
24 whichFrame.document.write('<style type="text/css">.myFont {font-family: sans-serif, Arial; font-size: 11px; color: #FFFFFF}</style>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
25 whichFrame.document.write('<script language="Javascript">');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
26 whichFrame.document.write('function loadDigilib(idx) {');
50
866e798e2bef 13.8.2002 - [different files] : roc
robcast
parents: 34
diff changeset
27 whichFrame.document.write('linkRef = "' + parent.baseUrl + '/digilib.jsp?' + parent.att[0] + '+" + idx;');
20
d407cb901df4 Initial revision
robcast
parents:
diff changeset
28 whichFrame.document.write('win = window.open(linkRef, "digilib");');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
29 whichFrame.document.write('win.focus();');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
30 whichFrame.document.write('}');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
31 whichFrame.document.write('</script>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
32
d407cb901df4 Initial revision
robcast
parents:
diff changeset
33
d407cb901df4 Initial revision
robcast
parents:
diff changeset
34 whichFrame.document.write('</head><body bgcolor="#666666">');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
35 whichFrame.document.write('<table border="1" width="' + tableWidth + '" height="' + tableHeight + '">');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
36 for (i = 0; i < att[2]; i++) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
37 whichFrame.document.write('<tr>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
38 for (j = 0; j < att[3]; j++) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
39 indexNr = parseInt(att[1])+i*parseInt(att[3])+j;
50
866e798e2bef 13.8.2002 - [different files] : roc
robcast
parents: 34
diff changeset
40 thumb = parent.baseUrl + "/servlet/Scaler/";
20
d407cb901df4 Initial revision
robcast
parents:
diff changeset
41 thumb += att[0] + "?" + "pn=" + indexNr + "&ws=1.0&mo=fit&dw=" + cellWidth + "&dh=" + (cellHeight-25);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
42 whichFrame.document.write('<td align="center" valign="middle" width="' + cellWidth + '" height="' + cellHeight + '" class="myFont">');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
43 whichFrame.document.write('<a href="javascript:loadDigilib(' + indexNr + ')">');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
44 whichFrame.document.write('<img src="' + thumb + '" border="0">');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
45 whichFrame.document.write('</a><br>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
46 whichFrame.document.write(indexNr + '</td>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
47 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
48 whichFrame.document.write('</tr>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
49 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
50 whichFrame.document.write('</table></body></html>');
d407cb901df4 Initial revision
robcast
parents:
diff changeset
51 whichFrame.document.close();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
52 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
53
d407cb901df4 Initial revision
robcast
parents:
diff changeset
54
d407cb901df4 Initial revision
robcast
parents:
diff changeset
55 function Backpage() {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
56
d407cb901df4 Initial revision
robcast
parents:
diff changeset
57 if (att[1] <= 1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
58 att[1] = 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
59 alert("You are already on the first page!");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
60 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
61
d407cb901df4 Initial revision
robcast
parents:
diff changeset
62 att[1] = parseInt(att[1])-parseInt(att[2]*att[3]);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
63
d407cb901df4 Initial revision
robcast
parents:
diff changeset
64 if (att[1] < 1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
65 att[1] = 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
66 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
67 loadThumbTable();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
68 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
69
d407cb901df4 Initial revision
robcast
parents:
diff changeset
70
d407cb901df4 Initial revision
robcast
parents:
diff changeset
71 function Nextpage() {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
72
d407cb901df4 Initial revision
robcast
parents:
diff changeset
73 att[1] = parseInt(att[1])+parseInt(att[2]*att[3]);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
74 loadThumbTable();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
75 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
76
d407cb901df4 Initial revision
robcast
parents:
diff changeset
77
d407cb901df4 Initial revision
robcast
parents:
diff changeset
78 // capturing keypresses for next and previous page
d407cb901df4 Initial revision
robcast
parents:
diff changeset
79 function parseKeypress(event) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
80 var whichCode = (window.Event) ? event.which : event.keyCode;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
81 if (String.fromCharCode(whichCode) == "n") {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
82 Nextpage();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
83 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
84 if (String.fromCharCode(whichCode) == "b") {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
85 Backpage();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
86 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
87 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
88
d407cb901df4 Initial revision
robcast
parents:
diff changeset
89
d407cb901df4 Initial revision
robcast
parents:
diff changeset
90 // initialize browser specific things (keypress caputring)
d407cb901df4 Initial revision
robcast
parents:
diff changeset
91 function initScripts() {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
92 window.captureEvents(Event.KEYDOWN);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
93 window.onkeydown = parseKeypress;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
94 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
95
d407cb901df4 Initial revision
robcast
parents:
diff changeset
96
d407cb901df4 Initial revision
robcast
parents:
diff changeset
97 // fill in the values of the "att"-array
d407cb901df4 Initial revision
robcast
parents:
diff changeset
98 function initPicture(picURL) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
99 att = picURL.split("+");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
100
d407cb901df4 Initial revision
robcast
parents:
diff changeset
101 if (att[0].lastIndexOf("/") == att[0].length-1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
102 att[0] = att[0].substring(0, att[0].length-1);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
103 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
104
d407cb901df4 Initial revision
robcast
parents:
diff changeset
105 if (att.length < 2 || att[1] == "") {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
106 att[1] = 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
107 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
108 if (att.length < 3 || att[2] == "") {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
109 att[2] = 3;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
110 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
111
d407cb901df4 Initial revision
robcast
parents:
diff changeset
112 if (att.length < 4) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
113 att[3] = 4;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
114 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
115 }