annotate client/digitallibrary/oldskin/dclib.js @ 314:074c3117f292

big autumn cleaning :-) - finally digilib.jsp uses the new javascript code - dito digicat.jsp - all files corresponding to the old frontend moved into /oldskin - all icons moved into /img
author robcast
date Thu, 28 Oct 2004 22:25:58 +0200
parents 24dbc008be14
children 23866acd6509
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
313
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
1 /*
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
2 Copyright (C) 2003-2004 WTWG Uni Bern, MPIWG Berlin
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
3
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
4 This program is free software; you can redistribute it and/or
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
5 modify it under the terms of the GNU General Public License
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
6 as published by the Free Software Foundation; either version 2
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
7 of the License, or (at your option) any later version.
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
8
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
9 This program is distributed in the hope that it will be useful,
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
12 GNU General Public License for more details.
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
13
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
14 You should have received a copy of the GNU General Public License
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
15 along with this program; if not, write to the Free Software
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
16 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
17
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
18 Author:
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
19 Christian Luginbuehl, 07.04.2004 , Version Alcatraz 0.6
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
20 Robert Casties 28.10.2004
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
21
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
22 !! requires baselib.js !!
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
23
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
24 */
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
25
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
26 function identify() {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
27 return 'Digicat v0.4';
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
28 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
29
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
30 var cells = null;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
31
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
32
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
33 function dc_init() {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
34
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
35 // put the query parameters (sans "?") in the parameters array
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
36 parseParameters(location.search.slice(1));
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
37 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
38
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
39 function display(detail) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
40 // redisplay the page
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
41 if (! detail) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
42 detail = 9;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
43 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
44 var queryString = getAllParameters(detail);
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
45 location.href = location.protocol + "//" + location.host + location.pathname + "?" + queryString;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
46 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
47
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
48 function dc_render(doc) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
49
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
50 var fWidth = document.body ? document.body.clientWidth : innerWidth;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
51 var fHeight = document.body ? document.body.clientHeight : innerHeight;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
52
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
53 var mx = getParameter("mx");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
54 cells = mx.split('x');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
55
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
56 var dw = getParameter("dw");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
57 var dh = getParameter("dh");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
58 var pt = getParameter("pt");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
59 var pn = getParameter("pn");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
60
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
61 var picWidth = (dw != 0) ? dw : Math.floor((fWidth-30)/cells[0])-2*cells[0]-1;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
62 var picHeight = (dh != 0) ? dh : picWidth;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
63
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
64 if (cells.length > 1) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
65 picHeight = (dh != 0) ? dh : Math.floor(((fHeight-30)-12*cells[1])/cells[1])-2*cells[1]-1;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
66 } else {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
67 cells[1] = Math.ceil(pt/cells[0]);
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
68 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
69
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
70 var cellWidth = parseInt(picWidth)+8;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
71 var cellHeight = parseInt(picHeight)+18;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
72
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
73 doc.writeln('<table width="100%" height="100%" border="0" cellspacing="1" cellpadding="0">');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
74
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
75 for (var j = 0; j < cells[1]; j++) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
76 doc.writeln('<tr>');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
77 for (var i = 0; i < cells[0]; i++) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
78 var idx = parseInt(pn)+i+j*cells[0];
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
79 var img = baseUrl + "/servlet/Scaler?fn=" + getParameter("fn") + "&pn=" + idx;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
80 img += "&dw=" + picWidth + "&dh=" + picHeight + "&mo=" + getParameter("mo");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
81 doc.write('<td width="'+cellWidth+'" height="'+cellHeight+'">');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
82 if (idx <= pt) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
83 doc.write('<a href="'+dl_link(idx)+'" target="_blank"><img src="'+img+'" border="0"></a><div class="number">'+idx+'</div>');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
84 } else {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
85 doc.write('<div class="nonumber">'+idx+'</div>');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
86 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
87 doc.writeln('</td>');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
88 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
89 doc.writeln(' </tr>');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
90 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
91 doc.writeln('</table>');
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
92 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
93
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
94
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
95 function dl_link(i) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
96 var link = baseUrl+"/digilib.jsp?fn="+getParameter("fn")+"&pn="+i+"&mo="+getParameter("mo");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
97 return link;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
98 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
99
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
100
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
101 function Backpage() {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
102 var pn = parseInt(getParameter("pn"));
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
103 if (pn <= 1) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
104 pn = 1;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
105 alert("You are already on the first page!");
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
106 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
107
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
108 pn = pn - parseInt(cells[0]*cells[1]);
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
109
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
110 if (pn < 1) {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
111 pn = 1;
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
112 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
113 setParameter("pn", pn);
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
114 display();
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
115 }
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
116
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
117 function Nextpage() {
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
118 var pn = parseInt(getParameter("pn"));
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
119 pn = pn + parseInt(cells[0]*cells[1]);
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
120 setParameter("pn", pn);
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
121 display();
24dbc008be14 big autumn cleaning :-)
robcast
parents:
diff changeset
122 }