# HG changeset patch # User luginbue # Date 1021940981 -7200 # Node ID e918bd61084d5ce9bd7152776327dd37a8486a05 # Parent 57874b52c2fce90fe00a424b46f09fd60c354c61 opera support done, bugfixes diff -r 57874b52c2fc -r e918bd61084d client/digitallibrary/digilib.jsp --- a/client/digitallibrary/digilib.jsp Tue May 21 02:29:41 2002 +0200 +++ b/client/digitallibrary/digilib.jsp Tue May 21 02:29:41 2002 +0200 @@ -20,22 +20,78 @@ // parsing the query // ----------------- -String query = ""; +String query = "dlImage.jsp?"; +String token; if (request.getQueryString() != null) { - StringTokenizer tokenizer = new StringTokenizer(request.getQueryString(), "+"); - - int numTokens = tokenizer.countTokens(); + // have to enable the passing of delimiter to get empty parameters + StringTokenizer tokenizer = new StringTokenizer(request.getQueryString(), "+", true); - if (numTokens >= 1) query += "fn=" + tokenizer.nextToken(); - if (numTokens >= 2) query += "&pn=" + tokenizer.nextToken(); - if (numTokens >= 3) query += "&ws=" + tokenizer.nextToken(); - if (numTokens >= 4) query += "&mo=" + tokenizer.nextToken(); - if (numTokens >= 5) query += "&mk=" + tokenizer.nextToken(); - if (numTokens >= 6) query += "&wx=" + tokenizer.nextToken(); - if (numTokens >= 7) query += "&wy=" + tokenizer.nextToken(); - if (numTokens >= 8) query += "&ww=" + tokenizer.nextToken(); - if (numTokens >= 9) query += "&wh=" + tokenizer.nextToken(); + // looks ugly but it works - hopefully... + + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (token != "+") { + query += "fn=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (token != "+") { + query += "&pn=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (token != "+") { + query += "&ws=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (!token.equals("+")) { + query += "&mo=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (!token.equals("+")) { + query += "&mk=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (token != "+") { + query += "&wx=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (token != "+") { + query += "&wy=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (token != "+") { + query += "&ww=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } + if (tokenizer.hasMoreTokens()) { + token = tokenizer.nextToken(); + if (token != "+") { + query += "&wh=" + token; + if (tokenizer.hasMoreTokens()) tokenizer.nextToken(); + } + } // a module update for total number of pages query += "&pt=" + DB.getNumPages(request); @@ -43,11 +99,11 @@ %> - + - + \ No newline at end of file diff -r 57874b52c2fc -r e918bd61084d client/digitallibrary/modules/pagesTotal.js --- a/client/digitallibrary/modules/pagesTotal.js Tue May 21 02:29:41 2002 +0200 +++ b/client/digitallibrary/modules/pagesTotal.js Tue May 21 02:29:41 2002 +0200 @@ -61,10 +61,11 @@ function page(keepArea) { do { - page = prompt("Goto Page (1 - " + att[9] + "):", 1); - } while (!isNaN(att[9]) && (page != null) && ((page < 1) || (page > parent.numPages))); + var page = prompt("Goto Page (1 - " + att[9] + "):", 1); + + } while ((page != null) && ((isNaN(page)) || (page < 1) || (page > att[9]))); - if (page != null && page != att[1]) { + if ((page != null) && (page != att[1])) { att[1] = page; loadPicture(0, keepArea); }