/*
 *  Easy Slider - jQuery plugin
 * written by Alen Grakalic 
 * http://cssglobe.com/post/3783/jquery-plugin-easy-image-or-content-slider
 *
 * Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)
 * Dual licensed under the MIT (MIT-LICENSE.txt)
 * and GPL (GPL-LICENSE.txt) licenses.
 *
 * Built for jQuery library
 * http://jquery.com
 *
 */
 
/*
 * markup example for $("#images").easySlider();
 * 
 *  <div id="images">
 * <ul>
 * <li><img src="images/01.jpg" alt="" /></li>
 * <li><img src="images/02.jpg" alt="" /></li>
 * <li><img src="images/03.jpg" alt="" /></li>
 * <li><img src="images/04.jpg" alt="" /></li>
 * <li><img src="images/05.jpg" alt="" /></li>
 * </ul>
 * </div>
 *
 */

(function($) {

$.fn.easySlider = function(options){
  
// default configuration properties
var defaults = {
prevId:  'prevBtn',
prevText:  '',
nextId:  'nextBtn', 
nextText:  '',
orientation: '', //  'vertical' is optional;
speed:  800, 
animate : false
}; 

var options = $.extend(defaults, options);  

return this.each(function() {  

                                       

obj = $(this);  
var s = $("li", obj).length;
var w = obj.width(); 
var h = obj.height(); 
var ts = s-1;
var t = 0;
var vertical = (options.orientation == 'vertical');


var sliderwidth =$('#slider > ul').width();
                        var li = $('#slider > ul > li > img');
                        var l = li.length;
                        //alert("#img = "+l);
                        var liwidthsum = 0;
                        var liwidth = [];
                        var w;
                        for ( var i=0; i<l;i++) {
                           w = $($('#slider > ul > li > img').get(i)).width();
                           //alert("img.width="+w);
                           liwidthsum+=w+3;
                                                      liwidth.push( w+3 );
                        }
                       if(!vertical) $("li", obj).css('float','left');
                       //alert(liwidthsum);
$("ul", obj).css('width',liwidthsum);
$(obj).after('<span id="'+ options.prevId +'"><a href=\"javascript:void(0);\">'+ options.prevText +'</a></span> <span id="'+ options.nextId +'"><a href=\"javascript:void(0);\">'+ options.nextText +'</a></span>'); 
$("a","#"+options.prevId).hide();
$("a","#"+options.nextId).hide();
$("a","#"+options.nextId).click(function(){ 
animate("next");
if (t>=ts) $(this).fadeOut();
$("a","#"+options.prevId).fadeIn();
});
$("a","#"+options.prevId).click(function(){ 
animate("prev");
if (t<=0) $(this).fadeOut();
$("a","#"+options.nextId).fadeIn();
}); 
function animate(dir){
if(dir == "next"){
t = (t>=ts) ? ts : t+1; 
} else {
t = (t<=0) ? 0 : t-1;
}; 
if(!vertical) {
var ds = 0;
for (var i=0;i<t;i++)
  ds+=liwidth[i]
p = (ds*-1);

var sl = parseInt(ds*100/(liwidthsum-793));
if ( sl < 3)
   sl=0;
if ( sl > 97 )
   sl=100;

$('#slider2').slider('moveTo', sl, '0' );

if ( options.animate ) 
   $("ul",obj).animate(
      { marginLeft: p }, 
      options.speed
   )
else
   $("ul").css('marginLeft',p);


   
} else {
p = (t*h*-1);
$("ul",obj).animate(
{ marginTop: p }, 
options.speed
); 
}
};
if(s>1) $("a","#"+options.nextId).fadeIn(); 
});
  
};

})(jQuery);
