function $$(div){return $('#'+div);}

function dnk_smooth_scrolling(c_div_id,l_div_id,r_div_id,elem_count,g) //container,left,right,gallery
{
	var cur_local="myvar_"+c_div_id;
	var is_anim="animate_"+c_div_id;

	var c_div=$('#' + c_div_id);
	var g_count=0;for(g_count in g);g_count++;

	var e_w = c_div.width() / elem_count;
	var e_h = c_div.height();
  
  var preload_count = elem_count+2;

	var inner_div_text="<div id=\""+c_div_id+"_inner_container\" style=\"width:"+(e_w*preload_count)+"px;height:"+e_h+"px;position:relative;left:-"+e_w+"px\">";
	inner_div_text+="<table cellspacing=0 cellpadding=0 border=0><tr id=\""+c_div_id+"_tr\">";
  
  for(var i=0;i<preload_count;i++)
    inner_div_text+="<td style=\"width:"+e_w+"px;height:"+e_h+"px;\" id=\""+c_div_id+"_"+i+"\"></td>";
  
  
  inner_div_text+="</tr></table></div>";
	c_div.html(inner_div_text);
  
  //alert(inner_div_text);
  
  //return;
  
  for(i=0;i<preload_count;i++)
  {
    if (i==0)
      $('#'+c_div_id+"_"+i).html(g[g_count-1]);
    else
      $('#'+c_div_id+"_"+i).html(g[i-1]);
  }
	eval(cur_local + " = 0 ");
	eval(is_anim+"=false");

	$$(r_div_id).click(function(){
		if (eval(is_anim)==true) return;
		eval(is_anim+"=true");

		eval(cur_local+"++");
		if (eval(cur_local)>g_count-1)eval(cur_local+"=0");
		$$(c_div_id+"_0").remove();
		$$(c_div_id+"_inner_container").css("left","+0px");
		$$(c_div_id+"_inner_container").animate
		(
			{"left": "-="+e_w+"px"}, 
			"normal",
			function()
			{
        var i=0;
        for(;i<preload_count;i++)
          $$(c_div_id+"_"+(i+1)).attr("id",c_div_id+"_"+i);
        $$(c_div_id+"_tr").append("<td style=\"width:"+e_w+"px;height:"+e_h+"px;\" id=\""+c_div_id+"_"+(i-1)+"\"></td>");
				var number = eval(cur_local);
				number++;
        if (number>g_count-1) number=0;
        var n_last = number + elem_count - 1;
				if (n_last>g_count-1) n_last=0;
				$('#'+c_div_id+"_" + (i-1)).html(g[n_last]);
				eval(is_anim+"=false");
			}
		);
	});
  
	$$(l_div_id).click(function(){
		if (eval(is_anim)==true) return;
		eval(is_anim+"=true");
		eval(cur_local+"--");
		if (eval(cur_local)<0)eval(cur_local+"="+(g_count-1));
		$$(c_div_id+"_" + (preload_count-1)).remove();
		$$(c_div_id+"_inner_container").animate
		(
			{"left": "+="+e_w+"px"}, 
			"normal",
			function()
			{
        //alert(g_count);
      
      
        for(var i=preload_count-1;i>0;i--)
          $$(c_div_id+"_"+(i-1)).attr("id",c_div_id+"_"+(i));      
				$$(c_div_id+"_tr").prepend("<td style=\"width:"+e_w+"px;height:"+e_h+"px;\" id=\""+c_div_id+"_0\"></td>");
				$$(c_div_id+"_inner_container").css("left","-"+e_w+"px");
				var number = eval(cur_local);
				number--;
				if (number<0) number=g_count-1;
				$('#'+c_div_id+"_0").html(g[number]);
				eval(is_anim+"=false");	
			}
		);
	});
}

function dnk_smooth_scrolling_start(container_div,left_div,right_div,elem_count,gallery)
{
	$(function(){dnk_smooth_scrolling(container_div,left_div,right_div,elem_count,gallery)});
}
