comparison client/digitallibrary/digicat.jsp @ 226:88f2de6b518a

new digicat version with only one js file
author luginbue
date Fri, 09 Jul 2004 02:15:54 +0200
parents 5d483d9c149a
children bf34a4d8f6b4
comparison
equal deleted inserted replaced
225:7349d58cd391 226:88f2de6b518a
15 System.out.println(e); 15 System.out.println(e);
16 } 16 }
17 } 17 }
18 %> 18 %>
19 19
20
20 <% 21 <%
21 // set up request object for base URL 22
22 digilib.servlet.DigilibRequest dlRequest = new digilib.servlet.DigilibRequest(request); 23 // parsing the query
24 // -----------------
25
26 digilib.servlet.DigilibRequest dcRequest = new digilib.servlet.DigilibRequest(request);
23 // check if authentication is needed and redirect if necessary 27 // check if authentication is needed and redirect if necessary
24 docBean.doAuthentication(dlRequest, response); 28 docBean.doAuthentication(dcRequest, response);
25 29
26 // add number of pages
27 dlRequest.setValue("pt", docBean.getNumPages(dlRequest));
28 %> 30 %>
29 31
32
33 <%
34
35 // the different levels of presentation
36 // ------------------------------------
37
38
39 // level 3 representation hack - lugi
40 // it would be much more interesting to check
41 // if the sidebar is actually installed and in
42 // the case it isn't - automatically do it.
43 // however this requires client-side tests and
44 // so slows down everything.
45 // we might want to talk about it for a future
46 // release
47
48 if (dcRequest.getAsInt("lv") == 3) {
49 String userAgent = request.getHeader("User-Agent").toLowerCase();
50
51 if (userAgent.indexOf("mozilla/5.0") == 0) {
52
53 // mozilla 5 that does not support xul-sidebars
54 if (userAgent.indexOf("opera") > -1) dcRequest.setValue("lv", 2);
55 if (userAgent.indexOf("chimera") > -1) dcRequest.setValue("lv", 2);
56 if (userAgent.indexOf("camino") > -1) dcRequest.setValue("lv", 2);
57 if (userAgent.indexOf("konqueror") > -1) dcRequest.setValue("lv", 2);
58 if (userAgent.indexOf("safari") > -1) dcRequest.setValue("lv", 2);
59 if (userAgent.indexOf("galeon") > -1) dcRequest.setValue("lv", 2);
60 if (userAgent.indexOf("skipstone") > -1) dcRequest.setValue("lv", 2);
61 if (userAgent.indexOf("k-meleon") > -1) dcRequest.setValue("lv", 2);
62 if (userAgent.indexOf("firefox") > -1) dcRequest.setValue("lv", 2);
63
64 // the chance is quite big, that the browser supports xul-sidebars
65 dcRequest.setValue("lv", 1);
66
67 } else {
68
69 // redirect to level 2 because of definitive lack of sidebar support
70 dcRequest.setValue("lv", 2);
71 }
72 }
73
74
75
76 switch (dcRequest.getAsInt("lv")) {
77
78 // LEVEL 0 --------------------------------------------------------------
79
80 case 0:
81 %>
82
83 <%
84 break; // level 0
85
86
87
88
89 // LEVEL 1 --------------------------------------------------------------
90
91 case 1:
92
93 // set number of pages
94 dcRequest.setValue("pt", docBean.getNumPages(dcRequest));
95 %>
30 <html> 96 <html>
31 <head> 97 <head>
32 98
33 <script language="JavaScript"> 99 <style type="text/css">
100 td {
101 font-family: Helvetica, Arial, sans-serif;
102 font-size: 11px;
103 color: #FFFFFF;
104 text-align: center;
105 vertical-align: middle;
106 }
107 </style>
34 108
35 var baseUrl = "<%= dlRequest.getAsString("base.url") %>"; 109 <script src="navcat.js" type="text/javascript"></script>
110 <script type="text/javascript">
36 111
37 // the document's query string (minus "?") 112 var baseUrl = "<%= dcRequest.getAsString("base.url") %>";
38 var query = location.search.substring(1);
39 113
40 // first page number 114 newParameter('fn', '<%= dcRequest.getFilePath() %>', '', 1);
41 var firstPage = <%= docBean.getFirstPage(dlRequest) %>; 115 newParameter('pn', '<%= dcRequest.getAsString("pn") %>', '1', 1);
116 newParameter('pt', '<%= dcRequest.getAsString("pt") %>', '<%= dcRequest.getAsString("pt") %>', 9);
42 117
43 // number of pages of the document 118 newParameter('mo', '<%= dcRequest.getAsString("mo") %>', '6x4', 1);
44 var numPages = <%= docBean.getNumPages(dlRequest) %>;
45 119
46 // browser version test to include the corresponding navigation-file 120 newParameter('dw', '<%= dcRequest.getAsString("dw") %>', '0', 1);
47 if ((navigator.appName.toLowerCase() == "netscape") && (parseFloat(navigator.appVersion) < 5.0)) { 121 newParameter('dh', '<%= dcRequest.getAsString("dh") %>', '0', 1);
48 top.document.write('<script src="navcat_n4.js"><\/script>');
49 } else if (navigator.appName.toLowerCase() == "netscape") {
50 top.document.write('<script src="navcat_n6.js"><\/script>');
51 } else if ((navigator.appName.toLowerCase() == "microsoft internet explorer") && (parseFloat(navigator.appVersion) >= 4.0)) {
52 top.document.write('<script src="navcat_ie.js"><\/script>');
53 } else {
54 alert('Your browser is not directly supported by this client right now.\n\nLoading now the optimised version for Netscape 6, that sticks the most to the w3c specifications.');
55 top.document.write('<script src="navcat_n6.js"><\/script>');
56 }
57 122
58 </script> 123 </script>
59 124
60 </head> 125 </head>
61 126
62 <frameset cols="*,90" boder="no" border="0" onLoad="whichFrame = parent.mainFrame; initPicture(query); loadThumbTable(); initScripts();"> 127 <body bgcolor="#666666">
63 <frame name="mainFrame" src="about:blank"> 128
64 <frame name="rightFrame" src="navcat.html" scrolling="no" noresize> 129 <div align="center">
130 <script type="text/javascript">
131 init();
132 </script>
133 </div>
134
135 </body>
136
137 </html>
138 <%
139 break; // level 1
140
141
142
143
144 // LEVEL 2 --------------------------------------------------------------
145
146 case 2:
147 %>
148
149 <%
150 // retrieve request in new paramter format and redirect to level 1
151 dcRequest.setValue("lv", 1);
152 String query = "digicat.jsp?" + dcRequest.getAsString();
153 %>
154
155 <html>
156 <head>
157 <title>Digital Document Library - Alcatraz (Level 2)</title>
158 </head>
159
160 <frameset cols="*,90" border="0">
161 <frame name="mainFrame" src="<%= query %>" scrolling="auto">
162 <frame name="rightFrame" src="dcMenu.html" scrolling="no" noresize>
65 </frameset> 163 </frameset>
66 164
67 </html> 165 </html>
166
167 <%
168 break; // level 2
169
170 } // end switch
171
172 %>