function removeAtCursor(myField) 
{
//IE support
if (document.selection) 
{
    myField.focus();
    sel = document.selection.createRange();
    sel.moveStart('character',-1);
    sel.select();
    document.selection.clear();
/*    sel.text = myValue;*/
}
//MOZILLA/NETSCAPE support
else if (myField.selectionStart || myField.selectionStart == '0') 
    {
	var startPos = myField.selectionStart;
        var endPos = myField.selectionEnd;
        
        if (startPos!=endPos)
        {    	
	    myField.value = myField.value.substring(0, startPos) + myField.value.substring(endPos, myField.value.length);
        }
        else
        {
	    if (startPos>0)
	    {
		myField.value = myField.value.substring(0, startPos-1)
		+ myField.value.substring(endPos, myField.value.length);
	    }
	    else
	    {
	    }
	}
    } 
    else 
    {
	myField.value += myValue;
    }
}

function insertAtCursor(myField, myValue) {
//IE support
if (document.selection) {
    myField.focus();
    sel = document.selection.createRange();
    sel.text = myValue;
}
//MOZILLA/NETSCAPE support
else if (myField.selectionStart || myField.selectionStart == '0') {
    var startPos = myField.selectionStart;
    var endPos = myField.selectionEnd;
    myField.value = myField.value.substring(0, startPos)
    + myValue
    + myField.value.substring(endPos, myField.value.length);
    } else {
	myField.value += myValue;
    }
}

function getElementPosY(myObj)
{
 return (myObj.offsetTop + ((myObj.offsetParent) ?
 getElementPosY(myObj.offsetParent) : 0));
}


function addkey(key)
{
  if (detectbut)
  {
    insertAtCursor(detectbut,key);
  }
}

function delkey()
{
  if (detectbut)
  {
    removeAtCursor(detectbut);
  }
}

function keymap(ev,st)
{
 var map=document.getElementById("keymap");
 var mapbug=document.getElementById("keymap_bug");

 //map.style.zIndex=10000;
 var w;
 if (st==0)
 {
    if ("activeElement" in document)
     {
     // Internet Explorer
       w = document.activeElement;
     }
     else
     {
       w=ev.explicitOriginalTarget;
     }
 }
 else
 {
	w = document.getElementById(ev);
 }
   map.style.top = '100px'; 
   map.style.left = '100px';
   map.style.visibility = "visible";

   // IE BUG
   mapbug.style.top = '100px'; 
   mapbug.style.left = '100px';
   mapbug.style.width = ''+(map.offsetWidth)+' px';
   mapbug.style.height = ''+(map.offsetHeight)+' px';
   mapbug.style.visibility = "visible";

   detectbut = w;
}


function go_and_run(keytested,keytestedb,ev)
{
  // F12
  if (keytestedb == 123)
  {
   keymap(ev,0);
  }
}

function viewall()
{
    $('#showafter').fadeIn(1000);
}

$(document).ready(function()
{
    $('#whattofind').focus();
    $('#whattofind').onEnter({exefunction:'submitthis()'});

    var stylemode 	= $.cookie('styleswitch');

    if (stylemode == 1)
    {
        loadcss('style_black.css');
    }

    $('.bigimageload').bind('mouseover',function(t)
    {
	var imgsize = $(this).find('img').height();
	
	if (imgsize > 2)
	{
	    var obj = $(this).find('img');
	    var src = $(obj).attr('src');
	    var top = $(obj).position().top;
	    var left = $(obj).position().left;

	    $(this).after('<div style="z-index: 1000; position: absolute; top: '+top+'px; left: '+left+'px;"><img src="'+src+'&big=1" alt="Loading..." onmouseout="$(this).parent().remove();" /></div>');
	}
    });

});

function submitthis()
{
    if ($('#whattofind').val().length<4) {page_block(); return false;}
    $('#searchnow').submit();
    
}


function reserve(itemnumber,barcode)
{
    location.href='/cgi-bin/koha/opac-reserve.pl?itemnumber='+itemnumber;
}			


var pickedUp = new Array("",false);

function getReadyToMove(element,element_frame,evt) 
{
 pickedUp[0] = element;
 pickedUp[1] = true;
 pickedUp[2] = element_frame;

 var currentSelection = document.getElementById(pickedUp[0]);
 pickedUp[3] = evt.clientY - currentSelection.offsetTop;
 pickedUp[4] = evt.clientX - currentSelection.offsetLeft;

 
}

function checkWindow(evt)
{
 if (pickedUp[1] == true && moveable == true)
 {
  var currentSelection = document.getElementById(pickedUp[0]);
  currentSelection.style.position = 'absolute';
  currentSelection.style.top  = (evt.clientY - pickedUp[3]) + "px";
  currentSelection.style.left = (evt.clientX - pickedUp[4]) + "px";
  var currentSelection = document.getElementById(pickedUp[2]);
  currentSelection.style.top  = (evt.clientY - pickedUp[3] ) + "px";
  currentSelection.style.left = (evt.clientX - pickedUp[4]) + "px";
 }
 else
 {
  pickedUp = new Array("",false);
 }
}

function dropLoadedObject(evt) 
{
 if (pickedUp[1] == true && moveable == true)
 {
  var currentSelection = document.getElementById(pickedUp[0]);
  currentSelection.style.position = 'absolute';
  currentSelection.style.top  = (evt.clientY - pickedUp[3]) + "px";
  currentSelection.style.left = (evt.clientX - pickedUp[4]) + "px";
  var currentSelection = document.getElementById(pickedUp[2]);
  currentSelection.style.top  = (evt.clientY - pickedUp[3]) + "px";
  currentSelection.style.left = (evt.clientX - pickedUp[4]) + "px";

  pickedUp = new Array("",false);
 }
}


function wykonaj_ean13(wartosckodu)
{
 var przedrostek = wartosckodu.substr(0,3);
 var ajax_borid = document.getElementById('ajax_borid');

 if (przedrostek == '200')
 {
   location.href='/cgi-bin/koha/opac-search.pl?marclist=items.barcode&value='+wartosckodu+'&oldtype=0&and_or=and&operator=start&op=do_search&nbstatements=&excluding=&resultsperpage=20&orderby=biblio.title&desc_or_asc=ASC';
 }

}

function loadcss(name)
{
 $('#maincss').attr('href','/opac-tmpl/css/pl/css/'+name);
}

function unloadcss()
{
    $('#maincss').attr('href','/opac-tmp/css/pl/css/empty.css');
}

function styleswitch()
{
    var stylemode 	= $.cookie('styleswitch');
    var date 		= new Date();
    date.setTime(date.getTime() + (3 * 24 * 60 * 60 * 1000));
    
    if (stylemode == 1)
    {
        $.cookie('styleswitch','0', {path: '/', expires: date});
        unloadcss();
    }
    else
    {
        $.cookie('styleswitch','1', {path: '/', expires: date});
        loadcss('style_black.css');
    }
    
}

