(function( $ ){

function doDisable(bool,obj,class_to_add) 
{
if(bool){obj.addClass(class_to_add);}
else    {obj.removeClass(class_to_add);}
}

$.fn.ESlider1 = function()
{
function EStart(selection){ 
selection.css({"margin":0,"padding":0});
var forward_button = $('.eslider-forward1');
var back_button = $('.eslider-back1');
var child_objects  = selection.children();
var count_children = child_objects.length;
var width = child_objects.width()+2;
var margins = parseInt(child_objects.css("margin-right")) + parseInt(child_objects.css("margin-left"))+
parseInt(child_objects.css("margin-top"))+parseInt(child_objects.css("margin-bottom"));
var scrollSize= width;
var allW=0;
$.each(child_objects,function(key,value){
	allW+=$(value).width(); 
	});
var isBusy = false;
var allWidth = allW;
var parent_width = selection.parent().width(); 
selection.css({"width":allWidth+580,"position":"relative","list-style-type":"none"});
selection.parent().css({"overflow":"hidden"});
var EsliderWidth = selection.width();;
var forward_disabled = false;
var back_disabled    = false;
 if(allWidth<=parent_width) {
forward_disabled = true
back_disabled    = true
}
var theLeft = parseInt(selection.css("left"));
 forward_disabled = true ; 
doDisable(forward_disabled,forward_button,"forward_disabled") ;
doDisable(back_disabled,back_button,"back_disabled") ;
forward_button.click(function(){
 if(forward_disabled) {return false;}
if(isBusy){return false;}
isBusy =true;
var theLeft = parseInt(selection.css("left"));
var s = (theLeft)?theLeft+scrollSize:+scrollSize;
selection.animate({left:s+100},1000,"easeInOutBack",function() {
isBusy = false;
var theLeft = parseInt(selection.css("left"));
if(theLeft == 0) { forward_disabled = true;  }
  back_disabled    = false ;
doDisable(forward_disabled,forward_button,"forward_disabled") ;
doDisable(back_disabled,back_button,"back_disabled") ;
});
return false;
});
back_button.click(function(){
if(back_disabled) {return false;}
if(!isBusy)
{
isBusy = true
var theLeft = parseInt(selection.css("left")); 
if(theLeft==-allWidth) {back_disabled = false;}
var s = (theLeft)?theLeft-scrollSize:-scrollSize;
selection.animate({left:s-100},1000,"easeInOutBack",function() {
isBusy =false; 
var theLeft = parseInt(selection.css("left")); 
if(theLeft<= 0) { forward_disabled = true   }
if(theLeft-parent_width ==- EsliderWidth) {back_disabled = true;}
forward_disabled = false;
doDisable(forward_disabled,forward_button,"forward_disabled") ;
doDisable(back_disabled,back_button,"back_disabled") ;
});
}
return false;
});
}
EStart(this);
}
})(jQuery);
