  var left_margin=0;
  var scrolltime='';
  var mouseX;
  var scroll_offset = 0;
  
  var moveState = false;
  var x0;
  var divX0;
  var divX_tmp_0;

  function scroll_forward()
  {
    var conteiner_id = "photo_scroll";
    var conteiner_obj = document.getElementById(conteiner_id);
    var conteiner_width = parseInt(conteiner_obj.offsetWidth);
    var scroll_window_obj = document.getElementById("scroll_window");
    var scroll_window_width = parseInt(scroll_window_obj.offsetWidth);
	
	var scroll_bar_obj = document.getElementById("scroll_bar");
	var scroll_bar_scroller_obj = document.getElementById("scroll_bar_scroller");
	var scroller_len = parseInt(scroll_bar_obj.offsetWidth);
	var scroller_step = (scroller_len-30)/((conteiner_width-scroll_window_width)/5);

	  
    //if(scroller_step == 0)
	//{
	//	scroller_step = 1;
	//}
	
    if(!parseInt(conteiner_obj.style.left))
    {
      conteiner_obj.style.left = 0 + "px";
    }
    
    if(Math.abs(parseInt(conteiner_obj.style.left))<(conteiner_width-scroll_window_width))
    {
      conteiner_obj.style.left = parseInt(conteiner_obj.style.left) - 5 + "px";
		if(parseInt(scroll_bar_scroller_obj.style.left)<(scroller_len-30))
		{
			scroll_offset = scroll_offset + scroller_step;
			scroll_bar_scroller_obj.style.left = scroll_offset;
			//scroll_bar_scroller_obj.style.left = parseInt(scroll_bar_scroller_obj.style.left) + scroller_step + "px";
		}
		//alert(parseInt(scroll_bar_scroller_obj.style.left));
    }
  }

  function scroll_back()
  {
    var conteiner_id = "photo_scroll";
    var conteiner_obj = document.getElementById(conteiner_id);
    var conteiner_width = parseInt(conteiner_obj.offsetWidth);
    var scroll_window_obj = document.getElementById("scroll_window");
    var scroll_window_width = parseInt(scroll_window_obj.offsetWidth);

	var scroll_bar_obj = document.getElementById("scroll_bar");
	var scroll_bar_scroller_obj = document.getElementById("scroll_bar_scroller");
	var scroller_len = parseInt(scroll_bar_obj.offsetWidth);
	var scroller_step = (scroller_len-30)/((conteiner_width-scroll_window_width)/5);

	//if(scroller_step == 0)
	//{
	//	scroller_step = 1;
	//}
	  
	  
    if(!parseInt(conteiner_obj.style.left))
    {
      conteiner_obj.style.left = 0 + "px";
    }

    if(parseInt(conteiner_obj.style.left)<0)
    {
	
      conteiner_obj.style.left = parseInt(conteiner_obj.style.left) + 5 + "px";
		if(parseInt(scroll_bar_scroller_obj.style.left)>0)
		{
			scroll_offset = scroll_offset - scroller_step;
			scroll_bar_scroller_obj.style.left = scroll_offset;
			//scroll_bar_scroller_obj.style.left = parseInt(scroll_bar_scroller_obj.style.left) - scroller_step + "px";
		}
		//self.status = scroller_step;
    }
  }
  
  function scroll_photos()
  {
    var scroll_window_obj = document.getElementById("scroll_window");
    var scroll_window_width = parseInt(scroll_window_obj.offsetWidth);
    var scroll_control_width = parseInt(scroll_window_width*0.3);

    if(mouseX <= scroll_control_width)
    {
      scroll_back();
    }else if(mouseX >= scroll_window_width-scroll_control_width)
    {
      scroll_forward();
    }
    scrolltime = setTimeout("scroll_photos()",20)
  }
  
  function defPosition(cursor) {
      if(!cursor) var cursor = window.event;
		if (cursor.pageX) {
			x = cursor.pageX;
		}
		else if (cursor.clientX) {
			x = cursor.clientX + document.body.scrollLeft;
		}
        mouseX = x;
  }
/*Drag and Drop*/
function defPositionDnD(event) {
    var x = y = 0;
    if (document.attachEvent != null) { // Internet Explorer & Opera
        x = window.event.clientX + document.documentElement.scrollLeft + document.body.scrollLeft;
        y = window.event.clientY + document.documentElement.scrollTop + document.body.scrollTop;
    }
    if (!document.attachEvent && document.addEventListener) { // Gecko
        x = event.clientX + window.scrollX;
        y = event.clientY + window.scrollY;
    }
    return {x:x, y:y};
}

function initMove(div, event) {
    var event = event || window.event;
    x0 = defPositionDnD(event).x;
    divX0 = parseInt(div.style.left);
	divX_tmp_0 = parseInt(document.getElementById("photo_scroll").style.left);
    moveState = true;
}

// Если клавишу мыши отпустили вне элемента движение должно прекратиться
document.onmouseup = function() {
    moveState = false;
}

// И последнее
// Функция обработки движения:
function moveHandler(div, event) {
	if(document.getElementById("scroll_bar"))
	{
    var event = event || window.event;
	var cur_x=0;
	var max_scroll_x = parseInt(document.getElementById("scroll_bar").offsetWidth);

	var scroll_bar_K = (parseInt(document.getElementById("photo_scroll").offsetWidth)-parseInt(document.getElementById("scroll_window").offsetWidth))/(max_scroll_x-30);
	

    if (moveState) {
		cur_x = defPositionDnD(event).x;
		if(((divX0 + cur_x - x0)>=0)&&((divX0 + cur_x - x0)<=(max_scroll_x-30)))
		{
			div.style.left = divX0 + cur_x - x0;
			scroll_offset = divX0 + cur_x - x0;
			if(Math.abs((divX_tmp_0 - (cur_x - x0)*scroll_bar_K))>(parseInt(document.getElementById("photo_scroll").offsetWidth)-parseInt(document.getElementById("scroll_window").offsetWidth)))
			{
				document.getElementById("photo_scroll").style.left = (parseInt(document.getElementById("photo_scroll").offsetWidth)-parseInt(document.getElementById("scroll_window").offsetWidth))*(-1);
			}else if(((divX_tmp_0 - (cur_x - x0)*scroll_bar_K))>=0)
			{
				document.getElementById("photo_scroll").style.left = 0;
			}else
			{
				document.getElementById("photo_scroll").style.left = divX_tmp_0 - (cur_x - x0)*scroll_bar_K;
			}
		}
    }
	}
}

document.onmousemove = function(event) {
moveHandler(document.getElementById('scroll_bar_scroller'), event);
}
