function setIMG(m,obrazki,nr)
{
    $('medium').src = m;
    $('medium').onclick = function() { showIMGs(obrazki, nr) };
}

function fullIMG(src) {
  //showLayerWithImage($('formblack_layer'), $('loader'), 'images/loading.gif');
  showLayerWithImage($('formblack_layer'), $('photo_container'), src);
}

function showMsg(link) {
  showLayer($('formblack_layer'));
  showLayer($('container'));
  showElementCenter( $('div_container') );
  
  new Ajax.Updater('div_container', link, {
 
  });
  
}

function showMsg2(link) {
  showLayer($('formblack_layer2'));
  showLayer($('container2'));
  showElementCenter( $('div_container2') );
  
  new Ajax.Updater('div_container2', link, {
 
  });
  
}

function showMsgPromoKod() {
  showLayer($('formblack_layer'));
  showLayer($('container'));
  showElementCenter( $('div_container') );
  
  new Ajax.Updater('div_container', '/promotxt.php', {
 
  });
  
}

function showLoginForm() {
  showLayer($('formblack_layer'));
  showElementCenter( $('container2') );
}

function showLayer(layerElement)
{

  var tohide = document.getElementsByTagName('object');
	for (i = 0; i < tohide.length; i++)
		tohide[i].style.visibility = 'hidden';
	var tohide = document.getElementsByTagName('embed');
	for (i = 0; i < tohide.length; i++)
		tohide[i].style.visibility = 'hidden';	
	window._scrollPositionV = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
	window._scrollPositionH = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
	resizeLayer(layerElement);
	document.documentElement.scrollTop = window._scrollPositionV;
	document.documentElement.scrollLeft = window._scrollPositionH;
	window._layer = layerElement;
	window.onscroll = function () {
		window._scrollPositionV = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
		window._scrollPositionH = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
		if (window._centered)
			showElementCenter(window._centered);
	}
	window.onresize = function () {
		window._scrollPositionV = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
		window._scrollPositionH = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
		if (window._layer)
			resizeLayer(window._layer);
		if (window._centered)
			showElementCenter(window._centered);
	};
}

function resizeLayer(layerElement)
{
	var docHeight = document.documentElement.scrollHeight;
	var docWidth = document.documentElement.scrollWidth;
	var bodyHeight = document.body.scrollHeight;
	var bodyWidth = document.body.scrollWidth;
	layerElement.style.visibility = 'visible';
	layerElement.style.width = Math.max(document.viewport.getWidth(), Math.max(docWidth, bodyWidth)) + 'px';
	layerElement.style.height = Math.max(document.viewport.getHeight(), Math.max(docHeight, bodyHeight)) + 'px';
	layerElement.style.display = 'block';
}

function hideLayer(layerElement)
{

  var tohide = document.getElementsByTagName('object');
	for (i = 0; i < tohide.length; i++)
		tohide[i].style.visibility = 'visible';
		var tohide = document.getElementsByTagName('embed');
	for (i = 0; i < tohide.length; i++)
		tohide[i].style.visibility = 'visible';
	if (window._centered)
		$(window._centered).hide();
	$(layerElement).hide();
	window._layer = null;
	window._centered = null;
	window._scrollPositionV = null;
	window._scrollPositionH = null;
	window.onresize = function () {};
	window.onscroll = function () {};
}

function showElementCenter(element)
{
	if (window._centered)
		$(window._centered).hide();
	element.style.position = 'absolute';
	element.style.display = 'block';
	element.style.left = (window._scrollPositionH?window._scrollPositionH:0) + (document.viewport.getWidth() - element.getWidth()) / 2 + 'px';
	element.style.top = (window._scrollPositionV?window._scrollPositionV:0) + (document.viewport.getHeight() - element.getHeight()) / 2 + 'px';
	element.style.visibility = 'visible';
	window._centered = element;
}

function loadImage(imageElement, imageURL)
{
	imageElement.src = ' ';
	imageElement.onload = function() {
		showElementCenter( $('container') );
		
		//showElementCenter( $('container') );
		
		this.onload = function() {};
	}
	imageElement.src = imageURL;
}

function showLayerWithImage(layerElement, imageElement, imageURL)
{
	showLayer(layerElement);
	loadImage(imageElement, imageURL);
}

function initTab(sID, sTabContent, sNormal, sOver) {
            tabs = $$('#' + sID + ' table');
            
            tab_content2 = sTabContent;
            
            selectedClass = sOver;
            normalClass = sNormal;
           
		   var ref_func; 
  for(var i=0; i<tabs.length;++i)
  {
      tabs[i].onmouseover = function() {
        
        onOverTab(this);
      }
      
      tabs[i].onmouseout = function() {
        onOutTab(this);
      }
      
      tabs[i].onclick = function() {
        onClickTab(this);
        ref_param=new Number(this.id.substr(4,this.id.length))+1;
        if (window.func_tab_firstclick && window.func_tab_firstclick[ref_param] && (typeof window.func_tab_firstclick[ref_param]=='function'))
        {
           ref_func=window.func_tab_firstclick[ref_param]
           ref_func();
           window.func_tab_firstclick[ref_param]=false;
		}
      }
      
      if( i == 0 ) tabs[i].bSelected = true; // domyślnie zaznaczmy pierwszy element
      else tabs[i].bSelected = false;
      
  }
  
}

function onOverTab(elm) {
  
  for(var j=0; j<tabs.length;++j)
  {
      if(tabs[j].bSelected == false) {
        tabs[j].className = normalClass;
      }
      else tabs[j].className = selectedClass;
  }
  
  elm.className = selectedClass;
  
  
}

function onOutTab(elm) {

  for(var j=0; j<tabs.length;++j)
  {
      if(tabs[j].bSelected == false) {
        tabs[j].className = normalClass;
      }
      else tabs[j].className = selectedClass;
  }
  
  

}         

function onClickTab(elm) {
  
  for(var j=0; j<tabs.length;++j)
  {
      tabs[j].className = normalClass;
      tabs[j].bSelected = false;
  }
  
  elm.bSelected = true;
  elm.className = selectedClass;
  
  var id = elm.id.split("_");
  
  for(var i=0; i<tabs.length; ++i) 
  {
      
      if( id[1] == i )
        $(tab_content2 + '_' + i).className = 'on';
      else
        $(tab_content2 + '_' + i).className = 'off';
      
  }
 

}

function showIMGs(IMGs, sel) {

  obrazki = IMGs;
  selected = sel; 

  
  fullIMG(obrazki[sel]);
  
  if( obrazki.length < 2) {
  
    $('nav_prev').style.visibility = 'hidden';
    $('nav_next').style.visibility = 'hidden';
  
  }
  else {
  
    $('nav_prev').style.visibility = 'visible';
    $('nav_next').style.visibility = 'visible';
    
  }
  
}



function prevIMG() {
  if( selected - 1 > -1 ) selected-=1;
  else selected = obrazki.length - 1;
  fullIMG(obrazki[selected]); 
}

function nextIMG() {
  if( selected + 1 < obrazki.length ) selected+=1;
  else selected = 0;
  fullIMG(obrazki[selected]);
}

function showItem( sID, bVal )
{
    tbody = $(sID);
    if( bVal ) {
      tbody.style.display = '';
    }
    else {
      tbody.style.display = 'none';
    }
}

function add(elm) {
  ++elm.value;
}

function sub(elm) {
  if( elm.value > 1 ) --elm.value;
}

/* scroller */

var _slidingParams = new Array();
var slidingInterval = setInterval("slideStep()", 10);

function scrollProgramsRight(speed)
{
	if (!slideScrollHoriz('scroller', 60, speed))
		document.getElementById('scroller_right').src = '/img/arrow_right_dis.gif';
	else
		document.getElementById('scroller_left').src = '/img/arrow_left.gif';
}

function scrollProgramsLeft(speed)
{
	if (!slideScrollHoriz('scroller', -60, speed))
		document.getElementById('scroller_left').src = '/img/arrow_left_dis.gif';
	else
		document.getElementById('scroller_right').src = '/img/arrow_right.gif';
}

function slideScrollHoriz(slide_object, diff, speed)
{
	var target_object = document.getElementById(slide_object);
	var ret = true;
	var tds = target_object.getElementsByTagName('td');
	var scrollWidth = tds.length * 60;
	
	if (target_object.scrollLeft + diff <= 0)
	{
		diff = - target_object.scrollLeft;
		ret = false;
	}
	if (target_object.scrollLeft + diff >= scrollWidth - target_object.clientWidth)
	{
		diff = scrollWidth - target_object.clientWidth - target_object.scrollLeft;
		ret = false;
	}
	if (target_object)
		startSliding(target_object, 'scrollLeft', target_object.scrollLeft + diff, speed);
	return ret;
}

function startSliding(target_object, target_param, target_value, speed)
{
	for (var i = 0; i < _slidingParams.length; i++)
		if ((_slidingParams[i].targetObject == target_object) && (_slidingParams[i].targetParam == target_param))
			break;
	if (i == _slidingParams.length)
	{
		_slidingParams.push({
			targetObject: target_object,
			targetParam: target_param,
			targetValue: target_value,
			speed: speed
		});
	}
}

function slideStep()
{
	for (var i = 0; i < _slidingParams.length; i++)
	{
		target_object = _slidingParams[i].targetObject;
		if (target_object)
		{
			var current_value = parseInt(target_object[_slidingParams[i].targetParam]);
			var diff = _slidingParams[i].targetValue - current_value;
//			document.getElementById('debug').innerHTML += 'diff ' + i + ': ' + _slidingParams[i].targetValue + ' - ' + current_value + ' = ' + diff + '<br />';
			if (diff > 0)
				diff = (0.0 + _slidingParams[i].speed + diff) / _slidingParams[i].speed;
			else
				diff = (0.0 - _slidingParams[i].speed + diff) / _slidingParams[i].speed;
			if ((Math.abs(diff) <= 1) || (Math.round(0.0 + current_value + diff) == _slidingParams[i].targetValue))
			{
				target_object[_slidingParams[i].targetParam] = _slidingParams[i].targetValue + ((target_object.setProperty)?'px':0);
				_slidingParams.splice(i, 1);
				i--;
			}
			else
				target_object[_slidingParams[i].targetParam] = Math.round(0.0 + current_value + diff) + ((target_object.setProperty)?'px':0);
		}
	}
}

function slideUpDown(slide_element, slide_button, speed)
{
	var target_object = document.getElementById(slide_element);
	target_object.style.overflow = 'hidden';
	var target_button = document.getElementById(slide_button);
	var current_height = target_object.clientHeight;
	if (current_height)
	{
		slideUp(slide_element, speed);
		target_button.src = 'img/ico_down.gif';
	}
	else
	{
		slideDown(slide_element, speed);
		target_button.src = 'img/ico_up.gif';
	}
}

function slideUp(slide_element, speed)
{
	var target_object = document.getElementById(slide_element);
	if (target_object && (target_object.clientHeight == target_object.scrollHeight))
	{
		target_object.style.height = target_object.clientHeight + 'px';
		target_object._slide_up_orig_height = target_object.clientHeight;
		startSliding(target_object.style, 'height', 0, speed);
		startSliding(target_object, 'scrollTop', target_object._slide_up_orig_height, speed);
	}
}

function slideDown(slide_element, speed)
{
	var target_object = document.getElementById(slide_element);
	if (target_object && target_object._slide_up_orig_height)
	{
		startSliding(target_object, 'scrollTop', 0, speed);
		startSliding(target_object.style, 'height', target_object._slide_up_orig_height, speed);
		target_object._slide_up_orig_height = undefined;
	}
}

function slideStyle(slide_object, slide_param, target_value, speed)
{
	var target_object = document.getElementById(slide_object);
	if (target_object && !target_object._slide_style_interval_id)
	{
		_slidingParams.push({
			targetObject: target_object.style,
			targetParam: slide_param,
			targetValue: target_value,
			speed: speed
		});
	}
}

function redirect(targetURL)
{
	self.location = targetURL;
	return false;
}

function setTitle(title)
{
    $('title').innerHTML = title;
}

function popup(url) {
    
    okno = window.open(url,null,'menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes,width=800,height=600');
    okno.focus();
    
}

function showModels(id) {
    
    new Ajax.Updater('wybormodeli', '/ajaxForm.php?producer=' + id, {
});
    
}

function sendForm(contentElementID, formID, URL) {
  
  req = new Ajax.Request(URL, {
  
    method: 'post',
    parameters: $(formID).serialize(true),
    onSuccess: function(transport) {

    $(contentElementID).innerHTML = transport.responseText;
    
    }
  });
  
}

function loadContent(contentElementID, URL) {
  
  req = new Ajax.Request(URL, {
  
    method: 'get',
    onSuccess: function(transport) {
    $(contentElementID).innerHTML = transport.responseText;
    }
  });
  
}

function Form_OnSubmit(form)
{
    return true;
}



Event.observe(window, 'load', initForm);
   
   function initForm() {
   
          for(var i=0; i<document.forms.length; ++i) {
          
            var aInputs =  $(document.forms[i]).getInputs();
            
            addListeners(aInputs);
            
          }
   }
   
   function addListeners(aInputs) {
   
     for(var i=0; i<aInputs.length; ++i) {
         
         // tutaj moĹźna dodac warunek aby tylko dla specjalnej klasy
         // dodawaĹ� listenery
         
         if( aInputs[i].className.indexOf('kx_autoclear') != -1 ) {
         
         Event.observe(aInputs[i], 'blur', blurFieldListener);
         Event.observe(aInputs[i], 'click', clickFieldListener);
         Event.observe(aInputs[i], 'keyup', keyupFieldListener);
         
         //aInputs[i].onpropertychange = testFieldListener;      
         
         //aInputs[i].watch( 'value', testFieldListener );
         
         }
        
         
     } // for
   }  
     
     
   function clickFieldListener(event) {
   
      var element = Event.element(event);
            
      if( element.name == 'email' )
      {
          if( element.clicked == undefined ) { element.backup = element.value; element.clicked = true; } // if
      }
      else if( element.name == 'passphrase' )
      {
          element.style.background = 'none';
      }
      element.value = '';
      
   }
   
   function blurFieldListener(event) {

      var element = Event.element(event);
      
      if( Event.element(event).value == '') {
          
          if( element.name == 'email' )
          {
              Event.element(event).value = Event.element(event).backup;
          }
          else if( element.name == 'passphrase' )
          {
              element.style.background = 'transparent url(/img/haslo_bg.gif) no-repeat scroll 0% 50%';
          }
      
      }
      
      fireEvent(document.user.passphrase, 'onblur'); 

   }
   
   function keyupFieldListener(event)
   {
        var element = Event.element(event);
        if( element.value != '' ) element.style.background = 'none';
   }

   function testFieldListener(event) {

      var element = Event.element(event);
      alert( element.value )
      
   }

   function fireEvent(element,event){
    if (document.createEventObject){
        // dispatch for IE
        var evt = document.createEventObject();
        return element.fireEvent('on'+event,evt)
    }
    else{
        // dispatch for firefox + others
        var evt = document.createEvent("HTMLEvents");
        evt.initEvent(event, true, true ); // event type,bubbling,cancelable
        return !element.dispatchEvent(evt);
    }
} 
    



FSi_callRef = function(funRef, objectRef)
{
	return (function()
	{
		funRef(objectRef);
	});
}

function FSi_gallery_active()
{
	var content = document.getElementById('thumblist');
	var lists = document.getElementById('thumblists');
	var strwidth=getObjectWidth(lists);
	var width;
	if (isNaN(new Number(strwidth)))
		width=new Number(strwidth.substr(0,strwidth.length-2));
	else
		width=new Number(strwidth)
	var strwidthspace=getObjectWidth(content);
	var widthspace;
	if (isNaN(new Number(strwidthspace)))
		widthspace=new Number(strwidthspace.substr(0,strwidthspace.length-2));
	else
		widthspace=new Number(strwidthspace)
	var left = width-widthspace;
	if (left<0)
		left=0;
	
	lists._prev=document.getElementById('gallerytabsprev');
	lists._prev.setDisplay=FSi_gallery_imageico;
	lists._next=document.getElementById('gallerytabsnext');
	lists._next.setDisplay=FSi_gallery_imageico;
	
	lists.marginLeft=0;
	lists.maxMarginLeft=left;
	lists.update=FSi_gallery_update;
	lists._click=FSi_gallery_click;
	
	var i;
	var imgleft=lists._prev.getElementsByTagName('img');
	for (i=0;i<imgleft.length;i++)
	{
	
		imgleft[i].onclick=function(){
			lists._click(-75);
		}
		/*imgleft[i].onmousedown=function(){
			if(lists._animations)
			{
				clearInterval(lists._animations);
				lists._animations=null;
			}
			lists._animations=setInterval(FSi_callRef(FSi_gallery_clickPrev,lists),50);
		}
		imgleft[i].onmouseup=function(){
			if(lists._animations)
			{
				clearInterval(lists._animations);
				lists._animations=null;
			}
		}
		imgleft[i].onmouseout=function(){
			if(lists._animations)
			{
				clearInterval(lists._animations);
				lists._animations=null;
			}
		}*/
	}
	var imgright=lists._next.getElementsByTagName('img');
	for (i=0;i<imgright.length;i++)
	{
		imgright[i].onclick=function(){
			lists._click(75);
		}
		/*imgright[i].onmousedown=function(){
			if(lists._animations)
			{
				clearInterval(lists._animations);
				lists._animations=null;
			}
			lists._animations=setInterval(FSi_callRef(FSi_gallery_clickNext,lists),50);
		}
		imgright[i].onmouseup=function(){
			if(lists._animations)
			{
				clearInterval(lists._animations);
				lists._animations=null;
			}
		}
		imgright[i].onmouseout=function(){
			if(lists._animations)
			{
				clearInterval(lists._animations);
				lists._animations=null;
			}
		}*/
	}
	
	lists.update();
}

function FSi_gallery_imageico(display)
{
	var imgs=this.getElementsByTagName('img');
	for (var i=0;i<imgs.length;i++)
		imgs[i].style.display=display;
}

function FSi_gallery_click(wind)
{
	this.marginLeft-=wind;
	this.update();
}

function FSi_gallery_clickPrev(el)
{
	el._click(-5);
}

function FSi_gallery_clickNext(el)
{
	el._click(5);
}


function FSi_gallery_update()
{
	if (this.marginLeft>=0)
	{
		clearInterval(this._animations);
		this._animations=null;
		this.marginLeft=0;
		this._prev.setDisplay('none');
	}
	else
	{
		this._prev.setDisplay('');
	}
	
	if (this.marginLeft<= (-this.maxMarginLeft))
	{
		clearInterval(this._animations);
		this._animations=null;
		this.marginLeft=-this.maxMarginLeft;
		this._next.setDisplay('none');
	}
	else
	{
		this._next.setDisplay('');
	}
	
	this.style.marginLeft=this.marginLeft+'px';
}
