function  clear_loader() {
        if (document.getElementById) {
                update_page();
                document.getElementById('mainstripe').style.display='';
                }
}


function  make_loader() {
        if (document.getElementById) {
               document.getElementById('mainstripe').style.display='none';
       }
}

function make_cookie(cookie_name,cookie_value) {
        document.cookie = cookie_name + '=' + escape(cookie_value) + '; path=/';
}

function find_cookie(cookie_name) {
    var start = document.cookie.indexOf(cookie_name+"=");
    var len = start+cookie_name.length+1;
    if (start == -1) return "";
    var end = document.cookie.indexOf(";",len);
    if (end == -1) end = document.cookie.length;
    return unescape(document.cookie.substring(len,end));
}

function kill_cookie(cookie_name) {
        document.cookie = cookie_name + '=0; expires=Thu, 2 Aug 2001 20:47:11 UTC; path=/';
}

function close_first_item_note()  {
	if (show_popup == 1) {
		if (document.getElementById("info_box")) {
						document.getElementById("info_box").style.display = "none";
		} else if (document.info_box) {
						document.info_box.visibility="hidden";
		} else if (document.all("info_box")) {
						document.all("info_box").style.display="none";
		}
	}
}

function createElement(element) {
  if (typeof document.createElementNS != 'undefined') {
    return document.createElementNS('http://www.w3.org/1999/xhtml', element);
  }
  if (typeof document.createElement != 'undefined') {
    return document.createElement(element);
  }
  return false;
}

function first_item_note(noteHTML) {
        var myposy = posY - 25;
        if (odc_basket.length == 0 && show_popup == 1) {
                if (document.createElement) {
                
                if (NS4)
                {
                        document.info_box.top  = myposy;
                        document.info_box.document.write(noteHTML);
                        document.info_box.document.close();
                        document.info_box.visibility="visible";
                        document.box_table.top  = myposy;
                }
                
                if  (NS6)
                {
                        document.getElementById("info_box").style.top  = myposy;
                        document.getElementById("info_box").innerHTML=noteHTML;
                        document.getElementById("box_table").style.top  = myposy;
                        document.getElementById("info_box").style.display="";
                }

                if (IE)
                {
                        document.all("info_box").style.top  = myposy;
                        document.all("info_box").innerHTML=noteHTML;
                        document.all("box_table").style.top  = myposy;
                        if (document.getElementById) document.getElementById("box_table").style.top  = myposy;
                        document.all("info_box").style.display="";
                }

                }

        }

}



function update_oneoff_box(oneoffbox_id) {
        var oneoff_id = 'once' +  oneoffbox_id;
        var search_text = oneoffbox_id + 'a';
        var id_pos = oneoff_items.indexOf( search_text );

        if (document.getElementById(oneoff_id).checked) {
               if (id_pos < 0) {
                        oneoff_items = oneoff_items + search_text;
               }
        
        } else {
               if (id_pos >= 0) {
                        var pre_cookie  = oneoff_items.substring(0,id_pos);
                        var post_cookie = oneoff_items.substring(id_pos + search_text.length, oneoff_items.length);
                        oneoff_items = pre_cookie + post_cookie;
               }
        }

        if (oneoff_items.length > 4096) {
                return false;
        }

        make_cookie('oneoff', oneoff_items);
        return false;
}

function update_oneoff_boxes() {
        var oneoff_cookie = oneoff_items;
        var s =0;

        
        while (oneoff_cookie.length > 0) {
             var pos = oneoff_cookie.indexOf('a');
             
             if (pos < 0) {
                       oneoff_cookie = '';
             } else {
                       var oid = oneoff_cookie.substring(0,pos);
                       oneoff_cookie = oneoff_cookie.substring(pos + 1,oneoff_cookie.length);
                       if (document.getElementById('once' +  oid)) document.getElementById('once' +  oid).checked = true;
             
             }
             
        
        }

}

function add_item(item_id) {
        close_first_item_note();
        first_item_note(firstaddHTML);
        if (document.getElementById) {
                var qtyid = 'qty' + item_id;
                var itemid = 'item' + item_id;
                var qty = parseInt(document.getElementById(qtyid).value);
                var class_name = document.getElementById(itemid).className.substring(0,5);
                
                ++qty;
                if (qty > 99) qty = 99;
                document.getElementById(qtyid).value = qty.toString();
                document.getElementById(itemid).className = class_name + 's';
                add_basket(item_id,qty);

                return false;
        } else {
                return true;
        }
}

function update_item(item_id) {
        if (odc_basket.length > 0) close_first_item_note();
        first_item_note(firstaddHTML);
        if (document.getElementById) {
                var qtyid = 'qty' + item_id;
                var itemid = 'item' + item_id;
                var qty = parseInt(document.getElementById(qtyid).value);
                var class_name = document.getElementById(itemid).className.substring(0,5);

                if (!qty || qty < 0) qty = 0;

                document.getElementById(qtyid).value = qty.toString();

                if (qty) {
                         document.getElementById(itemid).className = class_name + 's';
                } else {
                         document.getElementById(itemid).className = class_name;
                }

                add_basket(item_id,qty);
                return false;
        } else {
                return true;
        }
}

function sub_item(item_id) {
        if (odc_basket.length > 0) close_first_item_note();
        if (document.getElementById) {
                var qtyid = 'qty' + item_id;
                var itemid = 'item' + item_id;
                var qty = parseInt(document.getElementById(qtyid).value);
                var class_name = document.getElementById(itemid).className.substring(0,5);

                --qty;
                if (qty < 0) qty = 0;
                document.getElementById(qtyid).value = qty.toString();

                if (qty) {
                         document.getElementById(itemid).className = class_name + 's';
                } else {
                         document.getElementById(itemid).className = class_name;
                }
                
                add_basket(item_id,qty);
                return false;
        } else {
                return true;
        }
}

function update_page() {
    var cookie_text = odc_basket;
    var len = cookie_text.length;
    var pos = 0, start = 0, val = 0, end = 0;
    var cookie_names = new Array(1);
    var cookie_values = new Array(1);
    
    while (pos < len) {
        start = cookie_text.indexOf("a",pos);
        val   = cookie_text.indexOf("b",start);
        end   = cookie_text.indexOf("c",val);

        if ((start < 0) || (val < 0))  break;
        if (end == -1) end = cookie_text.length;
        
        cookie_names = cookie_names.concat(cookie_text.substring(start + 1,val));
        cookie_values = cookie_values.concat(cookie_text.substring(val + 1,end));
        pos = end;
    }
    
    for (i = 1; i < cookie_names.length; i++) {
        var item_id = cookie_names[i];
        var qty_id = 'qty' + item_id;
        
        if (document.getElementById(qty_id)) {
                document.getElementById(qty_id).value = cookie_values[i];
                update_item(item_id);
                }

    }
}

function add_basket(item_id, item_qty) {
        var start = odc_basket.indexOf('a' + item_id + 'b');
        var end   = odc_basket.indexOf('c', start);

        if (start < 0 ) {
                if (item_qty > 0) odc_basket = 'a' + item_id + 'b' + item_qty + 'c' + odc_basket;
        } else {
                var pre_basket = odc_basket.substring(0,start);
                var post_basket = odc_basket.substring(end + 1, odc_basket.length);
                
                if (item_qty < 1) {
                        odc_basket = pre_basket + post_basket;
                } else {
                        odc_basket = 'a' + item_id + 'b' + item_qty + 'c' + pre_basket + post_basket;
                }
        }
        
        if (odc_basket.length > 4096) {
                alert('Your Basket is full!');
                return false;
        }
        
        make_cookie('odcbasket', odc_basket);
}

function recalc_mybasket() {
        update_basket--;
        if (update_basket < 1) {
                document.location.href='mybasket.php';
        }
}

function kill_order() {
        if (confirm('Are you sure you want to empty your shopping basket?')) {
                kill_cookie('odcbasket');
                kill_cookie('oneoff');
                document.location.href='mybasket.php';
        } else {
                return false;
        }
}

function log_off() {
        if (confirm('Are you sure you want to Log Off?')) {
                kill_cookie('odcbasket');
                kill_cookie('oneoff');
                document.location.href='logout.php';
        } else {
                return false;
        }
}

function show_prodinfo(prodid) {
        window.open('product_info.php?iid=' + prodid,'_blank','resize=yes,menubar=no,scrollbars=yes,top=40,left=30,width=567,height=600');
}



var odc_basket = find_cookie('odcbasket');
var oneoff_items  = find_cookie('oneoff');
var update_basket = 0;
var firstaddHTML = "<table class=\"firstnotebox\" id=\"box_table\" width=\"300\" height=\"50\" border=\"1\" onclick=\"javascript: close_first_item_note();\"><tr><td align=\"center\" valign=\"middle\"> You can view the contents of your order anytime by clicking on <b>view your basket</b> at the top of the lefthand menu.</td></tr></table>";
var show_popup = 0;

var posX = 0;
var posY = 0;



