//////////////////////////////////////////////////////////////////////////////
-// BASIC FUNCTIONS FOR COOKIE MANGEMENT //
+// BASIC FUNCTIONS FOR COOKIE MANAGEMENT //
//////////////////////////////////////////////////////////////////////////////
var CGIBIN = "/cgi-bin/koha/";
if (write) {
writeCookie(nameCookie, valCookie);
if (selection) { // when adding a selection of records
+ updateLink(val,"add");
return 1;
}
if (! NoMsgAlert ) {
showCartUpdate(MSG_RECORD_ADDED);
+ updateLink(val,"add");
}
}
}
}
function showCartUpdate(msg){
- cartUpdate.setBody(msg);
- cartUpdate.render("cc");
- cartUpdate.show();
- YAHOO.util.Event.addListener("cartUpdate", "click", cartUpdate.hide, cartUpdate, true);
- setTimeout("cartUpdate.hide()",5000);
+ // set body of popup window
+ $("#cartDetails").html(msg);
+ showCart();
+ setTimeout("hideCart()",2000);
+}
+
+function showListsUpdate(msg){
+ // set body of popup window
+ $("#listsDetails").html(msg);
+ showLists();
+ setTimeout("hideLists()",2000);
}
function selRecord(num, status) {
document.myform.records.value = str;
}
+function delSingleRecord(biblionumber){
+ var nameCookie = "bib_list";
+ var valCookie = readCookie(nameCookie);
+ var arrayRecords = valCookie.split("/");
+ var pos = jQuery.inArray(biblionumber,arrayRecords);
+ arrayRecords.splice(pos,1);
+ valCookie = arrayRecords.join("/");
+ writeCookie( nameCookie, valCookie );
+ updateBasket( arrayRecords.length-1 );
+ updateLink(biblionumber,"del");
+ showCartUpdate(MSG_RECORD_REMOVED);
+}
+
function delSelRecords() {
var recordsSel = 0;
var end = 0;
var nameCookie = "bib_list";
var valCookie = readCookie(nameCookie, 1);
-
if (valCookie) {
var str = document.myform.records.value;
if (str.length > 0){
while (!end){
s = str.indexOf("/");
if (s>0){
- num = str.substring(0, s)
+ num = str.substring(0, s);
str = delRecord(num,str);
str2 = delRecord(num,str2);
+ updateLink(num,"del",top.opener);
} else {
end = 1;
}
rep = confirm(MSG_CONFIRM_DEL_BASKET);
if (rep) {
delCookie(nameCookie);
+ updateAllLinks(top.opener);
document.location = "about:blank";
updateBasket(0,top.opener);
window.close();
var win_form = open(loc,"win_form",optWin);
}
+function downloadBasket() {
+ var nameCookie = "bib_list";
+ var valCookie = readCookie(nameCookie);
+ var strCookie = nameCookie + "=" + valCookie;
+
+ var loc = CGIBIN + "opac-downloadcart.pl?" + strCookie;
+
+ open(loc,"win_form",'dependant=yes,scrollbars=no,resizable=no,height=300,width=450,top=50,left=100');
+}
+
function printBasket() {
var loc = document.location + "&print=1";
document.location = loc;
function updateBasket(updated_value,target) {
if(target){
- target.$('#basket').html("<span>"+updated_value+"</span>");
- target.$('#cartDetails').html(_("Your cart contains ")+updated_value+_(" items"));
+ target.$('#basketcount').html("<span>"+updated_value+"</span>");
+ target.$('#cartDetails').html(MSG_IN_YOUR_CART+updated_value);
} else {
- $('#basket').html("<span>"+updated_value+"</span>");
- $('#cartDetails').html(_("Your cart contains ")+updated_value+_(" items"));
+ $('#basketcount').html("<span>"+updated_value+"</span>");
+ $('#cartDetails').html(MSG_IN_YOUR_CART+updated_value);
}
var basketcount = updated_value;
}
bibs.push("biblionumber=" + document.bookbag_form.biblionumber[i].value);
}
}
+ if (bibs.length == 0) { showListsUpdate(MSG_NO_RECORD_SELECTED); }
return bibs.join("&");
} else {
if (document.bookbag_form.biblionumber.checked) {
}
}
-YAHOO.util.Event.onContentReady("cartDetails", function () {
- $("#cartDetails").css("display","block").css("visibility","hidden").after("<div id=\"cc\" style=\"visibility: hidden\"></div>");
- $("#cmspan").html("<a href=\"#\" id=\"cartmenulink\" class=\"\"><i></i><span><i></i><span></span><img src=\"/opac-tmpl/prog/images/cart.gif\" width=\"14\" height=\"14\" alt=\"\" border=\"0\" /> Cart<span id=\"basket\"></span></span></a>");
- if(basketcount){ updateBasket(basketcount) }
-});
+function showCart(){
+ var position = $("#cartmenulink").offset();
+ var scrolld = $(window).scrollTop();
+ var top = position.top + $("#cartmenulink").outerHeight();
+ if( scrolld > top ){
+ top = scrolld + 15;
+ }
+ var menuWidth = 200;
+ var buttonWidth = $("#cartmenulink").innerWidth();
+ var buttonOffset = menuWidth - buttonWidth;
+ var left = position.left - buttonOffset;
+ $("#cartDetails").css("position","absolute").css("top",top);
+ $("#cartDetails").css("position","absolute").css("left",left);
+ $("#cartDetails").fadeIn("fast");
+}
+
+function showLists(){
+ var position = $("#listsmenulink").offset();
+ var top = position.top + $("#listsmenulink").outerHeight();
+ var menuWidth = 200;
+ var buttonWidth = $("#listsmenulink").innerWidth();
+ var buttonOffset = menuWidth - buttonWidth;
+ var left = position.left - buttonOffset;
+ $("#listsDetails").css("position","absolute").css("top",top);
+ $("#listsDetails").css("position","absolute").css("left",left);
+ $("#listsDetails").fadeIn("fast");
+}
-function cartMenuInit() {
- $('#cartmenulink').click(function(){
- openBasket(); return false;
+function hideCart(){
+ $("#cartDetails").fadeOut("fast");
+}
+
+function hideLists(){
+ $("#listsDetails").fadeOut("fast");
+}
+
+function updateLink(val,op,target){
+ if(target){
+ if(op == "add"){
+ target.$("a.cart"+val).html(MSG_ITEM_IN_CART).addClass("incart");
+ target.$("a.cartR"+val).show();
+ } else {
+ target.$("a.cart"+val).html(MSG_ITEM_NOT_IN_CART).removeClass("incart").addClass("addtocart cart"+val);
+ target.$("a.cartR"+val).hide();
+ }
+ } else {
+ if(op == "add"){
+ $("a.cart"+val).html(MSG_ITEM_IN_CART).addClass("incart");
+ $("a.cartR"+val).show();
+ } else {
+ $("a.cart"+val).html(MSG_ITEM_NOT_IN_CART).removeClass("incart").addClass("addtocart cart"+val);
+ $("a.cartR"+val).hide();
+ }
+ }
+}
+
+function updateAllLinks(target){
+ if(target){
+ target.$("a.incart").html(MSG_ITEM_NOT_IN_CART).removeClass("incart").addClass("addtocart");
+ target.$("a.cartRemove").hide();
+ } else {
+ $("a.incart").html(MSG_ITEM_NOT_IN_CART).removeClass("incart").addClass("addtocart");
+ $("a.cartRemove").hide();
+ }
+}
+
+$("#cartDetails").ready(function(){
+ $("#cartDetails,#cartmenulink").click(function(){ hideCart(); });
+ $("#cartmenulink").click(function(){ openBasket(); return false; });
+ $("#cartmenulink").hoverIntent(function(){
+ showCart();
+ },function(){
+ hideCart();
});
- // Build cartOverlay based on markup
- cartOverlay = new YAHOO.widget.Overlay("cartDetails", { context:["cartmenulink","tr","br"], visible:false,width:"200px",effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.25} } );
- cartOverlay.render();
- YAHOO.util.Event.addListener("cartmenulink", "mouseover", cartOverlay.show, cartOverlay, true);
- YAHOO.util.Event.addListener("cartmenulink", "mouseout", cartOverlay.hide, cartOverlay, true);
- YAHOO.util.Event.addListener("cartmenulink", "click", cartOverlay.hide, cartOverlay, true);
-
- cartUpdate = new YAHOO.widget.Panel("cartUpdate", { context:["cartmenulink","tr","br"], visible:false,draggable:false, close:false,width:"200px",effect:{effect:YAHOO.widget.ContainerEffect.FADE,duration:0.25} } );
-}
-YAHOO.util.Event.addListener(window, "load", cartMenuInit);
\ No newline at end of file
+ if(basketcount){ updateBasket(basketcount) }
+});
+
+