Lines 1-20
Link Here
|
1 |
/* global __ __p */ |
1 |
/* global __ __p */ |
2 |
|
2 |
/* exported addMultiple delSingleRecord vShelfAdd openBiblio addSelToShelf delBasket sendBasket showMore showLess delSelRecords holdSel selRecord */ |
3 |
////////////////////////////////////////////////////////////////////////////// |
3 |
////////////////////////////////////////////////////////////////////////////// |
4 |
// BASIC FUNCTIONS FOR COOKIE MANAGEMENT // |
4 |
// BASIC FUNCTIONS FOR COOKIE MANAGEMENT // |
5 |
////////////////////////////////////////////////////////////////////////////// |
5 |
////////////////////////////////////////////////////////////////////////////// |
6 |
|
6 |
|
7 |
function basketCount(){ |
7 |
function basketCount(){ |
8 |
var valCookie = readCookie("bib_list"); |
8 |
var valCookie = readCookie("bib_list"); |
|
|
9 |
var basketcount = 0; |
9 |
if(valCookie){ |
10 |
if(valCookie){ |
10 |
var arrayRecords = valCookie.split("/"); |
11 |
var arrayRecords = valCookie.split("/"); |
11 |
if(arrayRecords.length > 0){ |
12 |
if(arrayRecords.length > 0){ |
12 |
var basketcount = arrayRecords.length-1; |
13 |
basketcount = arrayRecords.length-1; |
13 |
} else { |
14 |
} else { |
14 |
var basketcount = 0; |
15 |
basketcount = 0; |
15 |
} |
16 |
} |
16 |
} else { |
17 |
} else { |
17 |
var basketcount = 0; |
18 |
basketcount = 0; |
18 |
} |
19 |
} |
19 |
return basketcount; |
20 |
return basketcount; |
20 |
} |
21 |
} |
Lines 28-43
function writeCookie(name, val, wd) {
Link Here
|
28 |
} |
29 |
} |
29 |
} |
30 |
} |
30 |
|
31 |
|
31 |
function readCookieValue (str, val_beg) { |
|
|
32 |
var val_end = str.indexOf(";", val_end); |
33 |
if (val_end == -1) |
34 |
val_end = str.length; |
35 |
return str.substring(val_beg, val_end); |
36 |
} |
37 |
|
38 |
function readCookie(name, wd) { |
32 |
function readCookie(name, wd) { |
39 |
var str_name = name + "="; |
33 |
var str_name = name + "="; |
40 |
var str_len = str_name.length; |
|
|
41 |
var str_cookie = ""; |
34 |
var str_cookie = ""; |
42 |
if (wd) { |
35 |
if (wd) { |
43 |
str_cookie = parent.opener.document.cookie; |
36 |
str_cookie = parent.opener.document.cookie; |
Lines 45-57
function readCookie(name, wd) {
Link Here
|
45 |
else { |
38 |
else { |
46 |
str_cookie = parent.document.cookie; |
39 |
str_cookie = parent.document.cookie; |
47 |
} |
40 |
} |
48 |
// fixed - getting the part of the basket that is bib_list |
41 |
// fixed - getting the part of the basket that is bib_list |
49 |
var cookie_parts = str_cookie.split(";"); |
42 |
var cookie_parts = str_cookie.split(";"); |
50 |
for(var i=0;i < cookie_parts.length;i++) { |
43 |
for(var i=0;i < cookie_parts.length;i++) { |
51 |
var c = cookie_parts[i]; |
44 |
var c = cookie_parts[i]; |
52 |
while (c.charAt(0)==' ') c = c.substring(1,c.length); |
45 |
while (c.charAt(0)==' ') c = c.substring(1,c.length); |
53 |
if(c.indexOf(str_name) == 0) return c.substring(str_name.length,c.length); |
46 |
if(c.indexOf(str_name) == 0) return c.substring(str_name.length,c.length); |
54 |
} |
47 |
} |
55 |
return null; |
48 |
return null; |
56 |
} |
49 |
} |
57 |
|
50 |
|
Lines 83-89
function openBasket() {
Link Here
|
83 |
var optWin = "status=yes,scrollbars=yes,resizable=yes,toolbar=no,location=yes,height="+iH+",width="+iW; |
76 |
var optWin = "status=yes,scrollbars=yes,resizable=yes,toolbar=no,location=yes,height="+iH+",width="+iW; |
84 |
var loc = "/cgi-bin/koha/opac-basket.pl?" + strCookie; |
77 |
var loc = "/cgi-bin/koha/opac-basket.pl?" + strCookie; |
85 |
var basket = open(loc, "basket", optWin); |
78 |
var basket = open(loc, "basket", optWin); |
86 |
if (window.focus) {basket.focus()} |
79 |
if (window.focus) { basket.focus(); } |
87 |
} |
80 |
} |
88 |
else { |
81 |
else { |
89 |
showCartUpdate( __("Your cart is currently empty") ); |
82 |
showCartUpdate( __("Your cart is currently empty") ); |
Lines 139-163
function addRecord(val, selection,NoMsgAlert) {
Link Here
|
139 |
} |
132 |
} |
140 |
} |
133 |
} |
141 |
|
134 |
|
142 |
function AllAreChecked(s){ |
|
|
143 |
if (! s.length) { return false;} |
144 |
var l = s.length; |
145 |
for (var i=0; i < l; i++) { |
146 |
if(! s[i].checked) { return false; } |
147 |
} |
148 |
return true; |
149 |
} |
150 |
|
151 |
function SelectAll(){ |
152 |
if(document.bookbag_form.biblionumber.length > 0) { |
153 |
var checky = AllAreChecked(document.bookbag_form.biblionumber); |
154 |
var l = document.bookbag_form.biblionumber.length; |
155 |
for (var i=0; i < l; i++) { |
156 |
document.bookbag_form.biblionumber[i].checked = (checky) ? false : true; |
157 |
} |
158 |
} |
159 |
} |
160 |
|
161 |
function addMultiple(){ |
135 |
function addMultiple(){ |
162 |
var c_value = ""; |
136 |
var c_value = ""; |
163 |
if(document.bookbag_form.biblionumber.length > 0) { |
137 |
if(document.bookbag_form.biblionumber.length > 0) { |
Lines 173-180
function addMultiple(){
Link Here
|
173 |
} |
147 |
} |
174 |
} |
148 |
} |
175 |
|
149 |
|
176 |
function addSelRecords(valSel) { // function for adding a selection of biblios to the basket |
150 |
/* function for adding a selection of biblios to the basket from the results list */ |
177 |
// from the results list |
151 |
function addSelRecords(valSel) { |
178 |
var arrayRecords = valSel.split("/"); |
152 |
var arrayRecords = valSel.split("/"); |
179 |
var i = 0; |
153 |
var i = 0; |
180 |
var nbAdd = 0; |
154 |
var nbAdd = 0; |
Lines 214-225
function showCartUpdate(msg){
Link Here
|
214 |
} |
188 |
} |
215 |
|
189 |
|
216 |
function showListsUpdate(msg){ |
190 |
function showListsUpdate(msg){ |
217 |
// set body of popup window |
191 |
// set body of popup window |
218 |
alert(msg); |
192 |
alert(msg); |
219 |
} |
193 |
} |
220 |
|
194 |
|
221 |
function selRecord(num, status) { |
195 |
function selRecord(num, status) { |
222 |
var str = document.myform.records.value |
196 |
var str = document.myform.records.value; |
223 |
if (status){ |
197 |
if (status){ |
224 |
str += num+"/"; |
198 |
str += num+"/"; |
225 |
} |
199 |
} |
Lines 255-263
function delSelRecords() {
Link Here
|
255 |
recordsSel = 1; |
229 |
recordsSel = 1; |
256 |
var str2 = valCookie; |
230 |
var str2 = valCookie; |
257 |
while (!end){ |
231 |
while (!end){ |
258 |
s = str.indexOf("/"); |
232 |
var s = str.indexOf("/"); |
259 |
if (s>0){ |
233 |
if (s>0){ |
260 |
num = str.substring(0, s); |
234 |
var num = str.substring(0, s); |
261 |
str = delRecord(num,str); |
235 |
str = delRecord(num,str); |
262 |
str2 = delRecord(num,str2); |
236 |
str2 = delRecord(num,str2); |
263 |
updateLink(num,"del",top.opener); |
237 |
updateLink(num,"del",top.opener); |
Lines 285-292
function delSelRecords() {
Link Here
|
285 |
|
259 |
|
286 |
if (recordsSel) { |
260 |
if (recordsSel) { |
287 |
var strCookie = ""; |
261 |
var strCookie = ""; |
288 |
var nameCookie = "bib_list"; |
262 |
valCookie = readCookie(nameCookie, 1); |
289 |
var valCookie = readCookie(nameCookie, 1); |
|
|
290 |
strCookie = nameCookie + "=" + valCookie; |
263 |
strCookie = nameCookie + "=" + valCookie; |
291 |
var arrayRecords = valCookie.split("/"); |
264 |
var arrayRecords = valCookie.split("/"); |
292 |
updateBasket(arrayRecords.length-1,top.opener); |
265 |
updateBasket(arrayRecords.length-1,top.opener); |
Lines 334-352
function delBasket() {
Link Here
|
334 |
} |
307 |
} |
335 |
} |
308 |
} |
336 |
|
309 |
|
337 |
|
|
|
338 |
function quit() { |
339 |
if (document.myform.records.value) { |
340 |
var rep = false; |
341 |
rep = confirm( __p("Bibliographic records", "Are you sure you want to remove the selected items?") ); |
342 |
if (rep) { |
343 |
delSelRecords(); |
344 |
} |
345 |
} |
346 |
updateBasket(arrayRecords.length-1,top.opener); |
347 |
window.close(); |
348 |
} |
349 |
|
350 |
function sendBasket() { |
310 |
function sendBasket() { |
351 |
var nameCookie = "bib_list"; |
311 |
var nameCookie = "bib_list"; |
352 |
var valCookie = readCookie(nameCookie); |
312 |
var valCookie = readCookie(nameCookie); |
Lines 355-361
function sendBasket() {
Link Here
|
355 |
var loc = "/cgi-bin/koha/opac-sendbasket.pl?" + strCookie; |
315 |
var loc = "/cgi-bin/koha/opac-sendbasket.pl?" + strCookie; |
356 |
|
316 |
|
357 |
var optWin="scrollbars=yes,resizable=yes,height=600,width=900,top=50,left=100"; |
317 |
var optWin="scrollbars=yes,resizable=yes,height=600,width=900,top=50,left=100"; |
358 |
var win_form = open(loc,"win_form",optWin); |
318 |
open(loc,"win_form",optWin); |
359 |
} |
319 |
} |
360 |
|
320 |
|
361 |
function showMore() { |
321 |
function showMore() { |
Lines 393-402
function holdSel() {
Link Here
|
393 |
} |
353 |
} |
394 |
|
354 |
|
395 |
function updateBasket(updated_value,target) { |
355 |
function updateBasket(updated_value,target) { |
|
|
356 |
var bcount = ""; |
396 |
if(updated_value > 0){ |
357 |
if(updated_value > 0){ |
397 |
bcount = "<span>"+updated_value+"</span>"; |
358 |
bcount = "<span>"+updated_value+"</span>"; |
398 |
} else { |
|
|
399 |
bcount = ""; |
400 |
} |
359 |
} |
401 |
if(target){ |
360 |
if(target){ |
402 |
target.$('#basketcount').html(bcount); |
361 |
target.$('#basketcount').html(bcount); |
Lines 406-412
function updateBasket(updated_value,target) {
Link Here
|
406 |
} |
365 |
} |
407 |
|
366 |
|
408 |
function openBiblio(dest,biblionumber) { |
367 |
function openBiblio(dest,biblionumber) { |
409 |
openerURL=dest+"?biblionumber="+biblionumber; |
368 |
var openerURL = dest + "?biblionumber=" + biblionumber; |
410 |
opener.document.location = openerURL; |
369 |
opener.document.location = openerURL; |
411 |
opener.focus(); |
370 |
opener.focus(); |
412 |
} |
371 |
} |
Lines 418-424
function addSelToShelf() {
Link Here
|
418 |
var iH = 450; |
377 |
var iH = 450; |
419 |
var optWin = "status=yes,scrollbars=yes,resizable=yes,toolbar=no,location=yes,height="+iH+",width="+iW; |
378 |
var optWin = "status=yes,scrollbars=yes,resizable=yes,toolbar=no,location=yes,height="+iH+",width="+iW; |
420 |
var loc = "/cgi-bin/koha/opac-addbybiblionumber.pl?biblionumber="+items; |
379 |
var loc = "/cgi-bin/koha/opac-addbybiblionumber.pl?biblionumber="+items; |
421 |
var shelf = open(loc, "shelf", optWin); |
380 |
open(loc, "shelf", optWin); |
422 |
} else { |
381 |
} else { |
423 |
alert( __p("Bibliographic record", "No item was selected") ); |
382 |
alert( __p("Bibliographic record", "No item was selected") ); |
424 |
} |
383 |
} |
Lines 427-446
function addSelToShelf() {
Link Here
|
427 |
/// vShelfAdd() builds url string for multiple-biblio adds. |
386 |
/// vShelfAdd() builds url string for multiple-biblio adds. |
428 |
|
387 |
|
429 |
function vShelfAdd() { |
388 |
function vShelfAdd() { |
430 |
bibs= new Array; |
389 |
var bibs = new Array; |
431 |
if(document.bookbag_form.biblionumber.length > 0) { |
390 |
if(document.bookbag_form.biblionumber.length > 0) { |
432 |
for (var i=0; i < document.bookbag_form.biblionumber.length; i++) { |
391 |
for (var i=0; i < document.bookbag_form.biblionumber.length; i++) { |
433 |
if (document.bookbag_form.biblionumber[i].checked) { |
392 |
if (document.bookbag_form.biblionumber[i].checked) { |
434 |
bibs.push("biblionumber=" + document.bookbag_form.biblionumber[i].value); |
393 |
bibs.push("biblionumber=" + document.bookbag_form.biblionumber[i].value); |
435 |
} |
|
|
436 |
} |
437 |
if (bibs.length == 0) { showListsUpdate( __p("Bibliographic record", "No item was selected") ); } |
438 |
return bibs.join("&"); |
439 |
} else { |
440 |
if (document.bookbag_form.biblionumber.checked) { |
441 |
return "biblionumber=" + document.bookbag_form.biblionumber.value; |
442 |
} |
394 |
} |
443 |
} |
395 |
} |
|
|
396 |
if (bibs.length == 0) { |
397 |
showListsUpdate( __p("Bibliographic record", "No item was selected") ); |
398 |
} |
399 |
return bibs.join("&"); |
400 |
} else { |
401 |
if (document.bookbag_form.biblionumber.checked) { |
402 |
return "biblionumber=" + document.bookbag_form.biblionumber.value; |
403 |
} |
404 |
} |
444 |
} |
405 |
} |
445 |
|
406 |
|
446 |
function showCart(){ |
407 |
function showCart(){ |
Lines 450-459
function showCart(){
Link Here
|
450 |
if( scrolld > top ){ |
411 |
if( scrolld > top ){ |
451 |
top = scrolld + 15; |
412 |
top = scrolld + 15; |
452 |
} |
413 |
} |
453 |
var menuWidth = 200; |
414 |
var left = position.left - 0; |
454 |
var buttonWidth = $("#cartmenulink").innerWidth(); |
|
|
455 |
var buttonOffset = menuWidth - buttonWidth; |
456 |
var left = position.left - 0 // buttonOffset; |
457 |
$("#cartDetails") |
415 |
$("#cartDetails") |
458 |
.css({"position":"absolute", "top":top, "left":left}) |
416 |
.css({"position":"absolute", "top":top, "left":left}) |
459 |
.fadeIn("fast"); |
417 |
.fadeIn("fast"); |
460 |
- |
|
|