Mercurial > hg > digilib-old
changeset 33:054ebc851059
first update of new client-version
author | luginbue |
---|---|
date | Thu, 21 Feb 2002 02:27:06 +0100 |
parents | c5ca5f72fb65 |
children | 84a481a388bb |
files | client/digitallibrary/dlImage.jsp client/digitallibrary/dlMenu.html |
diffstat | 2 files changed, 211 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/client/digitallibrary/dlImage.jsp Thu Feb 21 02:27:06 2002 +0100 @@ -0,0 +1,105 @@ +<% +// checking if the height and width of this client is already known +if ((request.getParameter("dw") == null) || (request.getParameter("dh") == null)) { +%> + +<html> +<head> +<script language="Javascript"> + +function redirect() { + + if (navigator.appName.toLowerCase() == "netscape") { // mozilla-browsers (netscape 4.xx, netscape 6.xx, etc.) + client = "&dw=" + (innerWidth-30) + "&dh=" + (innerHeight-30); + } else { // ie + client = "&dw=" + (document.body.clientWidth-30) + "&dh=" + (document.body.clientHeight-30); + } + + location.replace("dlImage.jsp?<%= request.getQueryString() %>" + client); +} + +</script> +</head> +<body bgcolor="#666666" onload="redirect()"> +</body> +</html> + +<% +} else { + +// default values for parameters +String fn = "/"; // url of the page/document +String pn = "1"; // page number +String ws = "1"; // scale factor +String mo = ""; // special options like 'fit' for gifs +String mk = "0/0"; // marks +String wx = "0"; // left edge of image (float from 0 to 1) +String wy = "0"; // top edge in image (float from 0 to 1) +String ww = "1"; // width of image (float from 0 to 1) +String wh = "1"; // height of image (float from 0 to 1) +String dw = ""; // width of client in pixels +String dh = ""; // height of client in pixels + +String pt = ""; // (module pagesTotal.js) total number of pages + +// overrriding default parameters with provided parameters from query-string +if (request.getParameter("fn") != null) fn = request.getParameter("fn"); +if (request.getParameter("pn") != null) pn = request.getParameter("pn"); +if (request.getParameter("ws") != null) ws = request.getParameter("ws"); +if (request.getParameter("mo") != null) mo = request.getParameter("mo"); +if (request.getParameter("mk") != null) mk = request.getParameter("mk"); +if (request.getParameter("wx") != null) wx = request.getParameter("wx"); +if (request.getParameter("wy") != null) wy = request.getParameter("wy"); +if (request.getParameter("ww") != null) ww = request.getParameter("ww"); +if (request.getParameter("wh") != null) wh = request.getParameter("wh"); +if (request.getParameter("dw") != null) dw = request.getParameter("dw"); +if (request.getParameter("dh") != null) dh = request.getParameter("dh"); +if (request.getParameter("pt") != null) pt = request.getParameter("pt"); + +String imageLocation = "http://" + request.getServerName() + "/docuserver/digitallibrary/servlet/Scaler/" + fn + "?pn=" + pn + "&ws=" + ws + "&mo=" + mo + "&wx=" + wx + "&wy=" + wy + "&ww=" + ww + "&wh=" + wh + "&dw=" + dw + "&dh=" + dh; + +%> + +<html> +<head> +<script language="JavaScript"> + +// browser version test to include the corresponding navigation-file +if ((navigator.appName.toLowerCase() == "netscape") && (parseFloat(navigator.appVersion) < 5.0)) { + document.write('<script src="navigation_n4.js"><\/script>'); +} else if (navigator.appName.toLowerCase() == "netscape") { + document.write('<script src="navigation_n6.js"><\/script>'); +} else if ((navigator.appName.toLowerCase() == "microsoft internet explorer") && (parseFloat(navigator.appVersion) >= 4.0)) { + document.write('<script src="navigation_ie.js"><\/script>'); +} else { + // 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.'); + document.write('<script src="navigation_n6.js"><\/script>'); +} + +// add module to show the total number of pages (not browser dependant!) +document.write('<script src="modules\/pagesTotal.js"><\/script>'); +document.write('<script src="modules\/pdfMaker.js"><\/script>'); + +</script> +</head> +<body bgcolor="#666666" onload='init_pagesTotal("<%= fn %>", "<%= pn %>", "<%= ws %>", "<%= mo %>", "<%= mk %>", "<%= wx %>", "<%= wy %>", "<%= ww %>", "<%= wh %>", "<%= pt %>")'> + +<div id="lay1" style="position: absolute; left: 10px; top: 10px; visibility: visible"><img name="pic" src="<%= imageLocation %>" border="0"></div> + +<div id="dot0" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark1.gif" border="0"></div> +<div id="dot1" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark2.gif" border="0"></div> +<div id="dot2" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark3.gif" border="0"></div> +<div id="dot3" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark4.gif" border="0"></div> +<div id="dot4" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark5.gif" border="0"></div> +<div id="dot5" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark6.gif" border="0"></div> +<div id="dot6" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark7.gif" border="0"></div> +<div id="dot7" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="mark8.gif" border="0"></div> +<div id="eck1" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="olinks.gif" border="0"></div> +<div id="eck2" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="orechts.gif" border="0"></div> +<div id="eck3" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="ulinks.gif" border="0"></div> +<div id="eck4" style="position: absolute; left: -20; top: 100; visibility: hidden"><img src="urechts.gif" border="0"></div> +</body> +</html> +<% +} +%>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/client/digitallibrary/dlMenu.html Thu Feb 21 02:27:06 2002 +0100 @@ -0,0 +1,106 @@ +<html> +<head> +<style type="text/css"> +.menu {position:absolute; visibility:hidden} + +.item1 {position:absolute; left:33; width:50; height:14; clip:rect(0,50,14,0); visibility:hidden} +.item2 {position:absolute; left:43; width:40; height:14; clip:rect(0,40,14,0); visibility:hidden} +.item3 {position:absolute; left:3; width:80; height:14; clip:rect(0,80,14,0); visibility:hidden} + +.text {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; color: #FFFFFF; text-decoration: none} +</style> +<script language="JavaScript" src="buttons/menu.js"></script> +<script language="JavaScript"> +// because on a netscape 4.xx bug (messing up with layers on resize) we cache the window +// resize event and redisplay the navigation frame +if (document.layers && !document.getElementById) { + window.onresize = function() {parent.mainFrame.rightFrame.location.reload();} +} + + +// variable that store the texts for contexthelp +var helpText = new Array(); + +helpText[0] = "'back'-button|Click on this button to load the previous image (usually the next page from a manuscript)."; +helpText[1] = "'next'-button|Click on this button to load the next image (usually the next page from a manuscript)."; +helpText[2] = "'page'-button|After clicking 'page' you will be prompted for a specific page you want to see.<br>Note that the page number refers to the same serie you are in now."; +helpText[3] = "'digicat'-button|Click here to open a new window containing thumbnails of the current series pages to navigate."; +helpText[4] = "'mark'-button|You can set marks into the picture. After hitting 'mark' you have to click on the desired picures location, a numbered mark appears.<br>Check out 'reference' to make these marks (up to 8) visible for others."; +helpText[5] = "'reference'-button|Choose LaTeX or HTML mode to get a link for the actual (zoomed) picture with all set marks.<br>This link can easily be included in a TeX- or HTML-formatted document/page."; +helpText[6] = "'zoom area'-button|With 'zoom area' you can zoom into any rectangular field for the current picture.<br>After clicking on the button click on the image to set any corner (ex. topleft), release the mousebutton and move the mouse until you have the desired size, then click again."; +helpText[7] = "'zoom point'-button|Click on 'zoom point' then click into a point of the picture. This gives you a zoomed picture centered around your clicked point."; +helpText[8] = "'zoom out'-button|To gain the original unzoomed picture, click on 'zoom out'.<br>Note that any set marks are still saved at their positions."; +helpText[9] = "'move to'-button|This button allows you change the center of a zoomed picture, while not changing the current zoom-factor.<br>Use: Click on the point in the picture you want to be the new center of the image."; +helpText[10] = "'scale'-button|By clicking on one of the menu entries you can select the factor the currently displayed picture will be scaled.<br>Note: a scale factor of '1.0' means that the picture fits right into the working area, while '2.0' means that it will be twice as high and large."; +helpText[11] = "'make pdf'-button|You can make a PDF with several pictures from this directory in it. Click the button and follow the instructions."; +helpText[12] = "'?'-button|In its menu you are able change options like the visibility of this contextsensitive help, with 'Keep area' the program keeps its current area when changing to another page or with 'Fit GIFs' you can force to program to adjust the size of GIF-images to the working area."; + + +// boolean variable to eighter show or not show the additional help +// change in the menuitem its original mark +var showHelp = false; + +// variable to tell if while changing to another page it should keep the area +// change in the menuitem its original mark +var keepArea = true; + +// changes to the correct mark of menu33 (fit GIFs) +// I know it is not very nice to do it this way +function checkAtt3() { + if (parent.mainFrame.att) { + if (parent.mainFrame.att.length >= 3) { + if (parent.mainFrame.att[3].indexOf('f') > -1) changeMark(33); + } else { + setTimeout("checkAtt3()", 100); + } + } +} + +</script> +</head> + +<body bgcolor="#CCCCCC" leftmargin="8" marginwidth="8" topmargin="5" marginheight="5" onload="preloadImages();" onunload="closeContextHelp()"> +<a href="#" onClick="parent.mainFrame.backPage(keepArea); return false;" onmouseover="overButton(0)" onmouseout="awayButton(0)"><img src="buttons/back0.gif" width="73" height="30" border="0"></a><br> +<a href="#" onClick="parent.mainFrame.nextPage(keepArea); return false;" onmouseover="overButton(1)" onmouseout="awayButton(1)"><img src="buttons/next0.gif" width="73" height="30" border="0"></a><br> +<a href="#" onClick="parent.mainFrame.page(keepArea); return false;" onmouseover="overButton(2)" onmouseout="awayButton(2)"><img src="buttons/page0.gif" width="73" height="30" border="0"></a><br> +<a href="#" onClick="parent.mainFrame.digicat(); return false;" onmouseover="overButton(3)" onmouseout="awayButton(3)"><img src="buttons/digicat0.gif" width="73" height="30" border="0"></a><br><br> +<a href="#" onClick="parent.mainFrame.mark(); return false;" onmouseover="overButton(4)" onmouseout="awayButton(4)"><img src="buttons/mark0.gif" width="73" height="30" border="0"></a><br> +<a href="#" onclick="hideMenu(); showMenu(1); return false;" onmouseover="overButton(5)" onmouseout="awayButton(5)"><img src="buttons/reference0.gif" width="73" height="30" border="0"></a><br><br> +<a href="#" onClick="parent.mainFrame.zoomArea(); return false;" onmouseover="overButton(6)" onmouseout="awayButton(6)"><img src="buttons/zoomarea0.gif" width="73" height="30" border="0"></a><br> +<a href="#" onClick="parent.mainFrame.zoomPoint(); return false;" onmouseover="overButton(7)" onmouseout="awayButton(7)"><img src="buttons/zoompoint0.gif" width="73" height="30" border="0"></a><br> +<a href="#" onClick="parent.mainFrame.zoomOut(); return false;" onmouseover="overButton(8)" onmouseout="awayButton(8)"><img src="buttons/zoomout0.gif" width="73" height="30" border="0"></a><br> +<a href="#" onClick="parent.mainFrame.moveTo(); return false;" onmouseover="overButton(9)" onmouseout="awayButton(9)"><img src="buttons/moveto0.gif" width="73" height="30" border="0"></a><br><br> +<a href="#" onclick="hideMenu(); showMenu(2); return false;" onmouseover="overButton(10)" onmouseout="awayButton(10)"><img src="buttons/scale0.gif" width="73" height="30" border="0"></a><br><br> +<a href="#" onClick="parent.mainFrame.makePDF(); return false;" onmouseover="overButton(11)" onmouseout="awayButton(11)"><img src="buttons/makepdf0.gif" width="73" height="30" border="0"></a><br><br> +<a href="#" onclick="hideMenu(); showMenu(3); return false;" onmouseover="overButton(12)" onmouseout="awayButton(12)"><img src="buttons/questionmark0.gif" width="73" height="30" border="0"></a> + +<div id="menu1" class="menu" style="top:211; left:31; width:54; height:33; clip:rect(0,54,33,0)"></div> + <div id="menu11" class="item1" style="top:213"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.ref(0); return false;" onmouseover="overItem(11)" onmouseout="awayItem(11)">LaTeX</a></center></div> + <div id="menu12" class="item1" style="top:228"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.ref(1); return false;" onmouseover="overItem(12)" onmouseout="awayItem(12)">HTML</a></center></div> + +<div id="menu2" class="menu" style="top:399; left:41; width:44; height:93; clip:rect(0,44,93,0)"></div> + <div id="menu21" class="item2" style="top:401"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.scale(0.7); return false;" onmouseover="overItem(21)" onmouseout="awayItem(21)">0.7</a></center></div> + <div id="menu22" class="item2" style="top:416"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.scale(1.0); return false;" onmouseover="overItem(22)" onmouseout="awayItem(22)">1.0</a></center></div> + <div id="menu23" class="item2" style="top:431"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.scale(1.5); return false;" onmouseover="overItem(23)" onmouseout="awayItem(23)">1.5</a></center></div> + <div id="menu24" class="item2" style="top:446"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.scale(2.0); return false;" onmouseover="overItem(24)" onmouseout="awayItem(24)">2.0</a></center></div> + <div id="menu25" class="item2" style="top:461"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.scale(2.5); return false;" onmouseover="overItem(25)" onmouseout="awayItem(25)">2.5</a></center></div> + <div id="menu26" class="item2" style="top:476"><center><a href="#" class="text" onClick="hideMenu(); parent.mainFrame.scale(3.0); return false;" onmouseover="overItem(26)" onmouseout="awayItem(26)">3.0</a></center></div> + +<div id="menu3" class="menu" style="top:490; left:1; width:84; height:48; clip:rect(0,84,48,0)"></div> + <div id="menu31" class="item3" style="top:492"><center><a href="#" class="text" onclick="changeMark(31); hideMenu(); changeHelp(); return false;" onmouseover="overItem(31)" onmouseout="awayItem(31)"><img id="mark31" src="buttons/nomark.gif" border="0">Contexthelp</a></center></div> + <div id="menu32" class="item3" style="top:507"><center><a href="#" class="text" onclick="changeMark(32); keepArea = !keepArea; return false;" onmouseover="overItem(32)" onmouseout="awayItem(32)"><img id="mark32" src="buttons/mark.gif" border="0">Keep area</a></center></div> + <div id="menu33" class="item3" style="top:522"><center><a href="#" class="text" onclick="changeMark(33); (parent.mainFrame.att[3].indexOf('f') > -1) ? parent.mainFrame.att[3] = '' : parent.mainFrame.att[3] = 'fit'; parent.mainFrame.loadPicture(2, keepArea); return false;" onmouseover="overItem(33)" onmouseout="awayItem(33)"><img id="mark33" src="buttons/nomark.gif" border="0">Fit GIFs</a></center></div> + + +<script language="Javascript"> +// initial background color of the menues (has to be done like this, +// otherwise menues in ns4 you will have wrong dimensions) +changeBc("menu1", "#666666"); +changeBc("menu2", "#666666"); +changeBc("menu3", "#666666"); + +// launch the initial check of att[3] (fit gifs) and change to the correct mark +checkAtt3(); +</script> +</body> +</html>